powergrid-viewer 1.11.10 → 1.11.12

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 he(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 pe(e){return void 0===e&&(e={}),function(n,t){he(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"),t("ec9f");var me,ve,be,we=t("0b6f"),xe=["limegreen","mediumorchid","red","dodgerblue","yellow","brown"];function ke(e,n){return"Australia"===e.map.name&&n.type===ve.Uranium}function Pe(e,n){return n.powerPlants.filter((function(n){return!ke(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["ColorSelection"]="Color Selection",e["RegionSelection"]="Region Selection",e["Order"]="Order",e["Auction"]="Auction",e["Resources"]="Resources",e["Building"]="Building",e["Bureaucracy"]="Bureaucracy",e["GameEnd"]="Game End"}(be||(be={}));var Me,_e,Se=[2,3,4,5,6,7];function Ce(e){for(var n=e.length-1;n>=0;n--)if(e[n]<2)return n;return-1}function Be(e,n){if(!e.uraniumMineMarket)return{income:0,price:0,mines:0,cities:0};var t=n.powerPlants.filter((function(n){return ke(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=Ce(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=Ce(e.uraniumMineMarket);if(c<0)break;e.uraniumMineMarket[c]++}return{income:i,price:a,mines:t.length,cities:r}}function Re(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["ChooseRegion"]="ChooseRegion",e["ChooseColor"]="ChooseColor",e["Pass"]="Pass",e["Undo"]="Undo"})(Me||(Me={}));var Ae=(_e={},i(_e,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(_e,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(_e,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(_e,me.Uranium,[1,2,3,4,5,6,7,8,10,12,14,16]),_e),Oe=Ae,Le=(t("9cd8"),t("3a04")),Ge=t.n(Le);function je(e){}function De(e,n){var t,r,o=1/0,a=w(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 Ne(e,n){var t=Ge.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)})),M(r.keys()).sort().map((function(n){return e[r.get(n)]}))}function ze(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)!=Me.Pass||e.phase==be.Bureaucracy&&(null===(r=n.lastMove)||void 0===r?void 0:r.name)==Me.UsePowerPlant)&&(o[Me.Undo]=[!0,!1]));switch(e.phase){case be.Auction:if(Pe(e,n)>4||e.players.length>2&&Pe(e,n)>3)o[Me.DiscardPowerPlant]=n.powerPlants.filter((function(t,r){return r!=n.powerPlants.length-1&&!ke(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[Me.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[Me.ChoosePowerPlant]=c.map((function(e){return e.number}))),(e.round>1||e.discountBonusPlayer==n.id)&&(o[Me.Pass]=[!0])}else{if(e.options.fastBid?e.minimunBid<=n.money&&(o[Me.Bid]=Object(we["range"])(e.minimunBid,n.money+1)):e.currentBid?e.currentBid<n.money&&(o[Me.Bid]=Object(we["range"])(e.currentBid+1,n.money+1)):o[Me.Bid]=Object(we["range"])(e.minimunBid,n.money+1),"Spain & Portugal"==e.map.name){var h=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));h.every((function(e){return"yellow"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[Me.Bid]=void 0)}if("Central Europe"==e.map.name){var p=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==p.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[Me.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[Me.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[Me.Bid]=void 0)}e.options.fastBid?n.id!=e.auctioningPlayer&&(o[Me.Pass]=[!0]):null!=e.currentBid&&(o[Me.Pass]=[!0])}}break;case be.Resources:if("India"==e.map.name&&void 0!==e.chosenResource){o[Me.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,_=null!==(k=e.coalPrices)&&void 0!==k?k:Oe[me.Coal],S=_[_.length-e.coalMarket];n.money>=S&&n.coalCapacity+n.hybridCapacity>P+n.coalLeft&&S<=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,O=A[A.length-e.coalMarketNorth];n.money>=O&&n.coalCapacity+n.hybridCapacity>R+n.coalLeft&&O<=m&&v.push({resource:me.Coal,side:"north"})}if(w&&e.oilMarket>0){var L,G=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,j=null!==(L=e.oilPrices)&&void 0!==L?L:Oe[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:Oe[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:Oe[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[Me.BuyResource]=v),o[Me.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)$=n.usedFreeJump?[]:e.map.cities.filter((function(e){return Z.has(e.name)})).map((function(e){return{name:e.name,price:0}}));else if($=Ke(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(M($),Q)}$.forEach((function(t){var r,o=e.map.cities.find((function(e){return e.name==t.name}));if(o)if(null!==(r=e.blockedCities)&&void 0!==r&&r.includes(t.name))t.price=9999;else{var a=e.players.filter((function(e){return e.cities.find((function(e){return t.name==e.name}))})).length;if(o.transregional){if(e.step<2)return void(t.price=9999);var i=o.slotCosts,s=o.stepSlots?o.stepSlots[e.step-1]:e.step,c=i?i.length:3;return a>=s||a>=c?t.price=9999:t.price+=i?i[a]:3==e.step?20:15,void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999))}if(o.island&&void 0!==e.map.crossIslandSurcharge&&n.cities.length>0){var u=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(!u.has(o.island))return void(t.price=a>0?9999:10+e.map.crossIslandSurcharge)}if(o.singleOccupancy)return 0==n.cities.length||a>=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)),"Manhattan"==e.map.name&&n.cities.length>0&&(t.price=Math.max(0,t.price-5));var l=o.slotCosts,d=o.stepSlots?o.stepSlots[e.step-1]:e.step,f=l?l.length:3;a>=d||a>=f?t.price=9999:t.price+=l?l[a]:10+5*a,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[Me.Build]=$)}o[Me.Pass]=[!0];break;case be.Bureaucracy:var ee=[];n.powerPlants.forEach((function(t){if(!ke(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[Me.UsePowerPlant]=ee),("India"!=e.map.name||n.citiesPowered>=n.targetCitiesPowered||n.isAI)&&(o[Me.Pass]=[!0]);break;case be.RegionSelection:var ne,te,re=null!==(ne=null===(te=e.regionDraft)||void 0===te?void 0:te.picked)&&void 0!==ne?ne:[],oe=Te(e.map);o[Me.ChooseRegion]=oe.regions.filter((function(n){return Ee(e.map.name,oe,re,n)}));break;case be.ColorSelection:var ae,ie,se=null!==(ae=null===(ie=e.colorDraft)||void 0===ie?void 0:ie.picked)&&void 0!==ae?ae:[];o[Me.ChooseColor]=xe.filter((function(e){return!se.includes(e)}));break}return o}function Te(e){var n,t=e.cities.filter((function(n,t){return e.cities.findIndex((function(e){return e.region==n.region}))==t})).map((function(e){return e.region})),r=e.connections.map((function(n){return n.nodes.map((function(n){return e.cities.find((function(e){return e.name==n})).region}))})),o=t.map((function(e){return t.filter((function(n){return e!=n&&r.some((function(t){return t.includes(e)&&t.includes(n)}))}))})),a={},i=w(e.cities);try{for(i.s();!(n=i.n()).done;){var s=n.value;s.island&&void 0===a[s.region]&&(a[s.region]=s.island)}}catch(c){i.e(c)}finally{i.f()}return{regions:t,regionConnections:o,regionIsland:a}}function Ee(e,n,t,r){var o=new Set(t);if(o.has(r))return!1;if(0==o.size)return!0;var a=n.regions.indexOf(r);if(-1==a)return!1;if(n.regionConnections[a].some((function(e){return o.has(e)})))return!0;if("UK & Ireland"===e){var i=new Set(M(o).map((function(e){return n.regionIsland[e]})));if(!i.has(n.regionIsland[r]))return!0}return"Australia"===e}function Ke(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=De(i,(function(e){return e.price}));if(!s||s.price>n.money)break;o=s}return t}t("a516"),t("7f32"),t("da71"),t("4311");var Ie,Ue,We=t("4cd2"),He=t.n(We);(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(Ie||(Ie={})),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"}(Ue||(Ue={}));var Fe,Ye,Ve={name:"USA",cities:[{name:Ue.Seattle,region:Ie.Purple,x:74,y:99},{name:Ue.Portland,region:Ie.Purple,x:45,y:167},{name:Ue.Boise,region:Ie.Purple,x:180,y:220},{name:Ue.Billings,region:Ie.Purple,x:345,y:180},{name:Ue.Cheyenne,region:Ie.Purple,x:410,y:280},{name:Ue.Denver,region:Ie.Purple,x:400,y:333},{name:Ue.Omaha,region:Ie.Purple,x:566,y:293},{name:Ue.SanFrancisco,region:Ie.Cyan,x:48,y:371},{name:Ue.LosAngeles,region:Ie.Cyan,x:116,y:460},{name:Ue.SanDiego,region:Ie.Cyan,x:157,y:507},{name:Ue.LasVegas,region:Ie.Cyan,x:200,y:410},{name:Ue.SaltLakeCity,region:Ie.Cyan,x:266,y:311},{name:Ue.Phoenix,region:Ie.Cyan,x:260,y:486},{name:Ue.SantaFe,region:Ie.Cyan,x:371,y:435},{name:Ue.KansasCity,region:Ie.Red,x:587,y:356},{name:Ue.OklahomaCity,region:Ie.Red,x:550,y:437},{name:Ue.Dallas,region:Ie.Red,x:560,y:504},{name:Ue.Houston,region:Ie.Red,x:569,y:571},{name:Ue.Memphis,region:Ie.Red,x:678,y:449},{name:Ue.Birmingham,region:Ie.Red,x:739,y:486},{name:Ue.NewOrleans,region:Ie.Red,x:674,y:570},{name:Ue.Fargo,region:Ie.Yellow,x:551,y:152},{name:Ue.Duluth,region:Ie.Yellow,x:637,y:133},{name:Ue.Minneapolis,region:Ie.Yellow,x:621,y:190},{name:Ue.Chicago,region:Ie.Yellow,x:716,y:281},{name:Ue.StLouis,region:Ie.Yellow,x:678,y:362},{name:Ue.Cincinnati,region:Ie.Yellow,x:795,y:348},{name:Ue.Knoxvile,region:Ie.Yellow,x:796,y:422},{name:Ue.Detroit,region:Ie.Brown,x:803,y:262},{name:Ue.Buffalo,region:Ie.Brown,x:913,y:251},{name:Ue.Pittsburgh,region:Ie.Brown,x:884,y:316},{name:Ue.Boston,region:Ie.Brown,x:1052,y:252},{name:Ue.NewYork,region:Ie.Brown,x:1010,y:290},{name:Ue.Philadelphia,region:Ie.Brown,x:985,y:330},{name:Ue.Washington,region:Ie.Brown,x:934,y:357},{name:Ue.Norfolk,region:Ie.Green,x:969,y:405},{name:Ue.Raleigh,region:Ie.Green,x:915,y:437},{name:Ue.Atlanta,region:Ie.Green,x:801,y:487},{name:Ue.Savannah,region:Ie.Green,x:867,y:507},{name:Ue.Jacksonvile,region:Ie.Green,x:861,y:559},{name:Ue.Tampa,region:Ie.Green,x:819,y:621},{name:Ue.Miami,region:Ie.Green,x:883,y:670}],connections:[{nodes:[Ue.Seattle,Ue.Portland],cost:3},{nodes:[Ue.Seattle,Ue.Boise],cost:12},{nodes:[Ue.Seattle,Ue.Billings],cost:9},{nodes:[Ue.Portland,Ue.Boise],cost:13},{nodes:[Ue.Portland,Ue.SanFrancisco],cost:24},{nodes:[Ue.Boise,Ue.Billings],cost:12},{nodes:[Ue.Boise,Ue.Cheyenne],cost:24},{nodes:[Ue.Boise,Ue.SanFrancisco],cost:23},{nodes:[Ue.Boise,Ue.SaltLakeCity],cost:8},{nodes:[Ue.Billings,Ue.Cheyenne],cost:9},{nodes:[Ue.Billings,Ue.Fargo],cost:17},{nodes:[Ue.Billings,Ue.Minneapolis],cost:18},{nodes:[Ue.Cheyenne,Ue.Denver],cost:0},{nodes:[Ue.Cheyenne,Ue.Omaha],cost:14},{nodes:[Ue.Cheyenne,Ue.Minneapolis],cost:18},{nodes:[Ue.Denver,Ue.SaltLakeCity],cost:21},{nodes:[Ue.Denver,Ue.SantaFe],cost:13},{nodes:[Ue.Denver,Ue.KansasCity],cost:16},{nodes:[Ue.Omaha,Ue.KansasCity],cost:5},{nodes:[Ue.Omaha,Ue.Minneapolis],cost:8},{nodes:[Ue.Omaha,Ue.Chicago],cost:13},{nodes:[Ue.SanFrancisco,Ue.LosAngeles],cost:9},{nodes:[Ue.SanFrancisco,Ue.LasVegas],cost:14},{nodes:[Ue.SanFrancisco,Ue.SaltLakeCity],cost:27},{nodes:[Ue.LosAngeles,Ue.SanDiego],cost:3},{nodes:[Ue.LosAngeles,Ue.LasVegas],cost:9},{nodes:[Ue.SanDiego,Ue.LasVegas],cost:9},{nodes:[Ue.SanDiego,Ue.Phoenix],cost:14},{nodes:[Ue.LasVegas,Ue.SaltLakeCity],cost:18},{nodes:[Ue.LasVegas,Ue.Phoenix],cost:15},{nodes:[Ue.LasVegas,Ue.SantaFe],cost:27},{nodes:[Ue.SaltLakeCity,Ue.SantaFe],cost:28},{nodes:[Ue.Phoenix,Ue.SantaFe],cost:18},{nodes:[Ue.SantaFe,Ue.KansasCity],cost:16},{nodes:[Ue.SantaFe,Ue.OklahomaCity],cost:15},{nodes:[Ue.SantaFe,Ue.Dallas],cost:16},{nodes:[Ue.SantaFe,Ue.Houston],cost:21},{nodes:[Ue.KansasCity,Ue.OklahomaCity],cost:8},{nodes:[Ue.KansasCity,Ue.Memphis],cost:12},{nodes:[Ue.KansasCity,Ue.Chicago],cost:8},{nodes:[Ue.KansasCity,Ue.StLouis],cost:6},{nodes:[Ue.OklahomaCity,Ue.Dallas],cost:3},{nodes:[Ue.OklahomaCity,Ue.Memphis],cost:14},{nodes:[Ue.Dallas,Ue.Houston],cost:5},{nodes:[Ue.Dallas,Ue.Memphis],cost:12},{nodes:[Ue.Dallas,Ue.NewOrleans],cost:12},{nodes:[Ue.Houston,Ue.NewOrleans],cost:8},{nodes:[Ue.Memphis,Ue.Birmingham],cost:6},{nodes:[Ue.Memphis,Ue.NewOrleans],cost:7},{nodes:[Ue.Memphis,Ue.StLouis],cost:7},{nodes:[Ue.Birmingham,Ue.NewOrleans],cost:11},{nodes:[Ue.Birmingham,Ue.Atlanta],cost:3},{nodes:[Ue.Birmingham,Ue.Jacksonvile],cost:9},{nodes:[Ue.NewOrleans,Ue.Jacksonvile],cost:16},{nodes:[Ue.Fargo,Ue.Duluth],cost:6},{nodes:[Ue.Fargo,Ue.Minneapolis],cost:6},{nodes:[Ue.Duluth,Ue.Minneapolis],cost:5},{nodes:[Ue.Duluth,Ue.Chicago],cost:12},{nodes:[Ue.Duluth,Ue.Detroit],cost:15},{nodes:[Ue.Minneapolis,Ue.Chicago],cost:8},{nodes:[Ue.Chicago,Ue.StLouis],cost:10},{nodes:[Ue.Chicago,Ue.Cincinnati],cost:7},{nodes:[Ue.Chicago,Ue.Detroit],cost:7},{nodes:[Ue.StLouis,Ue.Cincinnati],cost:12},{nodes:[Ue.StLouis,Ue.Atlanta],cost:12},{nodes:[Ue.Cincinnati,Ue.Knoxvile],cost:6},{nodes:[Ue.Cincinnati,Ue.Detroit],cost:4},{nodes:[Ue.Cincinnati,Ue.Pittsburgh],cost:7},{nodes:[Ue.Cincinnati,Ue.Raleigh],cost:15},{nodes:[Ue.Knoxvile,Ue.Atlanta],cost:5},{nodes:[Ue.Detroit,Ue.Buffalo],cost:7},{nodes:[Ue.Detroit,Ue.Pittsburgh],cost:6},{nodes:[Ue.Buffalo,Ue.Pittsburgh],cost:7},{nodes:[Ue.Buffalo,Ue.NewYork],cost:8},{nodes:[Ue.Pittsburgh,Ue.Washington],cost:6},{nodes:[Ue.Pittsburgh,Ue.Raleigh],cost:7},{nodes:[Ue.Boston,Ue.NewYork],cost:3},{nodes:[Ue.NewYork,Ue.Philadelphia],cost:0},{nodes:[Ue.Philadelphia,Ue.Washington],cost:3},{nodes:[Ue.Washington,Ue.Norfolk],cost:5},{nodes:[Ue.Norfolk,Ue.Raleigh],cost:3},{nodes:[Ue.Raleigh,Ue.Atlanta],cost:7},{nodes:[Ue.Raleigh,Ue.Savannah],cost:7},{nodes:[Ue.Atlanta,Ue.Savannah],cost:7},{nodes:[Ue.Savannah,Ue.Jacksonvile],cost:0},{nodes:[Ue.Jacksonvile,Ue.Tampa],cost:4},{nodes:[Ue.Tampa,Ue.Miami],cost:4}],layout:"Landscape",polygons:[{region:Ie.Brown,points:[[930,423],[1082,331],[1075,231],[716,249],[758,303],[897,406]]},{region:Ie.Green,points:[[898,405],[762,499],[758,643],[887,744],[938,688],[889,618],[1014,432],[985,387],[929,420]]},{region:Ie.Yellow,points:[[895,403],[760,499],[630,393],[607,345],[608,275],[439,162],[654,114],[771,245],[716,247],[758,301]]},{region:Ie.Red,points:[[606,344],[476,371],[445,597],[546,664],[758,641],[760,497],[629,391]]},{region:Ie.Purple,points:[[606,342],[476,369],[347,395],[313,301],[18,287],[18,165],[76,74],[438,160],[607,275]]},{region:Ie.Cyan,points:[[18,285],[20,429],[142,583],[445,594],[476,368],[346,392],[312,300]]}]},Je={name:"USA",cities:[{name:Ue.Seattle,region:Ie.Purple,x:74,y:99},{name:Ue.Portland,region:Ie.Purple,x:45,y:167},{name:Ue.Boise,region:Ie.Purple,x:180,y:220},{name:Ue.Billings,region:Ie.Purple,x:345,y:180},{name:Ue.Cheyenne,region:Ie.Purple,x:410,y:280},{name:Ue.Denver,region:Ie.Purple,x:400,y:333},{name:Ue.Omaha,region:Ie.Purple,x:566,y:293},{name:Ue.SanFrancisco,region:Ie.Cyan,x:48,y:371},{name:Ue.LosAngeles,region:Ie.Cyan,x:116,y:460},{name:Ue.SanDiego,region:Ie.Cyan,x:157,y:507},{name:Ue.LasVegas,region:Ie.Cyan,x:200,y:410},{name:Ue.SaltLakeCity,region:Ie.Cyan,x:266,y:311},{name:Ue.Phoenix,region:Ie.Cyan,x:260,y:486},{name:Ue.SantaFe,region:Ie.Cyan,x:371,y:435},{name:Ue.KansasCity,region:Ie.Red,x:587,y:356},{name:Ue.OklahomaCity,region:Ie.Red,x:550,y:437},{name:Ue.Dallas,region:Ie.Red,x:560,y:504},{name:Ue.Houston,region:Ie.Red,x:569,y:571},{name:Ue.Memphis,region:Ie.Red,x:678,y:449},{name:Ue.Birmingham,region:Ie.Red,x:739,y:486},{name:Ue.NewOrleans,region:Ie.Red,x:674,y:570},{name:Ue.Fargo,region:Ie.Yellow,x:551,y:152},{name:Ue.Duluth,region:Ie.Yellow,x:637,y:133},{name:Ue.Minneapolis,region:Ie.Yellow,x:621,y:190},{name:Ue.Chicago,region:Ie.Yellow,x:716,y:281},{name:Ue.StLouis,region:Ie.Yellow,x:678,y:362},{name:Ue.Cincinnati,region:Ie.Yellow,x:795,y:348},{name:Ue.Knoxvile,region:Ie.Yellow,x:796,y:422},{name:Ue.Detroit,region:Ie.Brown,x:803,y:262},{name:Ue.Buffalo,region:Ie.Brown,x:913,y:251},{name:Ue.Pittsburgh,region:Ie.Brown,x:884,y:316},{name:Ue.Boston,region:Ie.Brown,x:1052,y:252},{name:Ue.NewYork,region:Ie.Brown,x:1010,y:290},{name:Ue.Philadelphia,region:Ie.Brown,x:985,y:330},{name:Ue.Washington,region:Ie.Brown,x:934,y:357},{name:Ue.Norfolk,region:Ie.Green,x:969,y:405},{name:Ue.Raleigh,region:Ie.Green,x:915,y:437},{name:Ue.Atlanta,region:Ie.Green,x:801,y:487},{name:Ue.Savannah,region:Ie.Green,x:867,y:507},{name:Ue.Jacksonvile,region:Ie.Green,x:861,y:559},{name:Ue.Tampa,region:Ie.Green,x:819,y:621},{name:Ue.Miami,region:Ie.Green,x:883,y:670}],connections:[{nodes:[Ue.Seattle,Ue.Portland],cost:3},{nodes:[Ue.Seattle,Ue.Boise],cost:12},{nodes:[Ue.Seattle,Ue.Billings],cost:9},{nodes:[Ue.Portland,Ue.Boise],cost:13},{nodes:[Ue.Portland,Ue.SanFrancisco],cost:24},{nodes:[Ue.Boise,Ue.Billings],cost:12},{nodes:[Ue.Boise,Ue.SanFrancisco],cost:23},{nodes:[Ue.Boise,Ue.SaltLakeCity],cost:8},{nodes:[Ue.Billings,Ue.Cheyenne],cost:9},{nodes:[Ue.Billings,Ue.Fargo],cost:17},{nodes:[Ue.Billings,Ue.Minneapolis],cost:18},{nodes:[Ue.Cheyenne,Ue.Denver],cost:0},{nodes:[Ue.Cheyenne,Ue.Omaha],cost:14},{nodes:[Ue.Cheyenne,Ue.Minneapolis],cost:18},{nodes:[Ue.Denver,Ue.SaltLakeCity],cost:21},{nodes:[Ue.Denver,Ue.SantaFe],cost:13},{nodes:[Ue.Denver,Ue.KansasCity],cost:16},{nodes:[Ue.Omaha,Ue.KansasCity],cost:5},{nodes:[Ue.Omaha,Ue.Minneapolis],cost:8},{nodes:[Ue.Omaha,Ue.Chicago],cost:12},{nodes:[Ue.SanFrancisco,Ue.LosAngeles],cost:9},{nodes:[Ue.SanFrancisco,Ue.LasVegas],cost:14},{nodes:[Ue.SanFrancisco,Ue.SaltLakeCity],cost:27},{nodes:[Ue.LosAngeles,Ue.SanDiego],cost:3},{nodes:[Ue.LosAngeles,Ue.LasVegas],cost:9},{nodes:[Ue.SanDiego,Ue.LasVegas],cost:9},{nodes:[Ue.SanDiego,Ue.Phoenix],cost:14},{nodes:[Ue.LasVegas,Ue.SaltLakeCity],cost:18},{nodes:[Ue.LasVegas,Ue.Phoenix],cost:15},{nodes:[Ue.LasVegas,Ue.SantaFe],cost:27},{nodes:[Ue.SaltLakeCity,Ue.SantaFe],cost:28},{nodes:[Ue.Phoenix,Ue.SantaFe],cost:18},{nodes:[Ue.SantaFe,Ue.KansasCity],cost:16},{nodes:[Ue.SantaFe,Ue.OklahomaCity],cost:15},{nodes:[Ue.SantaFe,Ue.Dallas],cost:16},{nodes:[Ue.SantaFe,Ue.Houston],cost:20},{nodes:[Ue.KansasCity,Ue.OklahomaCity],cost:8},{nodes:[Ue.KansasCity,Ue.Memphis],cost:12},{nodes:[Ue.KansasCity,Ue.Chicago],cost:8},{nodes:[Ue.KansasCity,Ue.StLouis],cost:6},{nodes:[Ue.OklahomaCity,Ue.Dallas],cost:3},{nodes:[Ue.OklahomaCity,Ue.Memphis],cost:14},{nodes:[Ue.Dallas,Ue.Houston],cost:5},{nodes:[Ue.Dallas,Ue.Memphis],cost:12},{nodes:[Ue.Dallas,Ue.NewOrleans],cost:12},{nodes:[Ue.Houston,Ue.NewOrleans],cost:8},{nodes:[Ue.Memphis,Ue.Birmingham],cost:6},{nodes:[Ue.Memphis,Ue.NewOrleans],cost:7},{nodes:[Ue.Memphis,Ue.StLouis],cost:7},{nodes:[Ue.Birmingham,Ue.NewOrleans],cost:11},{nodes:[Ue.Birmingham,Ue.Atlanta],cost:3},{nodes:[Ue.Birmingham,Ue.Jacksonvile],cost:9},{nodes:[Ue.NewOrleans,Ue.Jacksonvile],cost:16},{nodes:[Ue.Fargo,Ue.Duluth],cost:6},{nodes:[Ue.Fargo,Ue.Minneapolis],cost:6},{nodes:[Ue.Duluth,Ue.Minneapolis],cost:5},{nodes:[Ue.Duluth,Ue.Chicago],cost:12},{nodes:[Ue.Duluth,Ue.Detroit],cost:15},{nodes:[Ue.Minneapolis,Ue.Chicago],cost:8},{nodes:[Ue.Chicago,Ue.StLouis],cost:10},{nodes:[Ue.Chicago,Ue.Cincinnati],cost:7},{nodes:[Ue.Chicago,Ue.Detroit],cost:7},{nodes:[Ue.StLouis,Ue.Cincinnati],cost:12},{nodes:[Ue.StLouis,Ue.Atlanta],cost:12},{nodes:[Ue.Cincinnati,Ue.Knoxvile],cost:6},{nodes:[Ue.Cincinnati,Ue.Detroit],cost:4},{nodes:[Ue.Cincinnati,Ue.Pittsburgh],cost:7},{nodes:[Ue.Knoxvile,Ue.Atlanta],cost:5},{nodes:[Ue.Knoxvile,Ue.Raleigh],cost:11},{nodes:[Ue.Detroit,Ue.Buffalo],cost:7},{nodes:[Ue.Detroit,Ue.Pittsburgh],cost:6},{nodes:[Ue.Buffalo,Ue.Pittsburgh],cost:7},{nodes:[Ue.Buffalo,Ue.NewYork],cost:8},{nodes:[Ue.Pittsburgh,Ue.Washington],cost:6},{nodes:[Ue.Pittsburgh,Ue.Raleigh],cost:7},{nodes:[Ue.Boston,Ue.NewYork],cost:3},{nodes:[Ue.NewYork,Ue.Philadelphia],cost:0},{nodes:[Ue.Philadelphia,Ue.Washington],cost:3},{nodes:[Ue.Washington,Ue.Norfolk],cost:5},{nodes:[Ue.Norfolk,Ue.Raleigh],cost:3},{nodes:[Ue.Raleigh,Ue.Atlanta],cost:7},{nodes:[Ue.Raleigh,Ue.Savannah],cost:7},{nodes:[Ue.Atlanta,Ue.Savannah],cost:7},{nodes:[Ue.Savannah,Ue.Jacksonvile],cost:0},{nodes:[Ue.Jacksonvile,Ue.Tampa],cost:4},{nodes:[Ue.Tampa,Ue.Miami],cost:4}],layout:"Landscape",mapSpecificRules:"You can buy coal from the supply for $8."},$e=[{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}],qe=Object(we["cloneDeep"])($e).filter((function(e){return 11!=e.number}));qe.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"}(Fe||(Fe={})),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"}(Ye||(Ye={}));var Ze,Xe,Qe={name:"Australia",layout:"Landscape",adjustRatio:[.33,.33],mapPosition:[40,-30],mapRotation:180,cities:[{name:Ye.Hobart,region:Fe.Pink,x:540,y:467},{name:Ye.Launceston,region:Fe.Pink,x:720,y:500},{name:Ye.Geelong,region:Fe.Pink,x:988,y:712},{name:Ye.Melbourne1,region:Fe.Pink,x:790,y:650},{name:Ye.Melbourne2,region:Fe.Pink,x:790,y:790},{name:Ye.Bendigo,region:Fe.Pink,x:1052,y:870},{name:Ye.Albury,region:Fe.Brown,x:810,y:983},{name:Ye.Wollongong,region:Fe.Brown,x:530,y:1080},{name:Ye.Mildura,region:Fe.Pink,x:1185,y:1010},{name:Ye.Dubbo,region:Fe.Brown,x:891,y:1364},{name:Ye.Canberra,region:Fe.Brown,x:804,y:1188},{name:Ye.Sydney1,region:Fe.Brown,x:550,y:1230},{name:Ye.Sydney2,region:Fe.Brown,x:550,y:1380},{name:Ye.Newcastle,region:Fe.Brown,x:530,y:1545},{name:Ye.Toowoomba,region:Fe.Green,x:1010,y:1660},{name:Ye.Goldcoast,region:Fe.Green,x:660,y:1730},{name:Ye.Brisbane,region:Fe.Green,x:740,y:1885},{name:Ye.Rockhampton,region:Fe.Green,x:1040,y:1987},{name:Ye.Mackay,region:Fe.Green,x:1260,y:2101},{name:Ye.Townsville,region:Fe.Green,x:1445,y:2193},{name:Ye.Cairns,region:Fe.Green,x:1652,y:2209},{name:Ye.Porthedland,region:Fe.Red,x:2741,y:2002},{name:Ye.Broome,region:Fe.Red,x:2503,y:2175},{name:Ye.Albany,region:Fe.Red,x:2400,y:850},{name:Ye.Bunbury,region:Fe.Red,x:2700,y:1030},{name:Ye.Perth,region:Fe.Red,x:2680,y:1230},{name:Ye.Kalgoorlie,region:Fe.Red,x:2177,y:1295},{name:Ye.Geraldton,region:Fe.Red,x:2747,y:1557},{name:Ye.Darwin,region:Fe.Yellow,x:2264,y:2016},{name:Ye.Katherine,region:Fe.Yellow,x:2105,y:1947},{name:Ye.Tennantcreek,region:Fe.Yellow,x:1905,y:1736},{name:Ye.Alicesprings,region:Fe.Yellow,x:1803,y:1512},{name:Ye.Portaugusta,region:Fe.Yellow,x:1520,y:1094},{name:Ye.CooberPedy,region:Fe.Yellow,x:1850,y:1232},{name:Ye.Adelaide,region:Fe.Yellow,x:1430,y:863}],connections:[{nodes:[Ye.Broome,Ye.Porthedland],cost:13},{nodes:[Ye.Kalgoorlie,Ye.Geraldton],cost:16},{nodes:[Ye.Geraldton,Ye.Perth],cost:9},{nodes:[Ye.Perth,Ye.Kalgoorlie],cost:12},{nodes:[Ye.Kalgoorlie,Ye.Albany],cost:16},{nodes:[Ye.Albany,Ye.Perth],cost:9},{nodes:[Ye.Perth,Ye.Bunbury],cost:4},{nodes:[Ye.Bunbury,Ye.Albany],cost:6},{nodes:[Ye.Cairns,Ye.Townsville],cost:9},{nodes:[Ye.Townsville,Ye.Mackay],cost:9},{nodes:[Ye.Mackay,Ye.Rockhampton],cost:8},{nodes:[Ye.Rockhampton,Ye.Toowoomba],cost:15},{nodes:[Ye.Toowoomba,Ye.Brisbane],cost:5},{nodes:[Ye.Brisbane,Ye.Rockhampton],cost:15},{nodes:[Ye.Brisbane,Ye.Goldcoast],cost:2},{nodes:[Ye.Goldcoast,Ye.Toowoomba],cost:6},{nodes:[Ye.Goldcoast,Ye.Newcastle],cost:15},{nodes:[Ye.Newcastle,Ye.Sydney2],cost:4},{nodes:[Ye.Sydney2,Ye.Sydney1],cost:0},{nodes:[Ye.Newcastle,Ye.Dubbo],cost:10},{nodes:[Ye.Dubbo,Ye.Toowoomba],cost:18},{nodes:[Ye.Sydney1,Ye.Wollongong],cost:2},{nodes:[Ye.Sydney1,Ye.Canberra],cost:8},{nodes:[Ye.Canberra,Ye.Dubbo],cost:11},{nodes:[Ye.Canberra,Ye.Newcastle],cost:10},{nodes:[Ye.Dubbo,Ye.Mildura],cost:16},{nodes:[Ye.Mildura,Ye.Canberra],cost:16},{nodes:[Ye.Canberra,Ye.Albury],cost:7},{nodes:[Ye.Mildura,Ye.Bendigo],cost:7},{nodes:[Ye.Bendigo,Ye.Melbourne2],cost:3},{nodes:[Ye.Melbourne2,Ye.Albury],cost:9},{nodes:[Ye.Mildura,Ye.Adelaide],cost:8},{nodes:[Ye.Adelaide,Ye.Portaugusta],cost:7},{nodes:[Ye.Portaugusta,Ye.CooberPedy],cost:11},{nodes:[Ye.Mildura,Ye.Portaugusta],cost:11},{nodes:[Ye.Adelaide,Ye.Geelong],cost:13},{nodes:[Ye.Geelong,Ye.Bendigo],cost:5},{nodes:[Ye.Bendigo,Ye.Albury],cost:6},{nodes:[Ye.Wollongong,Ye.Melbourne1],cost:19},{nodes:[Ye.Melbourne1,Ye.Launceston],cost:19},{nodes:[Ye.Launceston,Ye.Hobart],cost:5},{nodes:[Ye.Melbourne1,Ye.Geelong],cost:2},{nodes:[Ye.Melbourne2,Ye.Melbourne1],cost:0},{nodes:[Ye.CooberPedy,Ye.Alicesprings],cost:13},{nodes:[Ye.Alicesprings,Ye.Tennantcreek],cost:10},{nodes:[Ye.Tennantcreek,Ye.Katherine],cost:14},{nodes:[Ye.Katherine,Ye.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"])($e).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=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{var u=Ne(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=Ne(a,t()+""),2==e?(u=u.slice(1),a=Ne(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=Ne(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=Ne(a.slice(3).concat(u),t()+"")):a=Ne(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"})(Ze||(Ze={})),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"}(Xe||(Xe={}));var en,nn,tn={name:"Baden-Württemberg",cities:[{name:Xe.Friedrichshafen,region:Ze.Purple,x:1286,y:2177},{name:Xe.Ravensburg,region:Ze.Purple,x:1365,y:2023},{name:Xe.Biberach,region:Ze.Purple,x:1451,y:1779},{name:Xe.Sigmarincen,region:Ze.Purple,x:1111,y:1803},{name:Xe.Konstanz,region:Ze.Purple,x:1088,y:2163},{name:Xe.Ulm,region:Ze.Purple,x:1541,y:1499},{name:Xe.Augsburg,region:Ze.Purple,x:1830,y:1505,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Basel,region:Ze.Green,x:103,y:2271,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Waldshuttiencen,region:Ze.Green,x:502,y:2166},{name:Xe.Singen,region:Ze.Green,x:874,y:2084},{name:Xe.Tuttlincen,region:Ze.Green,x:870,y:1854},{name:Xe.Donaueschingen,region:Ze.Green,x:669,y:1923},{name:Xe.Freiburg,region:Ze.Green,x:290,y:1828},{name:Xe.Lorrach,region:Ze.Green,x:212,y:2141},{name:Xe.Tauberbischofsheim,region:Ze.Red,x:1354,y:450},{name:Xe.Schwabischhall,region:Ze.Red,x:1415,y:899},{name:Xe.Heilbronn,region:Ze.Red,x:1115,y:872},{name:Xe.Sinsheim,region:Ze.Red,x:920,y:785},{name:Xe.Heidelber,region:Ze.Red,x:817,y:660},{name:Xe.Mannheim,region:Ze.Red,x:710,y:540},{name:Xe.Luowigshafen,region:Ze.Red,x:579,y:588,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Nurnberg,region:Ze.Blue,x:1837,y:771,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Ellwangen,region:Ze.Blue,x:1637,y:1030},{name:Xe.Coppingen,region:Ze.Blue,x:1387,y:1233},{name:Xe.Reutlincen,region:Ze.Blue,x:1107,y:1443},{name:Xe.Stuttgart,region:Ze.Blue,x:1106,y:1217},{name:Xe.Ludwigsburg,region:Ze.Blue,x:1099,y:1047},{name:Xe.Boblingen,region:Ze.Blue,x:956,y:1277},{name:Xe.Laha,region:Ze.Yellow,x:296,y:1575},{name:Xe.Badenbaden,region:Ze.Yellow,x:554,y:1259},{name:Xe.Offenburg,region:Ze.Yellow,x:395,y:1422},{name:Xe.Strasbourg,region:Ze.Yellow,x:211,y:1330,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Pforzheim,region:Ze.Yellow,x:794,y:1095},{name:Xe.Rastatt,region:Ze.Yellow,x:509,y:1109},{name:Xe.Karlsruhf,region:Ze.Yellow,x:638,y:974}],connections:[{nodes:[Xe.Luowigshafen,Xe.Mannheim],cost:0},{nodes:[Xe.Mannheim,Xe.Heidelber],cost:4},{nodes:[Xe.Mannheim,Xe.Karlsruhf],cost:10},{nodes:[Xe.Karlsruhf,Xe.Heidelber],cost:9},{nodes:[Xe.Heidelber,Xe.Sinsheim],cost:5},{nodes:[Xe.Sinsheim,Xe.Tauberbischofsheim],cost:15},{nodes:[Xe.Tauberbischofsheim,Xe.Heilbronn],cost:13},{nodes:[Xe.Heilbronn,Xe.Sinsheim],cost:6},{nodes:[Xe.Sinsheim,Xe.Karlsruhf],cost:9},{nodes:[Xe.Karlsruhf,Xe.Rastatt],cost:4},{nodes:[Xe.Karlsruhf,Xe.Pforzheim],cost:6},{nodes:[Xe.Pforzheim,Xe.Sinsheim],cost:10},{nodes:[Xe.Tauberbischofsheim,Xe.Schwabischhall],cost:13},{nodes:[Xe.Schwabischhall,Xe.Ellwangen],cost:8},{nodes:[Xe.Ellwangen,Xe.Nurnberg],cost:18},{nodes:[Xe.Schwabischhall,Xe.Coppingen],cost:11},{nodes:[Xe.Coppingen,Xe.Ellwangen],cost:10},{nodes:[Xe.Ludwigsburg,Xe.Heilbronn],cost:5},{nodes:[Xe.Heilbronn,Xe.Schwabischhall],cost:9},{nodes:[Xe.Schwabischhall,Xe.Ludwigsburg],cost:10},{nodes:[Xe.Ludwigsburg,Xe.Coppingen],cost:9},{nodes:[Xe.Coppingen,Xe.Stuttgart],cost:8},{nodes:[Xe.Ludwigsburg,Xe.Sinsheim],cost:10},{nodes:[Xe.Ludwigsburg,Xe.Pforzheim],cost:8},{nodes:[Xe.Pforzheim,Xe.Badenbaden],cost:9},{nodes:[Xe.Badenbaden,Xe.Rastatt],cost:2},{nodes:[Xe.Strasbourg,Xe.Offenburg],cost:5},{nodes:[Xe.Offenburg,Xe.Badenbaden],cost:8},{nodes:[Xe.Pforzheim,Xe.Stuttgart],cost:8},{nodes:[Xe.Stuttgart,Xe.Ludwigsburg],cost:2},{nodes:[Xe.Stuttgart,Xe.Boblingen],cost:4},{nodes:[Xe.Boblingen,Xe.Pforzheim],cost:7},{nodes:[Xe.Boblingen,Xe.Badenbaden],cost:15},{nodes:[Xe.Reutlincen,Xe.Stuttgart],cost:9},{nodes:[Xe.Boblingen,Xe.Reutlincen],cost:8},{nodes:[Xe.Reutlincen,Xe.Badenbaden],cost:22},{nodes:[Xe.Offenburg,Xe.Reutlincen],cost:30},{nodes:[Xe.Reutlincen,Xe.Coppingen],cost:10},{nodes:[Xe.Coppingen,Xe.Ulm],cost:10},{nodes:[Xe.Ulm,Xe.Reutlincen],cost:16},{nodes:[Xe.Ellwangen,Xe.Ulm],cost:19},{nodes:[Xe.Ulm,Xe.Augsburg],cost:16},{nodes:[Xe.Reutlincen,Xe.Tuttlincen],cost:17},{nodes:[Xe.Reutlincen,Xe.Sigmarincen],cost:11},{nodes:[Xe.Sigmarincen,Xe.Ulm],cost:14},{nodes:[Xe.Ulm,Xe.Biberach],cost:8},{nodes:[Xe.Biberach,Xe.Sigmarincen],cost:11},{nodes:[Xe.Biberach,Xe.Ravensburg],cost:9},{nodes:[Xe.Ravensburg,Xe.Sigmarincen],cost:10},{nodes:[Xe.Sigmarincen,Xe.Tuttlincen],cost:7},{nodes:[Xe.Tuttlincen,Xe.Offenburg],cost:27},{nodes:[Xe.Offenburg,Xe.Laha],cost:3},{nodes:[Xe.Laha,Xe.Freiburg],cost:8},{nodes:[Xe.Laha,Xe.Donaueschingen],cost:19},{nodes:[Xe.Donaueschingen,Xe.Tuttlincen],cost:6},{nodes:[Xe.Tuttlincen,Xe.Singen],cost:7},{nodes:[Xe.Singen,Xe.Donaueschingen],cost:7},{nodes:[Xe.Donaueschingen,Xe.Freiburg],cost:13},{nodes:[Xe.Freiburg,Xe.Lorrach],cost:10},{nodes:[Xe.Freiburg,Xe.Waldshuttiencen],cost:15},{nodes:[Xe.Waldshuttiencen,Xe.Lorrach],cost:9},{nodes:[Xe.Lorrach,Xe.Basel],cost:2},{nodes:[Xe.Waldshuttiencen,Xe.Donaueschingen],cost:11},{nodes:[Xe.Singen,Xe.Konstanz],cost:6},{nodes:[Xe.Konstanz,Xe.Friedrichshafen],cost:9},{nodes:[Xe.Friedrichshafen,Xe.Ravensburg],cost:3},{nodes:[Xe.Friedrichshafen,Xe.Sigmarincen],cost:11},{nodes:[Xe.Sigmarincen,Xe.Konstanz],cost:14},{nodes:[Xe.Konstanz,Xe.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"})(en||(en={})),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"}(nn||(nn={}));var rn,on,an={name:"Benelux",cities:[{name:nn.Groningen,region:en.Green,x:654,y:147},{name:nn.Enschede,region:en.Green,x:659,y:369},{name:nn.Apeldoorn,region:en.Green,x:552,y:329},{name:nn.Arnhem,region:en.Green,x:541,y:386},{name:nn.Leeuwarden,region:en.Green,x:560,y:136},{name:nn.Nijmegen,region:en.Green,x:518,y:445},{name:nn.Denhelder,region:en.Green,x:411,y:169},{name:nn.Zaanstad,region:en.Brown,x:432,y:245},{name:nn.Amsterdam,region:en.Brown,x:437,y:299},{name:nn.Utrecht,region:en.Brown,x:429,y:361},{name:nn.Haarlem,region:en.Brown,x:373,y:259},{name:nn.Leiden,region:en.Brown,x:355,y:322},{name:nn.Denhaas,region:en.Brown,x:300,y:347},{name:nn.Rotterdam,region:en.Brown,x:338,y:400},{name:nn.Enbosch,region:en.Yellow,x:448,y:447},{name:nn.Venlo,region:en.Yellow,x:550,y:526},{name:nn.Eindhoven,region:en.Yellow,x:463,y:539},{name:nn.Tilburg,region:en.Yellow,x:404,y:497},{name:nn.Breda,region:en.Yellow,x:349,y:466},{name:nn.Middelburg,region:en.Yellow,x:210,y:453},{name:nn.Maastricht,region:en.Yellow,x:480,y:640},{name:nn.Leuven,region:en.Red,x:352,y:619},{name:nn.Brussel,region:en.Red,x:286,y:595},{name:nn.Antwerpen,region:en.Red,x:304,y:526},{name:nn.Gent,region:en.Red,x:206,y:562},{name:nn.Kortrijk,region:en.Red,x:132,y:589},{name:nn.Brugge,region:en.Red,x:160,y:511},{name:nn.Dostende,region:en.Red,x:94,y:495},{name:nn.Liege,region:en.Blue,x:445,y:705},{name:nn.Namur,region:en.Blue,x:361,y:713},{name:nn.Bruxelles,region:en.Blue,x:283,y:642},{name:nn.Charleroi,region:en.Blue,x:278,y:725},{name:nn.Mons,region:en.Blue,x:212,y:686},{name:nn.Arlon,region:en.Blue,x:431,y:876},{name:nn.Luxembourg,region:en.Blue,x:502,y:918}],connections:[{nodes:[nn.Denhelder,nn.Leeuwarden],cost:13},{nodes:[nn.Leeuwarden,nn.Groningen],cost:6},{nodes:[nn.Groningen,nn.Enschede],cost:12},{nodes:[nn.Enschede,nn.Apeldoorn],cost:9},{nodes:[nn.Apeldoorn,nn.Arnhem],cost:3},{nodes:[nn.Arnhem,nn.Nijmegen],cost:2},{nodes:[nn.Nijmegen,nn.Enbosch],cost:6},{nodes:[nn.Nijmegen,nn.Venlo],cost:7},{nodes:[nn.Nijmegen,nn.Eindhoven],cost:7},{nodes:[nn.Eindhoven,nn.Enbosch],cost:4},{nodes:[nn.Enbosch,nn.Utrecht],cost:8},{nodes:[nn.Apeldoorn,nn.Leeuwarden],cost:15},{nodes:[nn.Leeuwarden,nn.Enschede],cost:13},{nodes:[nn.Enschede,nn.Arnhem],cost:7},{nodes:[nn.Arnhem,nn.Utrecht],cost:6},{nodes:[nn.Utrecht,nn.Amsterdam],cost:4},{nodes:[nn.Amsterdam,nn.Haarlem],cost:2},{nodes:[nn.Haarlem,nn.Zaanstad],cost:2},{nodes:[nn.Zaanstad,nn.Denhelder],cost:6},{nodes:[nn.Denhelder,nn.Haarlem],cost:7},{nodes:[nn.Haarlem,nn.Leiden],cost:3},{nodes:[nn.Leiden,nn.Denhaas],cost:2},{nodes:[nn.Denhaas,nn.Rotterdam],cost:3},{nodes:[nn.Rotterdam,nn.Leiden],cost:3},{nodes:[nn.Leiden,nn.Amsterdam],cost:4},{nodes:[nn.Leiden,nn.Utrecht],cost:4},{nodes:[nn.Utrecht,nn.Rotterdam],cost:5},{nodes:[nn.Rotterdam,nn.Enbosch],cost:11},{nodes:[nn.Breda,nn.Rotterdam],cost:8},{nodes:[nn.Breda,nn.Middelburg],cost:9},{nodes:[nn.Middelburg,nn.Antwerpen],cost:8},{nodes:[nn.Antwerpen,nn.Brugge],cost:9},{nodes:[nn.Brugge,nn.Dostende],cost:2},{nodes:[nn.Amsterdam,nn.Zaanstad],cost:1},{nodes:[nn.Amsterdam,nn.Apeldoorn],cost:7},{nodes:[nn.Apeldoorn,nn.Utrecht],cost:6},{nodes:[nn.Venlo,nn.Eindhoven],cost:5},{nodes:[nn.Eindhoven,nn.Tilburg],cost:4},{nodes:[nn.Tilburg,nn.Breda],cost:2},{nodes:[nn.Breda,nn.Enbosch],cost:5},{nodes:[nn.Breda,nn.Antwerpen],cost:5},{nodes:[nn.Antwerpen,nn.Tilburg],cost:6},{nodes:[nn.Antwerpen,nn.Eindhoven],cost:8},{nodes:[nn.Eindhoven,nn.Maastricht],cost:8},{nodes:[nn.Maastricht,nn.Venlo],cost:10},{nodes:[nn.Maastricht,nn.Leuven],cost:7},{nodes:[nn.Leuven,nn.Eindhoven],cost:9},{nodes:[nn.Leuven,nn.Brussel],cost:2},{nodes:[nn.Brussel,nn.Bruxelles],cost:0},{nodes:[nn.Bruxelles,nn.Charleroi],cost:5},{nodes:[nn.Charleroi,nn.Namur],cost:3},{nodes:[nn.Namur,nn.Bruxelles],cost:5},{nodes:[nn.Leuven,nn.Namur],cost:5},{nodes:[nn.Leuven,nn.Liege],cost:7},{nodes:[nn.Liege,nn.Namur],cost:6},{nodes:[nn.Liege,nn.Maastricht],cost:3},{nodes:[nn.Kortrijk,nn.Dostende],cost:5},{nodes:[nn.Brugge,nn.Kortrijk],cost:4},{nodes:[nn.Kortrijk,nn.Gent],cost:4},{nodes:[nn.Gent,nn.Brugge],cost:3},{nodes:[nn.Kortrijk,nn.Bruxelles],cost:10},{nodes:[nn.Bruxelles,nn.Mons],cost:5},{nodes:[nn.Mons,nn.Kortrijk],cost:8},{nodes:[nn.Gent,nn.Antwerpen],cost:5},{nodes:[nn.Antwerpen,nn.Brussel],cost:4},{nodes:[nn.Brussel,nn.Gent],cost:7},{nodes:[nn.Antwerpen,nn.Leuven],cost:4},{nodes:[nn.Mons,nn.Charleroi],cost:4},{nodes:[nn.Charleroi,nn.Arlon],cost:18},{nodes:[nn.Arlon,nn.Luxembourg],cost:5},{nodes:[nn.Luxembourg,nn.Liege],cost:20},{nodes:[nn.Liege,nn.Arlon],cost:18},{nodes:[nn.Arlon,nn.Namur],cost:16},{nodes:[nn.Tilburg,nn.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"})(rn||(rn={})),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"}(on||(on={}));var sn,cn,un={name:"Brazil",cities:[{name:on.Parnaiba,region:rn.Red,x:855,y:458},{name:on.Fortaleza,region:rn.Red,x:961,y:478},{name:on.Sadluis,region:rn.Red,x:772,y:418},{name:on.Belem,region:rn.Red,x:655,y:378},{name:on.Teresina,region:rn.Red,x:846,y:548},{name:on.Imperatriz,region:rn.Red,x:697,y:535},{name:on.Maraba,region:rn.Red,x:581,y:492},{name:on.Campinagrande,region:rn.Pink,x:976,y:587},{name:on.Petrolina,region:rn.Pink,x:872,y:648},{name:on.Natal,region:rn.Pink,x:1061,y:518},{name:on.Joaopessoa,region:rn.Pink,x:1097,y:576},{name:on.Recife,region:rn.Pink,x:1083,y:637},{name:on.Maceio,region:rn.Pink,x:1040,y:699},{name:on.Aracaju,region:rn.Pink,x:995,y:750},{name:on.Salvadordabahia,region:rn.Purple,x:960,y:808},{name:on.Montesclaros,region:rn.Purple,x:795,y:847},{name:on.Brasilia,region:rn.Purple,x:671,y:817},{name:on.Palmas,region:rn.Purple,x:648,y:663},{name:on.Porangatu,region:rn.Purple,x:598,y:762},{name:on.Goiania,region:rn.Purple,x:601,y:889},{name:on.Uberlandia,region:rn.Purple,x:646,y:964},{name:on.Vitoria,region:rn.Green,x:910,y:971},{name:on.Riodejaneiro,region:rn.Green,x:795,y:1076},{name:on.Saogoncalo,region:rn.Green,x:843,y:1033},{name:on.Saopaulo,region:rn.Green,x:721,y:1134},{name:on.Guarulhos,region:rn.Green,x:678,y:1089},{name:on.Campinas,region:rn.Green,x:629,y:1037},{name:on.Belohorizonte,region:rn.Green,x:771,y:960},{name:on.Curitiba,region:rn.Brown,x:615,y:1144},{name:on.Florianopolis,region:rn.Brown,x:665,y:1214},{name:on.Portoalecre,region:rn.Brown,x:590,y:1281},{name:on.Pelotas,region:rn.Brown,x:551,y:1346},{name:on.Urucuaiana,region:rn.Brown,x:444,y:1250},{name:on.Londrina,region:rn.Brown,x:516,y:1075},{name:on.Campogrande,region:rn.Brown,x:440,y:983},{name:on.Macapa,region:rn.Yellow,x:561,y:317},{name:on.Boavista,region:rn.Yellow,x:308,y:269},{name:on.Manaus,region:rn.Yellow,x:258,y:466},{name:on.Portovelho,region:rn.Yellow,x:238,y:620},{name:on.Cuiaba,region:rn.Yellow,x:432,y:850},{name:on.Vilhena,region:rn.Yellow,x:328,y:741},{name:on.Riobranco,region:rn.Yellow,x:87,y:666}],connections:[{nodes:[on.Boavista,on.Macapa],cost:22},{nodes:[on.Macapa,on.Belem],cost:10},{nodes:[on.Belem,on.Sadluis],cost:10},{nodes:[on.Sadluis,on.Imperatriz],cost:9},{nodes:[on.Belem,on.Imperatriz],cost:9},{nodes:[on.Belem,on.Maraba],cost:9},{nodes:[on.Macapa,on.Maraba],cost:16},{nodes:[on.Maraba,on.Manaus],cost:22},{nodes:[on.Macapa,on.Manaus],cost:18},{nodes:[on.Boavista,on.Manaus],cost:13},{nodes:[on.Boavista,on.Riobranco],cost:30},{nodes:[on.Riobranco,on.Manaus],cost:23},{nodes:[on.Manaus,on.Portovelho],cost:15},{nodes:[on.Portovelho,on.Riobranco],cost:10},{nodes:[on.Riobranco,on.Vilhena],cost:18},{nodes:[on.Portovelho,on.Vilhena],cost:12},{nodes:[on.Manaus,on.Vilhena],cost:21},{nodes:[on.Vilhena,on.Cuiaba],cost:10},{nodes:[on.Vilhena,on.Maraba],cost:31},{nodes:[on.Maraba,on.Imperatriz],cost:4},{nodes:[on.Sadluis,on.Teresina],cost:8},{nodes:[on.Teresina,on.Imperatriz],cost:11},{nodes:[on.Imperatriz,on.Palmas],cost:9},{nodes:[on.Palmas,on.Maraba],cost:10},{nodes:[on.Maraba,on.Porangatu],cost:17},{nodes:[on.Porangatu,on.Goiania],cost:8},{nodes:[on.Porangatu,on.Vilhena],cost:23},{nodes:[on.Cuiaba,on.Porangatu],cost:16},{nodes:[on.Porangatu,on.Palmas],cost:8},{nodes:[on.Palmas,on.Brasilia],cost:13},{nodes:[on.Brasilia,on.Porangatu],cost:6},{nodes:[on.Brasilia,on.Goiania],cost:4},{nodes:[on.Goiania,on.Cuiaba],cost:15},{nodes:[on.Sadluis,on.Parnaiba],cost:5},{nodes:[on.Parnaiba,on.Teresina],cost:5},{nodes:[on.Parnaiba,on.Fortaleza],cost:7},{nodes:[on.Fortaleza,on.Natal],cost:8},{nodes:[on.Natal,on.Joaopessoa],cost:3},{nodes:[on.Joaopessoa,on.Recife],cost:2},{nodes:[on.Recife,on.Maceio],cost:3},{nodes:[on.Maceio,on.Aracaju],cost:3},{nodes:[on.Aracaju,on.Salvadordabahia],cost:4},{nodes:[on.Natal,on.Campinagrande],cost:4},{nodes:[on.Fortaleza,on.Teresina],cost:10},{nodes:[on.Teresina,on.Petrolina],cost:12},{nodes:[on.Petrolina,on.Palmas],cost:19},{nodes:[on.Petrolina,on.Brasilia],cost:22},{nodes:[on.Petrolina,on.Montesclaros],cost:19},{nodes:[on.Montesclaros,on.Salvadordabahia],cost:16},{nodes:[on.Salvadordabahia,on.Petrolina],cost:10},{nodes:[on.Petrolina,on.Campinagrande],cost:12},{nodes:[on.Petrolina,on.Aracaju],cost:11},{nodes:[on.Vitoria,on.Salvadordabahia],cost:16},{nodes:[on.Montesclaros,on.Vitoria],cost:14},{nodes:[on.Vitoria,on.Saogoncalo],cost:6},{nodes:[on.Vitoria,on.Belohorizonte],cost:9},{nodes:[on.Belohorizonte,on.Montesclaros],cost:8},{nodes:[on.Montesclaros,on.Brasilia],cost:9},{nodes:[on.Brasilia,on.Uberlandia],cost:8},{nodes:[on.Uberlandia,on.Goiania],cost:7},{nodes:[on.Goiania,on.Campogrande],cost:16},{nodes:[on.Campogrande,on.Cuiaba],cost:13},{nodes:[on.Campogrande,on.Londrina],cost:10},{nodes:[on.Campogrande,on.Uberlandia],cost:13},{nodes:[on.Uberlandia,on.Londrina],cost:12},{nodes:[on.Londrina,on.Campinas],cost:9},{nodes:[on.Campinas,on.Uberlandia],cost:9},{nodes:[on.Uberlandia,on.Belohorizonte],cost:10},{nodes:[on.Uberlandia,on.Brasilia],cost:8},{nodes:[on.Brasilia,on.Belohorizonte],cost:14},{nodes:[on.Belohorizonte,on.Saogoncalo],cost:7},{nodes:[on.Saogoncalo,on.Riodejaneiro],cost:0},{nodes:[on.Riodejaneiro,on.Saopaulo],cost:7},{nodes:[on.Saopaulo,on.Guarulhos],cost:0},{nodes:[on.Guarulhos,on.Campinas],cost:0},{nodes:[on.Campinas,on.Curitiba],cost:6},{nodes:[on.Curitiba,on.Londrina],cost:7},{nodes:[on.Saopaulo,on.Florianopolis],cost:9},{nodes:[on.Florianopolis,on.Curitiba],cost:4},{nodes:[on.Londrina,on.Urucuaiana],cost:18},{nodes:[on.Urucuaiana,on.Pelotas],cost:9},{nodes:[on.Pelotas,on.Portoalecre],cost:4},{nodes:[on.Portoalecre,on.Urucuaiana],cost:10},{nodes:[on.Londrina,on.Portoalecre],cost:16},{nodes:[on.Portoalecre,on.Curitiba],cost:11},{nodes:[on.Portoalecre,on.Florianopolis],cost:7},{nodes:[on.Guarulhos,on.Belohorizonte],cost:10},{nodes:[on.Maceio,on.Campinagrande],cost:6},{nodes:[on.Petrolina,on.Fortaleza],cost:14},{nodes:[on.Recife,on.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"])($e),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=Ne(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=Ne(a,t()+""),a.unshift(c),a.unshift(s),a.push(u),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{var l=a.splice(3,1)[0],d=a.splice(10,1)[0],f=Ne(a.splice(0,11),t()+""),h=f.splice(0,6);h.push(l,d),h=h.sort((function(e,n){return e.number-n.number})),r=h.slice(0,4),o=h.slice(4);var p=f.shift(),g=a.pop();a=Ne(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e?(f=f.slice(1),a=Ne(a.slice(5).concat(f),t()+"")):3==e?(f=f.slice(2),a=Ne(a.slice(6).concat(f),t()+"")):4==e?(f=f.slice(1),a=Ne(a.slice(3).concat(f),t()+"")):a=Ne(a.concat(f),t()+""),a=a.concat(i),a=Ne(a,t()+""),a.unshift(p),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"})(sn||(sn={})),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"}(cn||(cn={}));var ln,dn,fn={name:"Bremen",cities:[{name:cn.Borgfeld,region:sn.Blue,connectionCost:15,slotCosts:[8,14],x:645,y:273},{name:cn.Oberneuland,region:sn.Blue,connectionCost:14,slotCosts:[8,14,20],x:652,y:342},{name:cn.Osterholz,region:sn.Blue,connectionCost:11,slotCosts:[8,14,20],x:660,y:434},{name:cn.HornLehe,region:sn.Blue,connectionCost:9,slotCosts:[8,14,20],x:572,y:322},{name:cn.Vahr,region:sn.Blue,connectionCost:6,slotCosts:[8,14,20],x:583,y:376},{name:cn.Schwachhausen,region:sn.Pink,connectionCost:5,slotCosts:[8,14,20],x:517,y:357},{name:cn.OstlicheVorstadt,region:sn.Pink,connectionCost:2,slotCosts:[8,14,20],x:536,y:409},{name:cn.Findorff,region:sn.Pink,connectionCost:3,slotCosts:[8,14],x:488,y:311},{name:cn.Walle,region:sn.Pink,connectionCost:6,slotCosts:[8,14,20],x:438,y:342},{name:cn.Mitte,region:sn.Pink,connectionCost:1,slotCosts:[8,14,20],x:472,y:388},{name:cn.Hemelingen,region:sn.Purple,connectionCost:8,slotCosts:[8,14,20],x:600,y:453},{name:cn.Mahndorf,region:sn.Purple,connectionCost:10,slotCosts:[8,14,20],x:666,y:499},{name:cn.Neustadt,region:sn.Purple,connectionCost:5,slotCosts:[8,14,20],x:464,y:452},{name:cn.Obervieland,region:sn.Purple,connectionCost:10,slotCosts:[8,14,20],x:529,y:479},{name:cn.Huchting,region:sn.Purple,connectionCost:12,slotCosts:[8,14],x:386,y:442},{name:cn.Hofen,region:sn.Red,connectionCost:9,slotCosts:[8,14,20],x:352,y:272},{name:cn.Pusdorf,region:sn.Red,connectionCost:7,slotCosts:[8,14,20],x:399,y:386},{name:cn.Neustadtshafen,region:sn.Red,connectionCost:8,slotCosts:[8,14,20],x:375,y:340},{name:cn.Strom,region:sn.Red,connectionCost:14,slotCosts:[8,14,20],x:328,y:393},{name:cn.Seehausen,region:sn.Red,connectionCost:14,slotCosts:[8,14],x:290,y:321},{name:cn.Blockland,region:sn.Orange,connectionCost:11,slotCosts:[8,14,20],x:476,y:251},{name:cn.Gropelingen,region:sn.Orange,connectionCost:8,slotCosts:[8,14,20],x:426,y:280},{name:cn.Burglesum,region:sn.Orange,connectionCost:13,slotCosts:[8,14,20],x:337,y:197},{name:cn.Vegesack,region:sn.Orange,connectionCost:10,slotCosts:[8,14,20],x:248,y:170},{name:cn.Blumenthal,region:sn.Orange,connectionCost:15,slotCosts:[8,14],x:154,y:135}],connections:[{nodes:[cn.Borgfeld,cn.Oberneuland],cost:0},{nodes:[cn.Oberneuland,cn.Osterholz],cost:0},{nodes:[cn.Borgfeld,cn.HornLehe],cost:0},{nodes:[cn.Oberneuland,cn.HornLehe],cost:0},{nodes:[cn.Oberneuland,cn.Vahr],cost:0},{nodes:[cn.Osterholz,cn.Vahr],cost:0},{nodes:[cn.HornLehe,cn.Vahr],cost:0},{nodes:[cn.HornLehe,cn.Schwachhausen],cost:0},{nodes:[cn.HornLehe,cn.Findorff],cost:0},{nodes:[cn.Vahr,cn.Hemelingen],cost:0},{nodes:[cn.Osterholz,cn.Mahndorf],cost:0},{nodes:[cn.Hofen,cn.Neustadtshafen],cost:0},{nodes:[cn.Hofen,cn.Seehausen],cost:0},{nodes:[cn.Pusdorf,cn.Neustadtshafen],cost:0},{nodes:[cn.Neustadtshafen,cn.Seehausen],cost:0},{nodes:[cn.Neustadtshafen,cn.Strom],cost:0},{nodes:[cn.Seehausen,cn.Strom],cost:0},{nodes:[cn.Blockland,cn.Gropelingen],cost:0},{nodes:[cn.Blockland,cn.Burglesum],cost:0},{nodes:[cn.Gropelingen,cn.Burglesum],cost:0},{nodes:[cn.Burglesum,cn.Vegesack],cost:0},{nodes:[cn.Vegesack,cn.Blumenthal],cost:0},{nodes:[cn.Mahndorf,cn.Hemelingen],cost:0},{nodes:[cn.Hemelingen,cn.Obervieland],cost:0},{nodes:[cn.Obervieland,cn.Neustadt],cost:0},{nodes:[cn.Neustadt,cn.Huchting],cost:0},{nodes:[cn.Hemelingen,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Obervieland,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Neustadt,cn.Mitte],cost:0},{nodes:[cn.Neustadt,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Huchting,cn.Strom],cost:0},{nodes:[cn.Huchting,cn.Pusdorf],cost:0},{nodes:[cn.Findorff,cn.Walle],cost:0},{nodes:[cn.Findorff,cn.Mitte],cost:0},{nodes:[cn.Findorff,cn.Schwachhausen],cost:0},{nodes:[cn.Schwachhausen,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Schwachhausen,cn.Mitte],cost:0},{nodes:[cn.Walle,cn.Mitte],cost:0},{nodes:[cn.Mitte,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Strom,cn.Pusdorf],cost:0},{nodes:[cn.Vahr,cn.Schwachhausen],cost:0},{nodes:[cn.Blockland,cn.HornLehe],cost:0},{nodes:[cn.Hemelingen,cn.Osterholz],cost:0},{nodes:[cn.Hofen,cn.Gropelingen],cost:0},{nodes:[cn.Hofen,cn.Burglesum],cost:0},{nodes:[cn.Burglesum,cn.Seehausen],cost:0},{nodes:[cn.Walle,cn.Gropelingen],cost:0},{nodes:[cn.Walle,cn.Blockland],cost:0},{nodes:[cn.Findorff,cn.Blockland],cost:0},{nodes:[cn.Walle,cn.Hofen],cost:0},{nodes:[cn.Walle,cn.Neustadtshafen],cost:0},{nodes:[cn.Walle,cn.Pusdorf],cost:0},{nodes:[cn.Pusdorf,cn.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"])($e).filter((function(e){return!r.has(e.number)})),s=i.pop();if("original"==n){o=[sr(3),sr(4),sr(5),sr(6)],a=[sr(7),sr(8),sr(9),sr(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=Ne(l,t()+""),l.unshift(u),l.push(s),{actualMarket:o,futureMarket:a,powerPlantsDeck:l}}var d=Ne(i.filter((function(e){return e.number<=15})),t()+""),f=i.filter((function(e){return e.number>15})),h=d.splice(0,8).sort((function(e,n){return e.number-n.number}));o=h.slice(0,4),a=h.slice(4);var p=d.shift();return f=Ne(f.concat(d),t()+""),f.unshift(p),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"})(ln||(ln={})),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"}(dn||(dn={}));var hn,pn,gn={name:"Central Europe",cities:[{name:dn.Bialystok,region:ln.Blue,x:543,y:135},{name:dn.Lublin,region:ln.Blue,x:590,y:294},{name:dn.Warszawa,region:ln.Blue,x:482,y:253},{name:dn.Krakow,region:ln.Blue,x:533,y:443},{name:dn.Sosnowiec,region:ln.Blue,x:468,y:443},{name:dn.Katowice,region:ln.Blue,x:446,y:483},{name:dn.Czestochowa,region:ln.Blue,x:419,y:397},{name:dn.Presov,region:ln.Brown,x:619,y:487},{name:dn.Kosice,region:ln.Brown,x:646,y:538},{name:dn.Poprad,region:ln.Brown,x:565,y:529},{name:dn.Zilina,region:ln.Brown,x:476,y:551},{name:dn.Bratislava,region:ln.Brown,x:423,y:693},{name:dn.Trnava,region:ln.Brown,x:452,y:638},{name:dn.Nyiregyhaza,region:ln.Purple,x:698,y:582},{name:dn.Miskolc,region:ln.Purple,x:621,y:597},{name:dn.Szeged,region:ln.Purple,x:680,y:764},{name:dn.Kecskeme,region:ln.Purple,x:630,y:727},{name:dn.Budapest,region:ln.Purple,x:557,y:689},{name:dn.Pecs,region:ln.Purple,x:566,y:832},{name:dn.Gyor,region:ln.Purple,x:489,y:729},{name:dn.Banskabystrica,region:ln.Brown,x:525,y:601},{name:dn.Goansk,region:ln.Red,x:286,y:158},{name:dn.Goynia,region:ln.Red,x:249,y:131},{name:dn.Byogoszcz,region:ln.Red,x:297,y:257},{name:dn.Wroclaw,region:ln.Red,x:321,y:445},{name:dn.Poznan,region:ln.Red,x:261,y:342},{name:dn.Szczecin,region:ln.Red,x:110,y:316},{name:dn.Lodz,region:ln.Red,x:420,y:337},{name:dn.Graz,region:ln.Yellow,x:376,y:811},{name:dn.Klagenfurt,region:ln.Yellow,x:340,y:875},{name:dn.Villach,region:ln.Yellow,x:272,y:875},{name:dn.Innsbruck,region:ln.Yellow,x:140,y:879},{name:dn.Salzburg,region:ln.Yellow,x:209,y:805},{name:dn.Linz,region:ln.Yellow,x:265,y:744},{name:dn.Wien,region:ln.Yellow,x:366,y:701},{name:dn.Hradeckralove,region:ln.Green,x:291,y:546},{name:dn.Brno,region:ln.Green,x:354,y:597},{name:dn.Ceskebudejovice,region:ln.Green,x:248,y:670},{name:dn.Praha,region:ln.Green,x:220,y:593},{name:dn.Ostrava,region:ln.Green,x:413,y:535},{name:dn.Plzen,region:ln.Green,x:158,y:645},{name:dn.Ustinadlaben,region:ln.Green,x:165,y:537}],connections:[{nodes:[dn.Goynia,dn.Goansk],cost:0},{nodes:[dn.Goansk,dn.Byogoszcz],cost:8},{nodes:[dn.Goynia,dn.Szczecin],cost:17},{nodes:[dn.Szczecin,dn.Poznan],cost:14},{nodes:[dn.Szczecin,dn.Wroclaw],cost:22},{nodes:[dn.Wroclaw,dn.Poznan],cost:9},{nodes:[dn.Poznan,dn.Lodz],cost:13},{nodes:[dn.Lodz,dn.Byogoszcz],cost:12},{nodes:[dn.Byogoszcz,dn.Szczecin],cost:15},{nodes:[dn.Wroclaw,dn.Lodz],cost:12},{nodes:[dn.Lodz,dn.Czestochowa],cost:7},{nodes:[dn.Czestochowa,dn.Wroclaw],cost:9},{nodes:[dn.Wroclaw,dn.Ostrava],cost:11},{nodes:[dn.Ostrava,dn.Hradeckralove],cost:16},{nodes:[dn.Hradeckralove,dn.Wroclaw],cost:10},{nodes:[dn.Wroclaw,dn.Ustinadlaben],cost:17},{nodes:[dn.Ustinadlaben,dn.Hradeckralove],cost:10},{nodes:[dn.Hradeckralove,dn.Brno],cost:9},{nodes:[dn.Brno,dn.Ostrava],cost:12},{nodes:[dn.Ostrava,dn.Katowice],cost:4},{nodes:[dn.Czestochowa,dn.Lublin],cost:17},{nodes:[dn.Lublin,dn.Presov],cost:20},{nodes:[dn.Presov,dn.Krakow],cost:13},{nodes:[dn.Krakow,dn.Poprad],cost:11},{nodes:[dn.Poprad,dn.Zilina],cost:11},{nodes:[dn.Zilina,dn.Krakow],cost:12},{nodes:[dn.Krakow,dn.Sosnowiec],cost:4},{nodes:[dn.Warszawa,dn.Bialystok],cost:14},{nodes:[dn.Bialystok,dn.Goansk],cost:20},{nodes:[dn.Byogoszcz,dn.Warszawa],cost:15},{nodes:[dn.Warszawa,dn.Lublin],cost:10},{nodes:[dn.Lodz,dn.Warszawa],cost:7},{nodes:[dn.Bialystok,dn.Lublin],cost:15},{nodes:[dn.Lublin,dn.Krakow],cost:16},{nodes:[dn.Poprad,dn.Kosice],cost:6},{nodes:[dn.Kosice,dn.Nyiregyhaza],cost:8},{nodes:[dn.Kosice,dn.Miskolc],cost:4},{nodes:[dn.Miskolc,dn.Poprad],cost:9},{nodes:[dn.Poprad,dn.Banskabystrica],cost:11},{nodes:[dn.Banskabystrica,dn.Zilina],cost:6},{nodes:[dn.Zilina,dn.Trnava],cost:10},{nodes:[dn.Zilina,dn.Brno],cost:14},{nodes:[dn.Brno,dn.Wien],cost:8},{nodes:[dn.Bratislava,dn.Brno],cost:10},{nodes:[dn.Brno,dn.Trnava],cost:10},{nodes:[dn.Trnava,dn.Banskabystrica],cost:10},{nodes:[dn.Banskabystrica,dn.Miskolc],cost:11},{nodes:[dn.Miskolc,dn.Nyiregyhaza],cost:7},{nodes:[dn.Nyiregyhaza,dn.Szeged],cost:16},{nodes:[dn.Szeged,dn.Kecskeme],cost:5},{nodes:[dn.Budapest,dn.Trnava],cost:9},{nodes:[dn.Trnava,dn.Bratislava],cost:2},{nodes:[dn.Bratislava,dn.Wien],cost:3},{nodes:[dn.Wien,dn.Ceskebudejovice],cost:14},{nodes:[dn.Ceskebudejovice,dn.Praha],cost:10},{nodes:[dn.Praha,dn.Brno],cost:13},{nodes:[dn.Brno,dn.Ceskebudejovice],cost:15},{nodes:[dn.Ceskebudejovice,dn.Plzen],cost:11},{nodes:[dn.Plzen,dn.Praha],cost:7},{nodes:[dn.Praha,dn.Ustinadlaben],cost:6},{nodes:[dn.Ustinadlaben,dn.Plzen],cost:9},{nodes:[dn.Ceskebudejovice,dn.Linz],cost:8},{nodes:[dn.Linz,dn.Wien],cost:11},{nodes:[dn.Wien,dn.Graz],cost:12},{nodes:[dn.Graz,dn.Linz],cost:16},{nodes:[dn.Linz,dn.Salzburg],cost:9},{nodes:[dn.Salzburg,dn.Graz],cost:22},{nodes:[dn.Graz,dn.Gyor],cost:14},{nodes:[dn.Gyor,dn.Wien],cost:8},{nodes:[dn.Bratislava,dn.Gyor],cost:6},{nodes:[dn.Gyor,dn.Trnava],cost:5},{nodes:[dn.Banskabystrica,dn.Budapest],cost:12},{nodes:[dn.Budapest,dn.Gyor],cost:5},{nodes:[dn.Budapest,dn.Kecskeme],cost:6},{nodes:[dn.Kecskeme,dn.Miskolc],cost:10},{nodes:[dn.Miskolc,dn.Budapest],cost:9},{nodes:[dn.Szeged,dn.Pecs],cost:12},{nodes:[dn.Pecs,dn.Kecskeme],cost:11},{nodes:[dn.Budapest,dn.Pecs],cost:12},{nodes:[dn.Pecs,dn.Gyor],cost:15},{nodes:[dn.Graz,dn.Pecs],cost:19},{nodes:[dn.Graz,dn.Klagenfurt],cost:10},{nodes:[dn.Klagenfurt,dn.Villach],cost:4},{nodes:[dn.Klagenfurt,dn.Salzburg],cost:20},{nodes:[dn.Salzburg,dn.Innsbruck],cost:15},{nodes:[dn.Innsbruck,dn.Villach],cost:22},{nodes:[dn.Poznan,dn.Byogoszcz],cost:7},{nodes:[dn.Lublin,dn.Lodz],cost:16},{nodes:[dn.Czestochowa,dn.Sosnowiec],cost:4},{nodes:[dn.Sosnowiec,dn.Katowice],cost:0},{nodes:[dn.Czestochowa,dn.Krakow],cost:6},{nodes:[dn.Poprad,dn.Presov],cost:7},{nodes:[dn.Presov,dn.Kosice],cost:2},{nodes:[dn.Ostrava,dn.Zilina],cost:7},{nodes:[dn.Ostrava,dn.Krakow],cost:7},{nodes:[dn.Praha,dn.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"})(hn||(hn={})),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"}(pn||(pn={}));var yn,mn,vn={name:"China",cities:[{name:pn.Hegang,region:hn.Pink,x:3920,y:290},{name:pn.Qiqhaer,region:hn.Pink,x:3422,y:262},{name:pn.Haerbin,region:hn.Pink,x:3672,y:434},{name:pn.Jilin,region:hn.Pink,x:3744,y:614},{name:pn.Fushun,region:hn.Pink,x:3712,y:784},{name:pn.Anshan,region:hn.Pink,x:3510,y:902},{name:pn.Dalian,region:hn.Pink,x:3424,y:1052},{name:pn.Shanghai,region:hn.Green,x:3462,y:1672},{name:pn.Hangzhou,region:hn.Green,x:3280,y:1824},{name:pn.Nanjing,region:hn.Green,x:3130,y:1632},{name:pn.Qingoad,region:hn.Green,x:3322,y:1316},{name:pn.Jinan,region:hn.Green,x:3002,y:1292},{name:pn.Zhengzhou,region:hn.Green,x:2778,y:1438},{name:pn.Shijiazhuang,region:hn.Green,x:2866,y:1152},{name:pn.Changchun,region:hn.Red,x:3504,y:590},{name:pn.Shenyang,region:hn.Red,x:3458,y:778},{name:pn.Tangshan,region:hn.Red,x:3158,y:908},{name:pn.Tianjin,region:hn.Red,x:3134,y:1016},{name:pn.Beijing,region:hn.Red,x:2886,y:910},{name:pn.Taiyuan,region:hn.Red,x:2588,y:1130},{name:pn.Badtou,region:hn.Red,x:2500,y:862},{name:pn.Fuzhou,region:hn.Brown,x:3290,y:2132},{name:pn.Nanchang,region:hn.Brown,x:3004,y:1974},{name:pn.Chaozhou,region:hn.Brown,x:3096,y:2322},{name:pn.Hongkong,region:hn.Brown,x:2902,y:2552},{name:pn.Guangzhou,region:hn.Brown,x:2694,y:2352},{name:pn.Changsha,region:hn.Brown,x:2682,y:1988},{name:pn.Wuhan,region:hn.Brown,x:2810,y:1786},{name:pn.Hami,region:hn.Purple,x:1816,y:698},{name:pn.Karamay,region:hn.Purple,x:1304,y:372},{name:pn.Wulumuqi,region:hn.Purple,x:1520,y:558},{name:pn.Kuerle,region:hn.Purple,x:1326,y:756},{name:pn.Yinchjan,region:hn.Purple,x:2208,y:1058},{name:pn.Xining,region:hn.Purple,x:1868,y:1226},{name:pn.Lanzhou,region:hn.Purple,x:2142,y:1328},{name:pn.Kunming,region:hn.Yellow,x:1840,y:2248},{name:pn.Chengou,region:hn.Yellow,x:1988,y:1736},{name:pn.Xian,region:hn.Yellow,x:2440,y:1478},{name:pn.Chongqing,region:hn.Yellow,x:2300,y:1880},{name:pn.Nanning,region:hn.Yellow,x:2318,y:2452},{name:pn.Haikou,region:hn.Yellow,x:2524,y:2680},{name:pn.Chiyang,region:hn.Yellow,x:2212,y:2112}],connections:[{nodes:[pn.Kunming,pn.Chengou],cost:16},{nodes:[pn.Nanning,pn.Haikou],cost:10},{nodes:[pn.Guangzhou,pn.Hongkong],cost:4},{nodes:[pn.Guangzhou,pn.Chaozhou],cost:7},{nodes:[pn.Chaozhou,pn.Hongkong],cost:7},{nodes:[pn.Guangzhou,pn.Haikou],cost:13},{nodes:[pn.Nanning,pn.Guangzhou],cost:11},{nodes:[pn.Xining,pn.Chengou],cost:20},{nodes:[pn.Chengou,pn.Chongqing],cost:6},{nodes:[pn.Chongqing,pn.Chiyang],cost:9},{nodes:[pn.Chiyang,pn.Kunming],cost:12},{nodes:[pn.Chiyang,pn.Nanning],cost:12},{nodes:[pn.Chiyang,pn.Guangzhou],cost:18},{nodes:[pn.Guangzhou,pn.Changsha],cost:14},{nodes:[pn.Changsha,pn.Chongqing],cost:16},{nodes:[pn.Changsha,pn.Wuhan],cost:6},{nodes:[pn.Wuhan,pn.Nanchang],cost:6},{nodes:[pn.Nanchang,pn.Changsha],cost:7},{nodes:[pn.Changsha,pn.Chiyang],cost:15},{nodes:[pn.Chiyang,pn.Chengou],cost:13},{nodes:[pn.Guangzhou,pn.Nanchang],cost:16},{nodes:[pn.Nanchang,pn.Chaozhou],cost:14},{nodes:[pn.Chaozhou,pn.Fuzhou],cost:9},{nodes:[pn.Fuzhou,pn.Nanchang],cost:13},{nodes:[pn.Wuhan,pn.Hangzhou],cost:13},{nodes:[pn.Hangzhou,pn.Fuzhou],cost:13},{nodes:[pn.Hangzhou,pn.Shanghai],cost:4},{nodes:[pn.Shanghai,pn.Nanjing],cost:6},{nodes:[pn.Nanjing,pn.Hangzhou],cost:5},{nodes:[pn.Hangzhou,pn.Nanchang],cost:10},{nodes:[pn.Chongqing,pn.Wuhan],cost:18},{nodes:[pn.Lanzhou,pn.Chengou],cost:16},{nodes:[pn.Chengou,pn.Xian],cost:14},{nodes:[pn.Xian,pn.Chongqing],cost:14},{nodes:[pn.Xian,pn.Wuhan],cost:15},{nodes:[pn.Wuhan,pn.Zhengzhou],cost:10},{nodes:[pn.Zhengzhou,pn.Xian],cost:10},{nodes:[pn.Xian,pn.Lanzhou],cost:15},{nodes:[pn.Lanzhou,pn.Yinchjan],cost:9},{nodes:[pn.Yinchjan,pn.Xining],cost:11},{nodes:[pn.Lanzhou,pn.Taiyuan],cost:18},{nodes:[pn.Taiyuan,pn.Xian],cost:12},{nodes:[pn.Taiyuan,pn.Zhengzhou],cost:11},{nodes:[pn.Taiyuan,pn.Shijiazhuang],cost:5},{nodes:[pn.Shijiazhuang,pn.Tianjin],cost:5},{nodes:[pn.Shijiazhuang,pn.Jinan],cost:6},{nodes:[pn.Shijiazhuang,pn.Zhengzhou],cost:9},{nodes:[pn.Zhengzhou,pn.Jinan],cost:7},{nodes:[pn.Zhengzhou,pn.Nanjing],cost:12},{nodes:[pn.Nanjing,pn.Wuhan],cost:10},{nodes:[pn.Jinan,pn.Nanjing],cost:11},{nodes:[pn.Nanjing,pn.Qingoad],cost:12},{nodes:[pn.Qingoad,pn.Jinan],cost:6},{nodes:[pn.Jinan,pn.Tianjin],cost:6},{nodes:[pn.Xining,pn.Lanzhou],cost:6},{nodes:[pn.Yinchjan,pn.Badtou],cost:9},{nodes:[pn.Badtou,pn.Taiyuan],cost:9},{nodes:[pn.Taiyuan,pn.Yinchjan],cost:14},{nodes:[pn.Yinchjan,pn.Hami],cost:25},{nodes:[pn.Hami,pn.Xining],cost:25},{nodes:[pn.Wulumuqi,pn.Kuerle],cost:9},{nodes:[pn.Kuerle,pn.Karamay],cost:12},{nodes:[pn.Karamay,pn.Wulumuqi],cost:7},{nodes:[pn.Wulumuqi,pn.Hami],cost:12},{nodes:[pn.Hami,pn.Kuerle],cost:15},{nodes:[pn.Taiyuan,pn.Beijing],cost:10},{nodes:[pn.Beijing,pn.Shijiazhuang],cost:6},{nodes:[pn.Beijing,pn.Tangshan],cost:3},{nodes:[pn.Tangshan,pn.Tianjin],cost:0},{nodes:[pn.Beijing,pn.Badtou],cost:14},{nodes:[pn.Tangshan,pn.Shenyang],cost:11},{nodes:[pn.Dalian,pn.Anshan],cost:6},{nodes:[pn.Qiqhaer,pn.Hegang],cost:11},{nodes:[pn.Hegang,pn.Haerbin],cost:7},{nodes:[pn.Haerbin,pn.Qiqhaer],cost:6},{nodes:[pn.Changchun,pn.Jilin],cost:5},{nodes:[pn.Jilin,pn.Haerbin],cost:5},{nodes:[pn.Haerbin,pn.Changchun],cost:5},{nodes:[pn.Changchun,pn.Shenyang],cost:5},{nodes:[pn.Shenyang,pn.Anshan],cost:2},{nodes:[pn.Jilin,pn.Fushun],cost:6},{nodes:[pn.Fushun,pn.Shenyang],cost:0},{nodes:[pn.Changchun,pn.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"])($e),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=Ne(a.filter((function(e){return e.number>=31&&e.number<=35})).concat(s),t()+""),u=Ne(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"})(yn||(yn={})),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"}(mn||(mn={}));var bn,wn,xn={name:"Europe",cities:[{name:mn.Glasgow,region:yn.Pink,x:490,y:510},{name:mn.Dublin,region:yn.Pink,x:390,y:660},{name:mn.Birmingham,region:yn.Pink,x:485,y:695},{name:mn.London,region:yn.Pink,x:545,y:800},{name:mn.Randstad,region:yn.Pink,x:786,y:594},{name:mn.Vlaanderen,region:yn.Pink,x:794,y:756},{name:mn.RheinRuhr,region:yn.Pink,x:820,y:884},{name:mn.Paris,region:yn.Red,x:632,y:926},{name:mn.Bordeaux,region:yn.Red,x:655,y:1095},{name:mn.Lyon,region:yn.Red,x:785,y:1100},{name:mn.Marseille,region:yn.Red,x:815,y:1240},{name:mn.Barcelona,region:yn.Red,x:650,y:1280},{name:mn.Madrid,region:yn.Red,x:435,y:1335},{name:mn.Lisboa,region:yn.Red,x:255,y:1335},{name:mn.Bremen,region:yn.Brown,x:1010,y:770},{name:mn.Berlin,region:yn.Brown,x:1180,y:800},{name:mn.RheinMain,region:yn.Brown,x:982,y:898},{name:mn.Stuttgart,region:yn.Brown,x:995,y:1e3},{name:mn.München,region:yn.Brown,x:1114,y:1020},{name:mn.Praha,region:yn.Brown,x:1235,y:940},{name:mn.Katowice,region:yn.Brown,x:1380,y:940},{name:mn.Zürich,region:yn.Yellow,x:1010,y:1100},{name:mn.Milano,region:yn.Yellow,x:1075,y:1180},{name:mn.Roma,region:yn.Yellow,x:1180,y:1310},{name:mn.Napoli,region:yn.Yellow,x:1235,y:1430},{name:mn.Wien,region:yn.Yellow,x:1265,y:1080},{name:mn.Budapest,region:yn.Yellow,x:1390,y:1080},{name:mn.Zagreb,region:yn.Yellow,x:1300,y:1180},{name:mn.Oslo,region:yn.Orange,x:1015,y:365},{name:mn.Stockholm,region:yn.Orange,x:1170,y:415},{name:mn.Helsinki,region:yn.Orange,x:1395,y:360},{name:mn.Tallinn,region:yn.Orange,x:1410,y:470},{name:mn.Riga,region:yn.Orange,x:1395,y:575},{name:mn.Kobenhavn,region:yn.Orange,x:1180,y:660},{name:mn.StPetersburg,region:yn.Orange,x:1620,y:460},{name:mn.Warszawa,region:yn.Blue,x:1500,y:815},{name:mn.Minsk,region:yn.Blue,x:1610,y:815},{name:mn.Moskwa,region:yn.Blue,x:1830,y:600},{name:mn.Kyjiv,region:yn.Blue,x:1690,y:980},{name:mn.Kharkiv,region:yn.Blue,x:1860,y:980},{name:mn.Odessa,region:yn.Blue,x:1720,y:1100},{name:mn.Bucuresti,region:yn.Blue,x:1610,y:1175},{name:mn.Beograd,region:yn.Green,x:1390,y:1175},{name:mn.Sofia,region:yn.Green,x:1505,y:1240},{name:mn.Tirana,region:yn.Green,x:1370,y:1330},{name:mn.Athina,region:yn.Green,x:1480,y:1450},{name:mn.Istanbul,region:yn.Green,x:1665,y:1335},{name:mn.Izmir,region:yn.Green,x:1730,y:1430},{name:mn.Ankara,region:yn.Green,x:1850,y:1380}],connections:[{nodes:[mn.Dublin,mn.Glasgow],cost:17},{nodes:[mn.Glasgow,mn.Birmingham],cost:13},{nodes:[mn.Dublin,mn.Birmingham],cost:15},{nodes:[mn.Birmingham,mn.London],cost:4},{nodes:[mn.London,mn.Vlaanderen],cost:15},{nodes:[mn.London,mn.Randstad],cost:18},{nodes:[mn.Randstad,mn.Vlaanderen],cost:4},{nodes:[mn.Vlaanderen,mn.RheinRuhr],cost:4},{nodes:[mn.Paris,mn.Bordeaux],cost:12},{nodes:[mn.Paris,mn.Lyon],cost:11},{nodes:[mn.Bordeaux,mn.Lyon],cost:12},{nodes:[mn.Lyon,mn.Marseille],cost:8},{nodes:[mn.Bordeaux,mn.Marseille],cost:12},{nodes:[mn.Marseille,mn.Barcelona],cost:11},{nodes:[mn.Bordeaux,mn.Barcelona],cost:15},{nodes:[mn.Bordeaux,mn.Madrid],cost:15},{nodes:[mn.Madrid,mn.Barcelona],cost:14},{nodes:[mn.Madrid,mn.Lisboa],cost:13},{nodes:[mn.Paris,mn.London],cost:16},{nodes:[mn.Paris,mn.Vlaanderen],cost:7},{nodes:[mn.Paris,mn.RheinRuhr],cost:10},{nodes:[mn.Bremen,mn.Berlin],cost:6},{nodes:[mn.Bremen,mn.RheinMain],cost:9},{nodes:[mn.Berlin,mn.RheinMain],cost:10},{nodes:[mn.Berlin,mn.Praha],cost:7},{nodes:[mn.RheinMain,mn.Praha],cost:10},{nodes:[mn.RheinMain,mn.München],cost:6},{nodes:[mn.RheinMain,mn.Stuttgart],cost:3},{nodes:[mn.Stuttgart,mn.München],cost:5},{nodes:[mn.München,mn.Praha],cost:6},{nodes:[mn.Praha,mn.Katowice],cost:8},{nodes:[mn.Bremen,mn.Randstad],cost:8},{nodes:[mn.Bremen,mn.Vlaanderen],cost:10},{nodes:[mn.RheinMain,mn.Vlaanderen],cost:6},{nodes:[mn.RheinMain,mn.RheinRuhr],cost:3},{nodes:[mn.Stuttgart,mn.Paris],cost:14},{nodes:[mn.Zürich,mn.Milano],cost:11},{nodes:[mn.Milano,mn.Zagreb],cost:17},{nodes:[mn.Milano,mn.Roma],cost:19},{nodes:[mn.Roma,mn.Napoli],cost:7},{nodes:[mn.Wien,mn.Budapest],cost:5},{nodes:[mn.Wien,mn.Zagreb],cost:8},{nodes:[mn.Budapest,mn.Zagreb],cost:7},{nodes:[mn.Paris,mn.Zürich],cost:14},{nodes:[mn.Lyon,mn.Zürich],cost:14},{nodes:[mn.Lyon,mn.Milano],cost:11},{nodes:[mn.Marseille,mn.Milano],cost:13},{nodes:[mn.Zürich,mn.München],cost:8},{nodes:[mn.Zürich,mn.Stuttgart],cost:5},{nodes:[mn.München,mn.Wien],cost:9},{nodes:[mn.Praha,mn.Wien],cost:7},{nodes:[mn.Wien,mn.Katowice],cost:8},{nodes:[mn.Budapest,mn.Katowice],cost:11},{nodes:[mn.Oslo,mn.Kobenhavn],cost:17},{nodes:[mn.Oslo,mn.Stockholm],cost:13},{nodes:[mn.Stockholm,mn.Kobenhavn],cost:18},{nodes:[mn.Stockholm,mn.Helsinki],cost:21},{nodes:[mn.Helsinki,mn.StPetersburg],cost:11},{nodes:[mn.Tallinn,mn.StPetersburg],cost:9},{nodes:[mn.Tallinn,mn.Riga],cost:7},{nodes:[mn.Riga,mn.StPetersburg],cost:13},{nodes:[mn.Kobenhavn,mn.Bremen],cost:12},{nodes:[mn.Kobenhavn,mn.Berlin],cost:15},{nodes:[mn.Warszawa,mn.Minsk],cost:10},{nodes:[mn.Warszawa,mn.Kyjiv],cost:14},{nodes:[mn.Minsk,mn.Moskwa],cost:14},{nodes:[mn.Minsk,mn.Kyjiv],cost:10},{nodes:[mn.Moskwa,mn.Kharkiv],cost:16},{nodes:[mn.Kyjiv,mn.Kharkiv],cost:9},{nodes:[mn.Kyjiv,mn.Odessa],cost:9},{nodes:[mn.Kharkiv,mn.Odessa],cost:13},{nodes:[mn.Odessa,mn.Bucuresti],cost:10},{nodes:[mn.Berlin,mn.Warszawa],cost:11},{nodes:[mn.Praha,mn.Warszawa],cost:11},{nodes:[mn.Katowice,mn.Warszawa],cost:5},{nodes:[mn.Kobenhavn,mn.Warszawa],cost:25},{nodes:[mn.Riga,mn.Warszawa],cost:12},{nodes:[mn.Riga,mn.Minsk],cost:8},{nodes:[mn.Riga,mn.Moskwa],cost:18},{nodes:[mn.StPetersburg,mn.Moskwa],cost:14},{nodes:[mn.Kyjiv,mn.Budapest],cost:21},{nodes:[mn.Odessa,mn.Budapest],cost:25},{nodes:[mn.Bucuresti,mn.Budapest],cost:16},{nodes:[mn.Beograd,mn.Sofia],cost:11},{nodes:[mn.Beograd,mn.Tirana],cost:15},{nodes:[mn.Sofia,mn.Tirana],cost:13},{nodes:[mn.Sofia,mn.Athina],cost:17},{nodes:[mn.Sofia,mn.Istanbul],cost:13},{nodes:[mn.Tirana,mn.Athina],cost:16},{nodes:[mn.Istanbul,mn.Izmir],cost:8},{nodes:[mn.Istanbul,mn.Ankara],cost:9},{nodes:[mn.Izmir,mn.Ankara],cost:10},{nodes:[mn.Bucuresti,mn.Beograd],cost:12},{nodes:[mn.Bucuresti,mn.Sofia],cost:9},{nodes:[mn.Bucuresti,mn.Istanbul],cost:13},{nodes:[mn.Beograd,mn.Zagreb],cost:9},{nodes:[mn.Beograd,mn.Napoli],cost:18},{nodes:[mn.Beograd,mn.Budapest],cost:10},{nodes:[mn.Tirana,mn.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"])($e),o=r.findIndex((function(e){return e.type===ve.Step3})),a=r.splice(o,1)[0],i=Ne(r.splice(0,13),t()+""),s=Ne(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 h=Math.max(0,d-i.length),p=i.slice(d),g=s.slice(f+h),y=Ne(p.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"})(bn||(bn={})),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"}(wn||(wn={}));var kn,Pn,Mn={name:"France",cities:[{name:wn.Calais,region:bn.Brown,x:661,y:294},{name:wn.Lile,region:bn.Brown,x:791,y:328},{name:wn.Amiens,region:bn.Brown,x:700,y:433},{name:wn.Reims,region:bn.Brown,x:888,y:531},{name:wn.Metz,region:bn.Brown,x:1076,y:528},{name:wn.Nancy,region:bn.Brown,x:1078,y:643},{name:wn.Strasbourg,region:bn.Brown,x:1208,y:615},{name:wn.Havre,region:bn.Purple,x:487,y:471},{name:wn.Caen,region:bn.Purple,x:423,y:567},{name:wn.Brest,region:bn.Purple,x:79,y:654},{name:wn.Rennes,region:bn.Purple,x:326,y:695},{name:wn.Lemans,region:bn.Purple,x:516,y:699},{name:wn.Angers,region:bn.Purple,x:446,y:798},{name:wn.Rouen,region:bn.Purple,x:598,y:506},{name:wn.Paris1,region:bn.Blue,x:693,y:553},{name:wn.Paris2,region:bn.Blue,x:779,y:566},{name:wn.Paris3,region:bn.Blue,x:722,y:633},{name:wn.Orleans,region:bn.Blue,x:684,y:736},{name:wn.Tours,region:bn.Blue,x:564,y:813},{name:wn.Limoges,region:bn.Blue,x:605,y:1009},{name:wn.Clermontferrand,region:bn.Blue,x:777,y:1017},{name:wn.Besancon,region:bn.Yellow,x:1084,y:828},{name:wn.Dijon,region:bn.Yellow,x:964,y:801},{name:wn.Lyon,region:bn.Yellow,x:964,y:973},{name:wn.Chamonix,region:bn.Yellow,x:1153,y:987},{name:wn.Mulhouse,region:bn.Yellow,x:1180,y:742},{name:wn.Grenoble,region:bn.Yellow,x:1048,y:1116},{name:wn.Saintetienne,region:bn.Yellow,x:892,y:1088},{name:wn.Nice,region:bn.Green,x:1178,y:1302},{name:wn.Toulon,region:bn.Green,x:1070,y:1397},{name:wn.Aimenprovence,region:bn.Green,x:1016,y:1304},{name:wn.Marseille,region:bn.Green,x:954,y:1369},{name:wn.Nimes,region:bn.Green,x:889,y:1256},{name:wn.Montpellier,region:bn.Green,x:816,y:1330},{name:wn.Perpignan,region:bn.Green,x:767,y:1460},{name:wn.Nantes,region:bn.Red,x:330,y:833},{name:wn.Larochelle,region:bn.Red,x:379,y:959},{name:wn.Bordeaux,region:bn.Red,x:435,y:1148},{name:wn.Biarritz,region:bn.Red,x:345,y:1328},{name:wn.Toulous,region:bn.Red,x:621,y:1309},{name:wn.Carcassone,region:bn.Red,x:700,y:1382},{name:wn.Lourdes,region:bn.Red,x:479,y:1393}],connections:[{nodes:[wn.Calais,wn.Havre],cost:13},{nodes:[wn.Calais,wn.Lile],cost:7},{nodes:[wn.Calais,wn.Amiens],cost:8},{nodes:[wn.Lile,wn.Reims],cost:9},{nodes:[wn.Havre,wn.Rouen],cost:5},{nodes:[wn.Havre,wn.Caen],cost:5},{nodes:[wn.Caen,wn.Rennes],cost:12},{nodes:[wn.Rennes,wn.Brest],cost:16},{nodes:[wn.Brest,wn.Nantes],cost:19},{nodes:[wn.Rennes,wn.Nantes],cost:7},{nodes:[wn.Rennes,wn.Angers],cost:7},{nodes:[wn.Rennes,wn.Lemans],cost:9},{nodes:[wn.Caen,wn.Lemans],cost:10},{nodes:[wn.Lemans,wn.Paris3],cost:10},{nodes:[wn.Paris3,wn.Caen],cost:12},{nodes:[wn.Caen,wn.Rouen],cost:9},{nodes:[wn.Rouen,wn.Paris1],cost:9},{nodes:[wn.Rouen,wn.Amiens],cost:6},{nodes:[wn.Lile,wn.Amiens],cost:7},{nodes:[wn.Amiens,wn.Reims],cost:11},{nodes:[wn.Reims,wn.Metz],cost:12},{nodes:[wn.Metz,wn.Strasbourg],cost:11},{nodes:[wn.Strasbourg,wn.Nancy],cost:10},{nodes:[wn.Strasbourg,wn.Mulhouse],cost:6},{nodes:[wn.Mulhouse,wn.Besancon],cost:8},{nodes:[wn.Besancon,wn.Nancy],cost:14},{nodes:[wn.Nancy,wn.Dijon],cost:15},{nodes:[wn.Reims,wn.Nancy],cost:13},{nodes:[wn.Nancy,wn.Paris2],cost:21},{nodes:[wn.Paris1,wn.Paris2],cost:0},{nodes:[wn.Paris1,wn.Paris3],cost:0},{nodes:[wn.Paris2,wn.Dijon],cost:20},{nodes:[wn.Dijon,wn.Orleans],cost:18},{nodes:[wn.Orleans,wn.Lemans],cost:8},{nodes:[wn.Lemans,wn.Tours],cost:5},{nodes:[wn.Tours,wn.Orleans],cost:7},{nodes:[wn.Paris1,wn.Amiens],cost:9},{nodes:[wn.Dijon,wn.Clermontferrand],cost:19},{nodes:[wn.Clermontferrand,wn.Limoges],cost:12},{nodes:[wn.Limoges,wn.Toulous],cost:19},{nodes:[wn.Toulous,wn.Clermontferrand],cost:24},{nodes:[wn.Clermontferrand,wn.Montpellier],cost:22},{nodes:[wn.Montpellier,wn.Nimes],cost:3},{nodes:[wn.Saintetienne,wn.Grenoble],cost:10},{nodes:[wn.Grenoble,wn.Chamonix],cost:12},{nodes:[wn.Chamonix,wn.Besancon],cost:19},{nodes:[wn.Besancon,wn.Dijon],cost:6},{nodes:[wn.Dijon,wn.Lyon],cost:13},{nodes:[wn.Lyon,wn.Clermontferrand],cost:11},{nodes:[wn.Saintetienne,wn.Montpellier],cost:18},{nodes:[wn.Saintetienne,wn.Nimes],cost:16},{nodes:[wn.Nimes,wn.Aimenprovence],cost:8},{nodes:[wn.Aimenprovence,wn.Nice],cost:8},{nodes:[wn.Nice,wn.Toulon],cost:7},{nodes:[wn.Toulon,wn.Marseille],cost:3},{nodes:[wn.Marseille,wn.Aimenprovence],cost:0},{nodes:[wn.Nice,wn.Grenoble],cost:19},{nodes:[wn.Grenoble,wn.Aimenprovence],cost:17},{nodes:[wn.Grenoble,wn.Nimes],cost:18},{nodes:[wn.Montpellier,wn.Toulous],cost:14},{nodes:[wn.Toulous,wn.Bordeaux],cost:14},{nodes:[wn.Bordeaux,wn.Limoges],cost:13},{nodes:[wn.Limoges,wn.Tours],cost:13},{nodes:[wn.Tours,wn.Larochelle],cost:13},{nodes:[wn.Larochelle,wn.Angers],cost:12},{nodes:[wn.Angers,wn.Lemans],cost:5},{nodes:[wn.Angers,wn.Nantes],cost:5},{nodes:[wn.Nantes,wn.Larochelle],cost:9},{nodes:[wn.Larochelle,wn.Bordeaux],cost:13},{nodes:[wn.Bordeaux,wn.Biarritz],cost:12},{nodes:[wn.Bordeaux,wn.Lourdes],cost:14},{nodes:[wn.Lourdes,wn.Biarritz],cost:9},{nodes:[wn.Lourdes,wn.Toulous],cost:10},{nodes:[wn.Lourdes,wn.Carcassone],cost:15},{nodes:[wn.Lourdes,wn.Perpignan],cost:20},{nodes:[wn.Perpignan,wn.Carcassone],cost:6},{nodes:[wn.Carcassone,wn.Toulous],cost:6},{nodes:[wn.Carcassone,wn.Montpellier],cost:9},{nodes:[wn.Montpellier,wn.Perpignan],cost:11},{nodes:[wn.Orleans,wn.Limoges],cost:19},{nodes:[wn.Orleans,wn.Clermontferrand],cost:18},{nodes:[wn.Paris3,wn.Orleans],cost:7},{nodes:[wn.Angers,wn.Tours],cost:6},{nodes:[wn.Larochelle,wn.Limoges],cost:13},{nodes:[wn.Nancy,wn.Metz],cost:3},{nodes:[wn.Nancy,wn.Mulhouse],cost:12},{nodes:[wn.Besancon,wn.Lyon],cost:16},{nodes:[wn.Lyon,wn.Grenoble],cost:7},{nodes:[wn.Lyon,wn.Chamonix],cost:13},{nodes:[wn.Lyon,wn.Saintetienne],cost:6},{nodes:[wn.Saintetienne,wn.Clermontferrand],cost:10},{nodes:[wn.Paris2,wn.Reims],cost:9},{nodes:[wn.Paris3,wn.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"])($e);if("original"==n){a=a.slice(8);var i=a.splice(0,1)[0];a.splice(1,1)[0];var s=a.pop();a=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{a.splice(10,1)[0];var c=a.splice(8,1)[0],u=Ne(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=Ne(a,t()+""),2==e?a=Ne(a.slice(6).concat(u),t()+""):3==e?(u=u.slice(1),a=Ne(a.slice(6).concat(u),t()+"")):a=Ne(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"})(kn||(kn={})),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"}(Pn||(Pn={}));var _n,Sn,Cn={name:"Germany",cities:[{name:Pn.Flensburg,region:kn.Green,x:37,y:427},{name:Pn.Kiel,region:kn.Green,x:106,y:392},{name:Pn.Hamburg,region:kn.Green,x:212,y:396},{name:Pn.Hannover,region:kn.Green,x:378,y:395},{name:Pn.Bremen,region:kn.Green,x:276,y:463},{name:Pn.Wilhelmshaven,region:kn.Green,x:211,y:521},{name:Pn.Cuxhaven,region:kn.Green,x:168,y:474},{name:Pn.Lubeck,region:kn.Brown,x:153,y:341},{name:Pn.Rostock,region:kn.Brown,x:128,y:256},{name:Pn.Schwerin,region:kn.Brown,x:217,y:297},{name:Pn.Torgelow,region:kn.Brown,x:210,y:126},{name:Pn.Magdeburg,region:kn.Brown,x:389,y:271},{name:Pn.Berlin,region:kn.Brown,x:355,y:170},{name:Pn.FrankfurtO,region:kn.Brown,x:381,y:99},{name:Pn.Halle,region:kn.Yellow,x:493,y:259},{name:Pn.Leipzig,region:kn.Yellow,x:526,y:222},{name:Pn.Dresden,region:kn.Yellow,x:572,y:126},{name:Pn.Erfurt,region:kn.Yellow,x:567,y:309},{name:Pn.Fulda,region:kn.Yellow,x:628,y:398},{name:Pn.Würzburg,region:kn.Yellow,x:735,y:386},{name:Pn.Nurnberg,region:kn.Yellow,x:780,y:309},{name:Pn.Osnabrück,region:kn.Red,x:359,y:516},{name:Pn.Münster,region:kn.Red,x:427,y:554},{name:Pn.Essen,region:kn.Red,x:475,y:603},{name:Pn.Duisburg,region:kn.Red,x:456,y:645},{name:Pn.Dortmund,region:kn.Red,x:505,y:543},{name:Pn.Dusseldorf,region:kn.Red,x:537,y:635},{name:Pn.Kassel,region:kn.Red,x:524,y:430},{name:Pn.Aachen,region:kn.Cyan,x:614,y:654},{name:Pn.Köln,region:kn.Cyan,x:590,y:589},{name:Pn.Trier,region:kn.Cyan,x:739,y:628},{name:Pn.Wiesbaden,region:kn.Cyan,x:697,y:514},{name:Pn.FrankfurtM,region:kn.Cyan,x:672,y:473},{name:Pn.Saarbrücken,region:kn.Cyan,x:818,y:568},{name:Pn.Mannheim,region:kn.Cyan,x:796,y:479},{name:Pn.Freiburg,region:kn.Purple,x:966,y:537},{name:Pn.Stuttgart,region:kn.Purple,x:884,y:458},{name:Pn.Konstanz,region:kn.Purple,x:1011,y:459},{name:Pn.Augsburg,region:kn.Purple,x:911,y:346},{name:Pn.Regensburg,region:kn.Purple,x:846,y:256},{name:Pn.München,region:kn.Purple,x:967,y:278},{name:Pn.Passau,region:kn.Purple,x:904,y:153}],connections:[{nodes:[Pn.Flensburg,Pn.Kiel],cost:4},{nodes:[Pn.Kiel,Pn.Hamburg],cost:8},{nodes:[Pn.Kiel,Pn.Lubeck],cost:4},{nodes:[Pn.Hamburg,Pn.Hannover],cost:17},{nodes:[Pn.Hamburg,Pn.Bremen],cost:11},{nodes:[Pn.Hamburg,Pn.Cuxhaven],cost:11},{nodes:[Pn.Hamburg,Pn.Lubeck],cost:6},{nodes:[Pn.Hamburg,Pn.Schwerin],cost:8},{nodes:[Pn.Bremen,Pn.Wilhelmshaven],cost:11},{nodes:[Pn.Bremen,Pn.Hannover],cost:10},{nodes:[Pn.Bremen,Pn.Cuxhaven],cost:8},{nodes:[Pn.Bremen,Pn.Osnabrück],cost:11},{nodes:[Pn.Hannover,Pn.Schwerin],cost:19},{nodes:[Pn.Hannover,Pn.Magdeburg],cost:15},{nodes:[Pn.Hannover,Pn.Erfurt],cost:19},{nodes:[Pn.Hannover,Pn.Osnabrück],cost:16},{nodes:[Pn.Hannover,Pn.Kassel],cost:15},{nodes:[Pn.Wilhelmshaven,Pn.Osnabrück],cost:14},{nodes:[Pn.Lubeck,Pn.Schwerin],cost:6},{nodes:[Pn.Schwerin,Pn.Rostock],cost:6},{nodes:[Pn.Schwerin,Pn.Torgelow],cost:19},{nodes:[Pn.Schwerin,Pn.Berlin],cost:18},{nodes:[Pn.Schwerin,Pn.Magdeburg],cost:16},{nodes:[Pn.Torgelow,Pn.Rostock],cost:19},{nodes:[Pn.Torgelow,Pn.Berlin],cost:15},{nodes:[Pn.Berlin,Pn.Magdeburg],cost:10},{nodes:[Pn.Berlin,Pn.FrankfurtO],cost:6},{nodes:[Pn.Berlin,Pn.Halle],cost:17},{nodes:[Pn.Magdeburg,Pn.Halle],cost:11},{nodes:[Pn.FrankfurtO,Pn.Leipzig],cost:21},{nodes:[Pn.FrankfurtO,Pn.Dresden],cost:16},{nodes:[Pn.Halle,Pn.Leipzig],cost:0},{nodes:[Pn.Leipzig,Pn.Dresden],cost:13},{nodes:[Pn.Erfurt,Pn.Halle],cost:6},{nodes:[Pn.Erfurt,Pn.Dresden],cost:19},{nodes:[Pn.Erfurt,Pn.Nurnberg],cost:21},{nodes:[Pn.Erfurt,Pn.Fulda],cost:13},{nodes:[Pn.Erfurt,Pn.Kassel],cost:15},{nodes:[Pn.Fulda,Pn.Würzburg],cost:11},{nodes:[Pn.Fulda,Pn.Kassel],cost:8},{nodes:[Pn.Fulda,Pn.FrankfurtM],cost:8},{nodes:[Pn.Würzburg,Pn.Nurnberg],cost:8},{nodes:[Pn.Würzburg,Pn.FrankfurtM],cost:13},{nodes:[Pn.Würzburg,Pn.Mannheim],cost:10},{nodes:[Pn.Würzburg,Pn.Stuttgart],cost:12},{nodes:[Pn.Würzburg,Pn.Augsburg],cost:19},{nodes:[Pn.Nurnberg,Pn.Augsburg],cost:18},{nodes:[Pn.Nurnberg,Pn.Regensburg],cost:12},{nodes:[Pn.Osnabrück,Pn.Münster],cost:7},{nodes:[Pn.Osnabrück,Pn.Kassel],cost:20},{nodes:[Pn.Münster,Pn.Essen],cost:6},{nodes:[Pn.Münster,Pn.Dortmund],cost:2},{nodes:[Pn.Essen,Pn.Duisburg],cost:0},{nodes:[Pn.Essen,Pn.Dusseldorf],cost:2},{nodes:[Pn.Essen,Pn.Dortmund],cost:4},{nodes:[Pn.Dortmund,Pn.Kassel],cost:18},{nodes:[Pn.Dortmund,Pn.Köln],cost:10},{nodes:[Pn.Dortmund,Pn.FrankfurtM],cost:20},{nodes:[Pn.Kassel,Pn.FrankfurtM],cost:13},{nodes:[Pn.Dusseldorf,Pn.Aachen],cost:9},{nodes:[Pn.Dusseldorf,Pn.Köln],cost:4},{nodes:[Pn.Aachen,Pn.Köln],cost:7},{nodes:[Pn.Aachen,Pn.Trier],cost:19},{nodes:[Pn.Trier,Pn.Köln],cost:20},{nodes:[Pn.Trier,Pn.Wiesbaden],cost:18},{nodes:[Pn.Trier,Pn.Saarbrücken],cost:11},{nodes:[Pn.Wiesbaden,Pn.FrankfurtM],cost:0},{nodes:[Pn.Wiesbaden,Pn.Köln],cost:21},{nodes:[Pn.Wiesbaden,Pn.Saarbrücken],cost:10},{nodes:[Pn.Wiesbaden,Pn.Mannheim],cost:11},{nodes:[Pn.Mannheim,Pn.Saarbrücken],cost:11},{nodes:[Pn.Mannheim,Pn.Stuttgart],cost:6},{nodes:[Pn.Stuttgart,Pn.Saarbrücken],cost:17},{nodes:[Pn.Stuttgart,Pn.Freiburg],cost:16},{nodes:[Pn.Stuttgart,Pn.Konstanz],cost:16},{nodes:[Pn.Stuttgart,Pn.Augsburg],cost:15},{nodes:[Pn.Konstanz,Pn.Freiburg],cost:14},{nodes:[Pn.Konstanz,Pn.Augsburg],cost:17},{nodes:[Pn.Regensburg,Pn.Augsburg],cost:13},{nodes:[Pn.Regensburg,Pn.München],cost:10},{nodes:[Pn.Regensburg,Pn.Passau],cost:12},{nodes:[Pn.Augsburg,Pn.München],cost:6},{nodes:[Pn.Passau,Pn.München],cost:14}],layout:"Landscape",mapPosition:[20,20]},Bn={name:"Germany",cities:[{name:Pn.Flensburg,region:kn.Green,x:37,y:427},{name:Pn.Kiel,region:kn.Green,x:106,y:392},{name:Pn.Hamburg,region:kn.Green,x:212,y:396},{name:Pn.Hannover,region:kn.Green,x:378,y:395},{name:Pn.Bremen,region:kn.Green,x:276,y:463},{name:Pn.Wilhelmshaven,region:kn.Green,x:211,y:521},{name:Pn.Cuxhaven,region:kn.Green,x:168,y:474},{name:Pn.Lubeck,region:kn.Brown,x:153,y:341},{name:Pn.Rostock,region:kn.Brown,x:128,y:256},{name:Pn.Schwerin,region:kn.Brown,x:217,y:297},{name:Pn.Stralsund,region:kn.Brown,x:210,y:126},{name:Pn.Magdeburg,region:kn.Brown,x:389,y:271},{name:Pn.Berlin,region:kn.Brown,x:355,y:170},{name:Pn.FrankfurtO,region:kn.Brown,x:381,y:99},{name:Pn.Halle,region:kn.Yellow,x:493,y:259},{name:Pn.Leipzig,region:kn.Yellow,x:526,y:222},{name:Pn.Dresden,region:kn.Yellow,x:572,y:126},{name:Pn.Erfurt,region:kn.Yellow,x:567,y:309},{name:Pn.Fulda,region:kn.Yellow,x:628,y:398},{name:Pn.Würzburg,region:kn.Yellow,x:735,y:386},{name:Pn.Nurnberg,region:kn.Yellow,x:780,y:309},{name:Pn.Osnabrück,region:kn.Red,x:359,y:516},{name:Pn.Münster,region:kn.Red,x:427,y:554},{name:Pn.Essen,region:kn.Red,x:475,y:603},{name:Pn.Duisburg,region:kn.Red,x:456,y:645},{name:Pn.Dortmund,region:kn.Red,x:505,y:543},{name:Pn.Dusseldorf,region:kn.Red,x:537,y:635},{name:Pn.Kassel,region:kn.Red,x:524,y:430},{name:Pn.Aachen,region:kn.Cyan,x:614,y:654},{name:Pn.Köln,region:kn.Cyan,x:590,y:589},{name:Pn.Trier,region:kn.Cyan,x:739,y:628},{name:Pn.Mainz,region:kn.Cyan,x:697,y:514},{name:Pn.FrankfurtM,region:kn.Cyan,x:672,y:473},{name:Pn.Saarbrücken,region:kn.Cyan,x:818,y:568},{name:Pn.Mannheim,region:kn.Cyan,x:796,y:479},{name:Pn.Freiburg,region:kn.Purple,x:966,y:537},{name:Pn.Stuttgart,region:kn.Purple,x:884,y:458},{name:Pn.Konstanz,region:kn.Purple,x:1011,y:459},{name:Pn.Augsburg,region:kn.Purple,x:911,y:346},{name:Pn.Regensburg,region:kn.Purple,x:846,y:256},{name:Pn.München,region:kn.Purple,x:967,y:278},{name:Pn.Passau,region:kn.Purple,x:904,y:153}],connections:[{nodes:[Pn.Flensburg,Pn.Kiel],cost:4},{nodes:[Pn.Kiel,Pn.Hamburg],cost:8},{nodes:[Pn.Kiel,Pn.Lubeck],cost:4},{nodes:[Pn.Hamburg,Pn.Hannover],cost:17},{nodes:[Pn.Hamburg,Pn.Bremen],cost:11},{nodes:[Pn.Hamburg,Pn.Cuxhaven],cost:11},{nodes:[Pn.Hamburg,Pn.Lubeck],cost:6},{nodes:[Pn.Hamburg,Pn.Schwerin],cost:8},{nodes:[Pn.Bremen,Pn.Wilhelmshaven],cost:11},{nodes:[Pn.Bremen,Pn.Hannover],cost:10},{nodes:[Pn.Bremen,Pn.Cuxhaven],cost:8},{nodes:[Pn.Bremen,Pn.Osnabrück],cost:11},{nodes:[Pn.Hannover,Pn.Schwerin],cost:19},{nodes:[Pn.Hannover,Pn.Magdeburg],cost:15},{nodes:[Pn.Hannover,Pn.Erfurt],cost:19},{nodes:[Pn.Hannover,Pn.Osnabrück],cost:16},{nodes:[Pn.Hannover,Pn.Kassel],cost:15},{nodes:[Pn.Wilhelmshaven,Pn.Osnabrück],cost:14},{nodes:[Pn.Lubeck,Pn.Schwerin],cost:6},{nodes:[Pn.Schwerin,Pn.Rostock],cost:6},{nodes:[Pn.Schwerin,Pn.Stralsund],cost:19},{nodes:[Pn.Schwerin,Pn.Berlin],cost:18},{nodes:[Pn.Schwerin,Pn.Magdeburg],cost:16},{nodes:[Pn.Stralsund,Pn.Rostock],cost:19},{nodes:[Pn.Stralsund,Pn.Berlin],cost:15},{nodes:[Pn.Berlin,Pn.Magdeburg],cost:10},{nodes:[Pn.Berlin,Pn.FrankfurtO],cost:6},{nodes:[Pn.Berlin,Pn.Halle],cost:17},{nodes:[Pn.Magdeburg,Pn.Halle],cost:11},{nodes:[Pn.FrankfurtO,Pn.Leipzig],cost:21},{nodes:[Pn.FrankfurtO,Pn.Dresden],cost:16},{nodes:[Pn.Halle,Pn.Leipzig],cost:0},{nodes:[Pn.Leipzig,Pn.Dresden],cost:13},{nodes:[Pn.Erfurt,Pn.Halle],cost:6},{nodes:[Pn.Erfurt,Pn.Dresden],cost:19},{nodes:[Pn.Erfurt,Pn.Nurnberg],cost:21},{nodes:[Pn.Erfurt,Pn.Fulda],cost:13},{nodes:[Pn.Erfurt,Pn.Kassel],cost:15},{nodes:[Pn.Fulda,Pn.Würzburg],cost:11},{nodes:[Pn.Fulda,Pn.Kassel],cost:8},{nodes:[Pn.Fulda,Pn.FrankfurtM],cost:8},{nodes:[Pn.Würzburg,Pn.Nurnberg],cost:8},{nodes:[Pn.Würzburg,Pn.FrankfurtM],cost:13},{nodes:[Pn.Würzburg,Pn.Mannheim],cost:10},{nodes:[Pn.Würzburg,Pn.Stuttgart],cost:12},{nodes:[Pn.Würzburg,Pn.Augsburg],cost:19},{nodes:[Pn.Nurnberg,Pn.Augsburg],cost:18},{nodes:[Pn.Nurnberg,Pn.Regensburg],cost:12},{nodes:[Pn.Osnabrück,Pn.Münster],cost:7},{nodes:[Pn.Osnabrück,Pn.Kassel],cost:20},{nodes:[Pn.Münster,Pn.Essen],cost:6},{nodes:[Pn.Münster,Pn.Dortmund],cost:2},{nodes:[Pn.Essen,Pn.Duisburg],cost:0},{nodes:[Pn.Essen,Pn.Dusseldorf],cost:2},{nodes:[Pn.Essen,Pn.Dortmund],cost:5},{nodes:[Pn.Dortmund,Pn.Kassel],cost:18},{nodes:[Pn.Dortmund,Pn.Köln],cost:10},{nodes:[Pn.Dortmund,Pn.FrankfurtM],cost:20},{nodes:[Pn.Kassel,Pn.FrankfurtM],cost:13},{nodes:[Pn.Dusseldorf,Pn.Aachen],cost:9},{nodes:[Pn.Dusseldorf,Pn.Köln],cost:4},{nodes:[Pn.Aachen,Pn.Köln],cost:7},{nodes:[Pn.Aachen,Pn.Trier],cost:19},{nodes:[Pn.Trier,Pn.Köln],cost:20},{nodes:[Pn.Trier,Pn.Mainz],cost:18},{nodes:[Pn.Trier,Pn.Saarbrücken],cost:11},{nodes:[Pn.Mainz,Pn.FrankfurtM],cost:0},{nodes:[Pn.Mainz,Pn.Köln],cost:21},{nodes:[Pn.Mainz,Pn.Saarbrücken],cost:10},{nodes:[Pn.Mainz,Pn.Mannheim],cost:11},{nodes:[Pn.Mannheim,Pn.Saarbrücken],cost:16},{nodes:[Pn.Mannheim,Pn.Stuttgart],cost:6},{nodes:[Pn.Stuttgart,Pn.Saarbrücken],cost:17},{nodes:[Pn.Stuttgart,Pn.Freiburg],cost:16},{nodes:[Pn.Stuttgart,Pn.Konstanz],cost:16},{nodes:[Pn.Stuttgart,Pn.Augsburg],cost:15},{nodes:[Pn.Konstanz,Pn.Freiburg],cost:14},{nodes:[Pn.Konstanz,Pn.Augsburg],cost:17},{nodes:[Pn.Regensburg,Pn.Augsburg],cost:13},{nodes:[Pn.Regensburg,Pn.München],cost:10},{nodes:[Pn.Regensburg,Pn.Passau],cost:12},{nodes:[Pn.Augsburg,Pn.München],cost:6},{nodes:[Pn.Passau,Pn.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"}(Sn||(Sn={}));var Rn,An,On={name:"India",cities:[{name:Sn.Thiruvananthapuram,region:_n.Red,x:217,y:868},{name:Sn.Madurai,region:_n.Red,x:230,y:829},{name:Sn.Coimbatore,region:_n.Red,x:197,y:797},{name:Sn.Chennai,region:_n.Red,x:289,y:740},{name:Sn.Hyderabad,region:_n.Red,x:232,y:618},{name:Sn.Bangalore1,region:_n.Red,x:205,y:710},{name:Sn.Bangalore2,region:_n.Red,x:205,y:735},{name:Sn.Dibrugarh,region:_n.Brown,x:669,y:328},{name:Sn.Imphal,region:_n.Brown,x:658,y:392},{name:Sn.Aizawi,region:_n.Brown,x:625,y:427},{name:Sn.Chittagong,region:_n.Brown,x:589,y:483},{name:Sn.Shillong,region:_n.Brown,x:586,y:395},{name:Sn.Dhaka,region:_n.Brown,x:548,y:432},{name:Sn.Khulna,region:_n.Brown,x:528,y:468},{name:Sn.Darjeeling,region:_n.Green,x:496,y:333},{name:Sn.Kathmandu,region:_n.Green,x:418,y:307},{name:Sn.Patna,region:_n.Green,x:416,y:373},{name:Sn.Lakhnau,region:_n.Green,x:310,y:338},{name:Sn.Varanasi,region:_n.Green,x:350,y:385},{name:Sn.Agra,region:_n.Green,x:228,y:335},{name:Sn.Kanpur,region:_n.Green,x:269,y:373},{name:Sn.Srinagar,region:_n.Orange,x:135,y:115},{name:Sn.Ludhiana,region:_n.Orange,x:186,y:215},{name:Sn.Delhi1,region:_n.Orange,x:190,y:281},{name:Sn.Delhi2,region:_n.Orange,x:190,y:303},{name:Sn.Jaipur,region:_n.Orange,x:158,y:341},{name:Sn.Udaipur,region:_n.Orange,x:105,y:410},{name:Sn.Ahmedabad,region:_n.Orange,x:75,y:456},{name:Sn.Dhanbad,region:_n.Yellow,x:424,y:427},{name:Sn.Kolkata,region:_n.Yellow,x:463,y:477},{name:Sn.Bhudaneswar,region:_n.Yellow,x:428,y:533},{name:Sn.Sambalpur,region:_n.Yellow,x:376,y:494},{name:Sn.Jabalpur,region:_n.Yellow,x:293,y:478},{name:Sn.Nagpur,region:_n.Yellow,x:250,y:510},{name:Sn.Visakhapatnam,region:_n.Yellow,x:358,y:597},{name:Sn.Goa,region:_n.Pink,x:109,y:677},{name:Sn.Pune,region:_n.Pink,x:133,y:587},{name:Sn.Surat,region:_n.Pink,x:80,y:510},{name:Sn.Indore,region:_n.Pink,x:160,y:476},{name:Sn.Bhopal,region:_n.Pink,x:208,y:437},{name:Sn.Mumbai1,region:_n.Pink,x:58,y:570},{name:Sn.Mumbai2,region:_n.Pink,x:58,y:593}],connections:[{nodes:[Sn.Srinagar,Sn.Ludhiana],cost:15},{nodes:[Sn.Ludhiana,Sn.Delhi1],cost:9},{nodes:[Sn.Delhi1,Sn.Delhi2],cost:0},{nodes:[Sn.Delhi2,Sn.Jaipur],cost:7},{nodes:[Sn.Delhi2,Sn.Agra],cost:6},{nodes:[Sn.Jaipur,Sn.Bhopal],cost:12},{nodes:[Sn.Jaipur,Sn.Kanpur],cost:12},{nodes:[Sn.Agra,Sn.Lakhnau],cost:8},{nodes:[Sn.Lakhnau,Sn.Kathmandu],cost:15},{nodes:[Sn.Kathmandu,Sn.Darjeeling],cost:13},{nodes:[Sn.Darjeeling,Sn.Shillong],cost:12},{nodes:[Sn.Shillong,Sn.Patna],cost:18},{nodes:[Sn.Patna,Sn.Kathmandu],cost:10},{nodes:[Sn.Imphal,Sn.Dibrugarh],cost:11},{nodes:[Sn.Dibrugarh,Sn.Shillong],cost:9},{nodes:[Sn.Shillong,Sn.Imphal],cost:12},{nodes:[Sn.Imphal,Sn.Aizawi],cost:7},{nodes:[Sn.Shillong,Sn.Dhaka],cost:10},{nodes:[Sn.Dhaka,Sn.Khulna],cost:6},{nodes:[Sn.Khulna,Sn.Kolkata],cost:3},{nodes:[Sn.Dhanbad,Sn.Dhaka],cost:14},{nodes:[Sn.Jabalpur,Sn.Sambalpur],cost:13},{nodes:[Sn.Sambalpur,Sn.Nagpur],cost:13},{nodes:[Sn.Nagpur,Sn.Visakhapatnam],cost:17},{nodes:[Sn.Visakhapatnam,Sn.Sambalpur],cost:12},{nodes:[Sn.Jabalpur,Sn.Kanpur],cost:11},{nodes:[Sn.Varanasi,Sn.Jabalpur],cost:11},{nodes:[Sn.Kanpur,Sn.Varanasi],cost:8},{nodes:[Sn.Varanasi,Sn.Patna],cost:5},{nodes:[Sn.Patna,Sn.Lakhnau],cost:11},{nodes:[Sn.Kanpur,Sn.Bhopal],cost:13},{nodes:[Sn.Ahmedabad,Sn.Bhopal],cost:11},{nodes:[Sn.Bhopal,Sn.Udaipur],cost:11},{nodes:[Sn.Udaipur,Sn.Jaipur],cost:9},{nodes:[Sn.Ahmedabad,Sn.Surat],cost:7},{nodes:[Sn.Ahmedabad,Sn.Indore],cost:8},{nodes:[Sn.Indore,Sn.Surat],cost:10},{nodes:[Sn.Mumbai1,Sn.Mumbai2],cost:0},{nodes:[Sn.Mumbai2,Sn.Pune],cost:4},{nodes:[Sn.Pune,Sn.Hyderabad],cost:13},{nodes:[Sn.Pune,Sn.Nagpur],cost:17},{nodes:[Sn.Pune,Sn.Indore],cost:15},{nodes:[Sn.Goa,Sn.Coimbatore],cost:18},{nodes:[Sn.Bangalore1,Sn.Bangalore2],cost:0},{nodes:[Sn.Bangalore2,Sn.Coimbatore],cost:9},{nodes:[Sn.Coimbatore,Sn.Thiruvananthapuram],cost:10},{nodes:[Sn.Thiruvananthapuram,Sn.Madurai],cost:7},{nodes:[Sn.Madurai,Sn.Chennai],cost:12},{nodes:[Sn.Chennai,Sn.Bangalore1],cost:9},{nodes:[Sn.Bangalore1,Sn.Hyderabad],cost:14},{nodes:[Sn.Hyderabad,Sn.Goa],cost:15},{nodes:[Sn.Goa,Sn.Bangalore2],cost:14},{nodes:[Sn.Mumbai2,Sn.Goa],cost:11},{nodes:[Sn.Indore,Sn.Nagpur],cost:10},{nodes:[Sn.Sambalpur,Sn.Dhanbad],cost:8},{nodes:[Sn.Sambalpur,Sn.Bhudaneswar],cost:7},{nodes:[Sn.Bhudaneswar,Sn.Kolkata],cost:11},{nodes:[Sn.Kolkata,Sn.Dhanbad],cost:9},{nodes:[Sn.Dhanbad,Sn.Patna],cost:8},{nodes:[Sn.Nagpur,Sn.Hyderabad],cost:12},{nodes:[Sn.Hyderabad,Sn.Visakhapatnam],cost:13},{nodes:[Sn.Visakhapatnam,Sn.Chennai],cost:17},{nodes:[Sn.Chittagong,Sn.Aizawi],cost:7},{nodes:[Sn.Dhaka,Sn.Aizawi],cost:8},{nodes:[Sn.Dhaka,Sn.Chittagong],cost:7},{nodes:[Sn.Patna,Sn.Darjeeling],cost:11},{nodes:[Sn.Visakhapatnam,Sn.Bhudaneswar],cost:12},{nodes:[Sn.Udaipur,Sn.Ahmedabad],cost:6},{nodes:[Sn.Madurai,Sn.Coimbatore],cost:6},{nodes:[Sn.Bangalore2,Sn.Madurai],cost:10},{nodes:[Sn.Bhopal,Sn.Jabalpur],cost:8},{nodes:[Sn.Bhopal,Sn.Nagpur],cost:7},{nodes:[Sn.Bhopal,Sn.Indore],cost:4},{nodes:[Sn.Surat,Sn.Mumbai1],cost:6},{nodes:[Sn.Agra,Sn.Kanpur],cost:8},{nodes:[Sn.Kanpur,Sn.Lakhnau],cost:3},{nodes:[Sn.Lakhnau,Sn.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"])(qe);if("original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[sr(3,"India"),sr(4,"India"),sr(5,"India"),sr(6,"India")],o=[sr(7,"India"),sr(8,"India"),sr(9,"India"),sr(10,"India")]}else{var c=Ne(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=Ne(a,t()+""),2==e?(c=c.slice(1),a=Ne(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=Ne(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=Ne(a.slice(3).concat(c),t()+"")):a=Ne(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"})(Rn||(Rn={})),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"}(An||(An={}));var Ln,Gn,jn={name:"Italy",cities:[{name:An.Siracusa,region:Rn.Brown,x:1048,y:471},{name:An.Reggiodical,region:Rn.Brown,x:1013,y:346},{name:An.Cosenza,region:Rn.Brown,x:960,y:240},{name:An.Messina,region:Rn.Brown,x:975,y:365},{name:An.Palermo,region:Rn.Brown,x:875,y:468},{name:An.Catania,region:Rn.Brown,x:1007,y:460},{name:An.Brindisi,region:Rn.Purple,x:945,y:4},{name:An.Taranto,region:Rn.Brown,x:933,y:92},{name:An.Bari,region:Rn.Purple,x:871,y:32},{name:An.Foggia,region:Rn.Purple,x:777,y:69},{name:An.Pesara,region:Rn.Purple,x:646,y:76},{name:An.Napoli,region:Rn.Purple,x:747,y:222},{name:An.Salerno,region:Rn.Purple,x:799,y:212},{name:An.Roma,region:Rn.Purple,x:583,y:228},{name:An.Ancona,region:Rn.Red,x:549,y:16},{name:An.Rimini,region:Rn.Red,x:459,y:13},{name:An.Ravenna,region:Rn.Red,x:401,y:-5},{name:An.Sanmarino,region:Rn.Red,x:456,y:88},{name:An.Perugia,region:Rn.Red,x:507,y:123},{name:An.Frienze,region:Rn.Red,x:389,y:159},{name:An.Udine,region:Rn.Green,x:358,y:-207},{name:An.Trieste,region:Rn.Green,x:410,y:-181},{name:An.Bolanzo,region:Rn.Green,x:197,y:-172},{name:An.Mestre,region:Rn.Green,x:318,y:-115},{name:An.Venezia,region:Rn.Green,x:349,y:-103},{name:An.Vicenza,region:Rn.Green,x:235,y:-89},{name:An.Padua,region:Rn.Green,x:279,y:-72},{name:An.Torino,region:Rn.Blue,x:57,y:215},{name:An.Bergamo,region:Rn.Blue,x:125,y:14},{name:An.Milano,region:Rn.Blue,x:123,y:102},{name:An.Brescia,region:Rn.Blue,x:182,y:2},{name:An.Picenza,region:Rn.Blue,x:182,y:105},{name:An.Genova,region:Rn.Blue,x:182,y:217},{name:An.Verona,region:Rn.Blue,x:231,y:-13},{name:An.Lovorno,region:Rn.Red,x:333,y:216},{name:An.Ferrara,region:Rn.Yellow,x:333,y:-3},{name:An.Bologna,region:Rn.Yellow,x:350,y:85},{name:An.Modena,region:Rn.Yellow,x:303,y:72},{name:An.Reggio,region:Rn.Yellow,x:263,y:96},{name:An.Pisa,region:Rn.Yellow,x:304,y:197},{name:An.Parma,region:Rn.Yellow,x:224,y:81},{name:An.Laspezia,region:Rn.Yellow,x:245,y:206}],connections:[{nodes:[An.Palermo,An.Catania],cost:15},{nodes:[An.Catania,An.Siracusa],cost:3},{nodes:[An.Catania,An.Messina],cost:6},{nodes:[An.Messina,An.Palermo],cost:15},{nodes:[An.Messina,An.Reggiodical],cost:3},{nodes:[An.Reggiodical,An.Cosenza],cost:13},{nodes:[An.Cosenza,An.Salerno],cost:18},{nodes:[An.Cosenza,An.Taranto],cost:15},{nodes:[An.Taranto,An.Brindisi],cost:4},{nodes:[An.Brindisi,An.Bari],cost:7},{nodes:[An.Bari,An.Taranto],cost:7},{nodes:[An.Taranto,An.Salerno],cost:19},{nodes:[An.Salerno,An.Bari],cost:16},{nodes:[An.Bari,An.Foggia],cost:8},{nodes:[An.Foggia,An.Salerno],cost:10},{nodes:[An.Salerno,An.Napoli],cost:3},{nodes:[An.Napoli,An.Foggia],cost:12},{nodes:[An.Napoli,An.Roma],cost:14},{nodes:[An.Roma,An.Foggia],cost:22},{nodes:[An.Foggia,An.Pesara],cost:10},{nodes:[An.Pesara,An.Roma],cost:14},{nodes:[An.Roma,An.Ancona],cost:17},{nodes:[An.Roma,An.Perugia],cost:13},{nodes:[An.Perugia,An.Sanmarino],cost:12},{nodes:[An.Sanmarino,An.Rimini],cost:0},{nodes:[An.Rimini,An.Ancona],cost:6},{nodes:[An.Ancona,An.Perugia],cost:10},{nodes:[An.Ancona,An.Pesara],cost:9},{nodes:[An.Roma,An.Frienze],cost:20},{nodes:[An.Lovorno,An.Roma],cost:19},{nodes:[An.Frienze,An.Perugia],cost:13},{nodes:[An.Frienze,An.Sanmarino],cost:12},{nodes:[An.Genova,An.Torino],cost:12},{nodes:[An.Torino,An.Milano],cost:8},{nodes:[An.Milano,An.Bergamo],cost:3},{nodes:[An.Bergamo,An.Bolanzo],cost:12},{nodes:[An.Bolanzo,An.Brescia],cost:12},{nodes:[An.Bolanzo,An.Mestre],cost:12},{nodes:[An.Bolanzo,An.Udine],cost:14},{nodes:[An.Udine,An.Trieste],cost:4},{nodes:[An.Udine,An.Venezia],cost:7},{nodes:[An.Venezia,An.Mestre],cost:0},{nodes:[An.Genova,An.Laspezia],cost:5},{nodes:[An.Laspezia,An.Pisa],cost:5},{nodes:[An.Pisa,An.Lovorno],cost:0},{nodes:[An.Genova,An.Milano],cost:9},{nodes:[An.Milano,An.Picenza],cost:4},{nodes:[An.Picenza,An.Parma],cost:4},{nodes:[An.Parma,An.Reggio],cost:2},{nodes:[An.Reggio,An.Modena],cost:2},{nodes:[An.Modena,An.Bologna],cost:3},{nodes:[An.Bologna,An.Pisa],cost:12},{nodes:[An.Pisa,An.Reggio],cost:10},{nodes:[An.Laspezia,An.Parma],cost:9},{nodes:[An.Laspezia,An.Reggio],cost:9},{nodes:[An.Genova,An.Picenza],cost:7},{nodes:[An.Genova,An.Parma],cost:11},{nodes:[An.Milano,An.Brescia],cost:4},{nodes:[An.Brescia,An.Bergamo],cost:3},{nodes:[An.Brescia,An.Verona],cost:4},{nodes:[An.Brescia,An.Picenza],cost:5},{nodes:[An.Bolanzo,An.Vicenza],cost:10},{nodes:[An.Vicenza,An.Padua],cost:3},{nodes:[An.Vicenza,An.Verona],cost:3},{nodes:[An.Verona,An.Parma],cost:6},{nodes:[An.Parma,An.Brescia],cost:6},{nodes:[An.Verona,An.Padua],cost:5},{nodes:[An.Padua,An.Mestre],cost:3},{nodes:[An.Venezia,An.Ravenna],cost:12},{nodes:[An.Ravenna,An.Ferrara],cost:4},{nodes:[An.Ferrara,An.Venezia],cost:9},{nodes:[An.Ferrara,An.Padua],cost:7},{nodes:[An.Ferrara,An.Verona],cost:7},{nodes:[An.Verona,An.Modena],cost:8},{nodes:[An.Frienze,An.Pisa],cost:5},{nodes:[An.Frienze,An.Ravenna],cost:10},{nodes:[An.Ravenna,An.Rimini],cost:4},{nodes:[An.Frienze,An.Bologna],cost:8},{nodes:[An.Bologna,An.Ravenna],cost:4},{nodes:[An.Bologna,An.Ferrara],cost:3},{nodes:[An.Ferrara,An.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"})(Ln||(Ln={})),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"}(Gn||(Gn={}));var Dn,Nn,zn={name:"Japan",cities:[{name:Gn.Asahikawa,region:Ln.Brown,x:3384,y:1014},{name:Gn.Sapporo,region:Ln.Brown,x:3028,y:982,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Hakodate,region:Ln.Brown,x:2622,y:1112},{name:Gn.Admori,region:Ln.Brown,x:3818,y:1336},{name:Gn.Morioka,region:Ln.Brown,x:3636,y:1646,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Akita,region:Ln.Brown,x:3472,y:1480},{name:Gn.Sendai,region:Ln.Brown,x:3408,y:1886},{name:Gn.Niigata,region:Ln.Green,x:2874,y:1628},{name:Gn.Koriyama,region:Ln.Green,x:3086,y:1932,slotCosts:[10,15]},{name:Gn.Nagano,region:Ln.Green,x:2486,y:1722},{name:Gn.Saitama,region:Ln.Green,x:2450,y:1986,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Tokyo,region:Ln.Green,x:2524,y:2122,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Chiba,region:Ln.Green,x:2650,y:2316},{name:Gn.Yokohama,region:Ln.Green,x:2306,y:2244,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Kanazawa,region:Ln.Purple,x:2207,y:1385},{name:Gn.Toyama,region:Ln.Purple,x:2257,y:1595,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Kyoto,region:Ln.Purple,x:1765,y:1595},{name:Gn.Osaka,region:Ln.Purple,x:1517,y:1631,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Nagoya,region:Ln.Purple,x:1942,y:1751},{name:Gn.Kofu,region:Ln.Purple,x:2179,y:1897},{name:Gn.Hamamatsu,region:Ln.Purple,x:1958,y:2024,slotCosts:[10,15]},{name:Gn.Kobe,region:Ln.Yellow,x:1555,y:1451,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Matsue,region:Ln.Yellow,x:1457,y:1006,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Okayama,region:Ln.Yellow,x:1390,y:1286},{name:Gn.Takamatsu,region:Ln.Yellow,x:1268,y:1507},{name:Gn.Kochi,region:Ln.Yellow,x:974,y:1472,slotCosts:[10,15]},{name:Gn.Matsuyama,region:Ln.Yellow,x:1036,y:1268},{name:Gn.Hiroshima,region:Ln.Yellow,x:1103,y:1078},{name:Gn.Shimonoseki,region:Ln.Red,x:856,y:962},{name:Gn.Oita,region:Ln.Red,x:731,y:1166,slotCosts:[10,15]},{name:Gn.Miyazaki,region:Ln.Red,x:469,y:1318,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Kagoshima,region:Ln.Red,x:157,y:1255},{name:Gn.Kumamoto,region:Ln.Red,x:457,y:1045},{name:Gn.Fukuoka,region:Ln.Red,x:644,y:823,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Nagasaki,region:Ln.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:"Users may build 0, 1, 2 houses in round 1. The first house you place MUST be in one of the six special starting cities: Fukuoka, Kobe, Osaka, Sapporo, Tokyo, or Yokohama whether it be round 1 or after.\nYou get a free jump but that free jump can only go into one of these six starting cities (you still pay for the house, just no connection fee).\nAll of these six special starting cities are [10, 10, 20] meaning two players can go there in step 1 and these cities are marked with 10 on the map.\nIf you build 2 cities in round 1, you must use your free jump even though they might have 0 connection like Tokyo and Yokohama (system will auto use your free jump).\nIn Step 3, the third connection spots (cost 20) are opened in the starting cities and are available for normal or free jump.\nSome smaller cities have only two building spots (10 and 15, or 15 and 20). These cities are marked with an X. An X at the top means no Step 1 builds, an X at the bottom means no Step 3 builds.\nIf all starting city spots are taken, you cannot use your free jump.",connections:[{nodes:[Gn.Nagasaki,Gn.Fukuoka],cost:10},{nodes:[Gn.Fukuoka,Gn.Shimonoseki],cost:10},{nodes:[Gn.Shimonoseki,Gn.Hiroshima],cost:12},{nodes:[Gn.Hiroshima,Gn.Matsue],cost:13},{nodes:[Gn.Kumamoto,Gn.Kagoshima],cost:13},{nodes:[Gn.Kagoshima,Gn.Miyazaki],cost:8},{nodes:[Gn.Miyazaki,Gn.Kumamoto],cost:11},{nodes:[Gn.Kumamoto,Gn.Oita],cost:12},{nodes:[Gn.Oita,Gn.Miyazaki],cost:12},{nodes:[Gn.Oita,Gn.Matsuyama],cost:14},{nodes:[Gn.Matsuyama,Gn.Kochi],cost:7},{nodes:[Gn.Kochi,Gn.Takamatsu],cost:9},{nodes:[Gn.Hiroshima,Gn.Okayama],cost:11},{nodes:[Gn.Okayama,Gn.Matsue],cost:11},{nodes:[Gn.Okayama,Gn.Kobe],cost:9},{nodes:[Gn.Kobe,Gn.Matsue],cost:16},{nodes:[Gn.Matsuyama,Gn.Takamatsu],cost:10},{nodes:[Gn.Takamatsu,Gn.Okayama],cost:9},{nodes:[Gn.Osaka,Gn.Nagoya],cost:9},{nodes:[Gn.Nagoya,Gn.Kyoto],cost:9},{nodes:[Gn.Kyoto,Gn.Kobe],cost:3},{nodes:[Gn.Osaka,Gn.Kyoto],cost:0},{nodes:[Gn.Kyoto,Gn.Kanazawa],cost:19},{nodes:[Gn.Kanazawa,Gn.Toyama],cost:3},{nodes:[Gn.Kanazawa,Gn.Nagoya],cost:16},{nodes:[Gn.Nagoya,Gn.Toyama],cost:15},{nodes:[Gn.Toyama,Gn.Nagano],cost:9},{nodes:[Gn.Nagano,Gn.Niigata],cost:12},{nodes:[Gn.Niigata,Gn.Akita],cost:16},{nodes:[Gn.Hamamatsu,Gn.Kofu],cost:12},{nodes:[Gn.Kofu,Gn.Nagoya],cost:15},{nodes:[Gn.Nagoya,Gn.Hamamatsu],cost:6},{nodes:[Gn.Kofu,Gn.Saitama],cost:8},{nodes:[Gn.Saitama,Gn.Tokyo],cost:0},{nodes:[Gn.Tokyo,Gn.Yokohama],cost:0},{nodes:[Gn.Tokyo,Gn.Chiba],cost:4},{nodes:[Gn.Chiba,Gn.Sendai],cost:21},{nodes:[Gn.Tokyo,Gn.Koriyama],cost:14},{nodes:[Gn.Koriyama,Gn.Niigata],cost:11},{nodes:[Gn.Saitama,Gn.Nagano],cost:17},{nodes:[Gn.Saitama,Gn.Niigata],cost:21},{nodes:[Gn.Koriyama,Gn.Sendai],cost:7},{nodes:[Gn.Sendai,Gn.Akita],cost:14},{nodes:[Gn.Akita,Gn.Koriyama],cost:21},{nodes:[Gn.Sendai,Gn.Morioka],cost:10},{nodes:[Gn.Morioka,Gn.Akita],cost:7},{nodes:[Gn.Akita,Gn.Admori],cost:10},{nodes:[Gn.Admori,Gn.Morioka],cost:10},{nodes:[Gn.Admori,Gn.Hakodate],cost:15},{nodes:[Gn.Hakodate,Gn.Sapporo],cost:14},{nodes:[Gn.Sapporo,Gn.Asahikawa],cost:8},{nodes:[Gn.Kumamoto,Gn.Shimonoseki],cost:16},{nodes:[Gn.Kumamoto,Gn.Fukuoka],cost:8}]},Tn=c({},zn);(function(e){e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Pink"]="pink"})(Dn||(Dn={})),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"}(Nn||(Nn={}));var En,Kn={name:"Korea",cities:[{name:Nn.Gyeongju,region:Dn.Yellow,x:2161,y:2980},{name:Nn.Ulsan,region:Dn.Yellow,x:2185,y:3226},{name:Nn.Busan,region:Dn.Yellow,x:2041,y:3440},{name:Nn.Jinju,region:Dn.Yellow,x:1676,y:3431},{name:Nn.Daegu,region:Dn.Yellow,x:1876,y:3062},{name:Nn.Andong,region:Dn.Yellow,x:1987,y:2737},{name:Nn.Sangju,region:Dn.Yellow,x:1747,y:2827},{name:Nn.Rasun,region:Dn.Red,x:2485,y:361},{name:Nn.Cheongjin,region:Dn.Red,x:2309,y:491},{name:Nn.Gyeongseong,region:Dn.Red,x:2209,y:689},{name:Nn.Seongjin,region:Dn.Red,x:2060,y:1001},{name:Nn.Hyesan,region:Dn.Red,x:1783,y:665},{name:Nn.Hamheung,region:Dn.Red,x:1516,y:1283},{name:Nn.Wonsan,region:Dn.Red,x:1484,y:1600},{name:Nn.Samcheok,region:Dn.Brown,x:2171,y:2437},{name:Nn.Donghae,region:Dn.Brown,x:2041,y:2299},{name:Nn.Taeraek,region:Dn.Brown,x:1999,y:2528},{name:Nn.Gangneung,region:Dn.Brown,x:1949,y:2092},{name:Nn.Sokcho,region:Dn.Brown,x:1832,y:1915},{name:Nn.Wonju,region:Dn.Brown,x:1735,y:2293},{name:Nn.Chuncheon,region:Dn.Brown,x:1594,y:2056},{name:Nn.Chungju,region:Dn.Green,x:1744,y:2552},{name:Nn.Cheongju,region:Dn.Green,x:1547,y:2645},{name:Nn.Jeju,region:Dn.Green,x:1223,y:4051},{name:Nn.Gwangju,region:Dn.Green,x:1309,y:3380},{name:Nn.Naju,region:Dn.Green,x:1121,y:3569},{name:Nn.Jeonju,region:Dn.Green,x:1363,y:3109},{name:Nn.Daejeon,region:Dn.Green,x:1462,y:2839},{name:Nn.Yongin,region:Dn.Purple,x:1532,y:2371},{name:Nn.Seoul,region:Dn.Purple,x:1400,y:2203},{name:Nn.Suwon,region:Dn.Purple,x:1366,y:2488},{name:Nn.Goyang,region:Dn.Purple,x:1219,y:2270},{name:Nn.Anyang,region:Dn.Purple,x:1156,y:2446},{name:Nn.Incheon,region:Dn.Purple,x:1028,y:2311},{name:Nn.Gaesung,region:Dn.Purple,x:1171,y:2042},{name:Nn.Ganggye,region:Dn.Pink,x:1213,y:809},{name:Nn.Haeju,region:Dn.Pink,x:856,y:2135},{name:Nn.Pyeongyang,region:Dn.Pink,x:938,y:1642},{name:Nn.Hwangju,region:Dn.Pink,x:901,y:1886},{name:Nn.Nampo,region:Dn.Pink,x:677,y:1763},{name:Nn.Anju,region:Dn.Pink,x:812,y:1391},{name:Nn.Sinuiju,region:Dn.Pink,x:433,y:1105}],connections:[{nodes:[Nn.Naju,Nn.Jeju],cost:19},{nodes:[Nn.Naju,Nn.Jinju],cost:15},{nodes:[Nn.Jinju,Nn.Gwangju],cost:14},{nodes:[Nn.Gwangju,Nn.Naju],cost:2},{nodes:[Nn.Gwangju,Nn.Jeonju],cost:11},{nodes:[Nn.Jeonju,Nn.Jinju],cost:15},{nodes:[Nn.Jinju,Nn.Busan],cost:11},{nodes:[Nn.Jinju,Nn.Daegu],cost:11},{nodes:[Nn.Daegu,Nn.Jeonju],cost:16},{nodes:[Nn.Daegu,Nn.Busan],cost:12},{nodes:[Nn.Busan,Nn.Ulsan],cost:7},{nodes:[Nn.Ulsan,Nn.Daegu],cost:10},{nodes:[Nn.Jeonju,Nn.Daejeon],cost:9},{nodes:[Nn.Daejeon,Nn.Daegu],cost:15},{nodes:[Nn.Andong,Nn.Gyeongju],cost:11},{nodes:[Nn.Gyeongju,Nn.Daegu],cost:7},{nodes:[Nn.Gyeongju,Nn.Ulsan],cost:3},{nodes:[Nn.Daegu,Nn.Sangju],cost:9},{nodes:[Nn.Sangju,Nn.Daejeon],cost:8},{nodes:[Nn.Daegu,Nn.Andong],cost:10},{nodes:[Nn.Andong,Nn.Sangju],cost:6},{nodes:[Nn.Andong,Nn.Taeraek],cost:8},{nodes:[Nn.Taeraek,Nn.Samcheok],cost:5},{nodes:[Nn.Samcheok,Nn.Donghae],cost:0},{nodes:[Nn.Donghae,Nn.Gangneung],cost:4},{nodes:[Nn.Chungju,Nn.Taeraek],cost:13},{nodes:[Nn.Andong,Nn.Chungju],cost:11},{nodes:[Nn.Chungju,Nn.Cheongju],cost:7},{nodes:[Nn.Cheongju,Nn.Sangju],cost:8},{nodes:[Nn.Sangju,Nn.Chungju],cost:9},{nodes:[Nn.Daejeon,Nn.Cheongju],cost:4},{nodes:[Nn.Wonju,Nn.Donghae],cost:14},{nodes:[Nn.Wonju,Nn.Taeraek],cost:13},{nodes:[Nn.Chungju,Nn.Wonju],cost:5},{nodes:[Nn.Wonju,Nn.Gangneung],cost:12},{nodes:[Nn.Wonju,Nn.Sokcho],cost:15},{nodes:[Nn.Sokcho,Nn.Gangneung],cost:6},{nodes:[Nn.Chuncheon,Nn.Wonju],cost:7},{nodes:[Nn.Sinuiju,Nn.Ganggye],cost:25},{nodes:[Nn.Ganggye,Nn.Hyesan],cost:20},{nodes:[Nn.Sinuiju,Nn.Anju],cost:13},{nodes:[Nn.Anju,Nn.Ganggye],cost:22},{nodes:[Nn.Ganggye,Nn.Hamheung],cost:19},{nodes:[Nn.Hamheung,Nn.Anju],cost:20},{nodes:[Nn.Anju,Nn.Nampo],cost:10},{nodes:[Nn.Anju,Nn.Pyeongyang],cost:7},{nodes:[Nn.Pyeongyang,Nn.Nampo],cost:5},{nodes:[Nn.Nampo,Nn.Hwangju],cost:4},{nodes:[Nn.Hwangju,Nn.Pyeongyang],cost:4},{nodes:[Nn.Pyeongyang,Nn.Wonsan],cost:18},{nodes:[Nn.Pyeongyang,Nn.Hamheung],cost:23},{nodes:[Nn.Hamheung,Nn.Wonsan],cost:11},{nodes:[Nn.Pyeongyang,Nn.Gaesung],cost:14},{nodes:[Nn.Gaesung,Nn.Haeju],cost:8},{nodes:[Nn.Haeju,Nn.Hwangju],cost:8},{nodes:[Nn.Gaesung,Nn.Goyang],cost:7},{nodes:[Nn.Anyang,Nn.Suwon],cost:3},{nodes:[Nn.Suwon,Nn.Yongin],cost:2},{nodes:[Nn.Goyang,Nn.Incheon],cost:0},{nodes:[Nn.Incheon,Nn.Anyang],cost:0},{nodes:[Nn.Goyang,Nn.Seoul],cost:0},{nodes:[Nn.Suwon,Nn.Cheongju],cost:10},{nodes:[Nn.Seoul,Nn.Yongin],cost:2},{nodes:[Nn.Gaesung,Nn.Chuncheon],cost:13},{nodes:[Nn.Gaesung,Nn.Wonsan],cost:18},{nodes:[Nn.Wonsan,Nn.Sokcho],cost:18},{nodes:[Nn.Wonsan,Nn.Chuncheon],cost:19},{nodes:[Nn.Sokcho,Nn.Chuncheon],cost:10},{nodes:[Nn.Chuncheon,Nn.Seoul],cost:8},{nodes:[Nn.Chuncheon,Nn.Yongin],cost:9},{nodes:[Nn.Yongin,Nn.Wonju],cost:8},{nodes:[Nn.Yongin,Nn.Chungju],cost:10},{nodes:[Nn.Yongin,Nn.Cheongju],cost:10},{nodes:[Nn.Rasun,Nn.Cheongjin],cost:8},{nodes:[Nn.Cheongjin,Nn.Gyeongseong],cost:4},{nodes:[Nn.Gyeongseong,Nn.Seongjin],cost:16},{nodes:[Nn.Hyesan,Nn.Gyeongseong],cost:18},{nodes:[Nn.Hyesan,Nn.Seongjin],cost:14},{nodes:[Nn.Seongjin,Nn.Hamheung],cost:17},{nodes:[Nn.Hamheung,Nn.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."};t("d4b6"),t("e08f");(function(e){e["Manhattan"]="manhattan"})(En||(En={}));var In,Un,Wn=[{name:"M1",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:236,y:129},{name:"M2",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:294,y:132},{name:"M3",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:456,y:135},{name:"M4",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:529,y:137},{name:"M5",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:234,y:236},{name:"M6",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:292,y:236},{name:"M7",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:456,y:238},{name:"M8",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:532,y:239},{name:"M9",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:307,y:318},{name:"M10",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:235,y:340},{name:"M11",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:457,y:340},{name:"M12",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:529,y:344},{name:"M13",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:290,y:367},{name:"M14",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:241,y:420},{name:"M15",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:300,y:421},{name:"M16",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:389,y:422},{name:"M17",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:457,y:423},{name:"M18",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:523,y:423},{name:"M19",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:344,y:431},{name:"M20",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:243,y:480},{name:"M21",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:300,y:481},{name:"M22",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:348,y:482},{name:"M23",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:393,y:483},{name:"M24",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:455,y:484},{name:"M25",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:521,y:485},{name:"M26",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:240,y:539},{name:"M27",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:301,y:540},{name:"M28",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:353,y:541},{name:"M29",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:400,y:541},{name:"M30",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:456,y:542},{name:"M31",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:522,y:543},{name:"M32",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:405,y:588},{name:"M33",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:239,y:605},{name:"M34",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:303,y:605},{name:"M35",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:455,y:606},{name:"M36",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:528,y:607},{name:"M37",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:367,y:609},{name:"M38",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:289,y:680},{name:"M39",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:466,y:680},{name:"M40",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:512,y:680},{name:"M41",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:363,y:681},{name:"M42",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:571,y:681},{name:"M43",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:417,y:682},{name:"M44",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:427,y:740},{name:"M45",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:632,y:740},{name:"M46",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:505,y:741},{name:"M47",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:572,y:741},{name:"M48",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:378,y:745},{name:"M49",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:346,y:761},{name:"M50",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:312,y:775},{name:"M51",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:640,y:784},{name:"M52",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:571,y:787},{name:"M53",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:427,y:790},{name:"M54",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:514,y:790},{name:"M55",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:473,y:794},{name:"M56",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:646,y:821},{name:"M57",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:585,y:827},{name:"M58",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:430,y:832},{name:"M59",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:533,y:833},{name:"M60",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:482,y:834},{name:"M61",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:389,y:851},{name:"M62",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:350,y:852},{name:"M63",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:613,y:859},{name:"M64",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:673,y:860},{name:"M65",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:433,y:871},{name:"M66",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:571,y:873},{name:"M67",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:482,y:874},{name:"M68",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:534,y:885},{name:"M69",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:636,y:892},{name:"M70",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:371,y:895},{name:"M71",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:482,y:914},{name:"M72",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:593,y:915},{name:"M73",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:427,y:920},{name:"M74",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:389,y:934},{name:"M75",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:555,y:937},{name:"M76",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:466,y:950},{name:"M77",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:520,y:962},{name:"M78",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:379,y:983},{name:"M79",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:424,y:986},{name:"M80",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:484,y:993},{name:"M81",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:394,y:1038},{name:"M82",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:429,y:1041},{name:"M83",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:478,y:1041}],Hn=[{nodes:["M1","M2"],cost:0},{nodes:["M1","M5"],cost:0},{nodes:["M2","M6"],cost:0},{nodes:["M3","M4"],cost:0},{nodes:["M3","M7"],cost:0},{nodes:["M4","M8"],cost:0},{nodes:["M5","M6"],cost:0},{nodes:["M5","M10"],cost:0},{nodes:["M6","M9"],cost:0},{nodes:["M7","M8"],cost:0},{nodes:["M7","M11"],cost:0},{nodes:["M8","M12"],cost:0},{nodes:["M9","M13"],cost:0},{nodes:["M10","M13"],cost:0},{nodes:["M10","M14"],cost:0},{nodes:["M11","M12"],cost:0},{nodes:["M11","M17"],cost:0},{nodes:["M12","M18"],cost:0},{nodes:["M13","M15"],cost:0},{nodes:["M14","M15"],cost:0},{nodes:["M14","M20"],cost:0},{nodes:["M15","M19"],cost:0},{nodes:["M15","M21"],cost:0},{nodes:["M16","M17"],cost:0},{nodes:["M16","M19"],cost:0},{nodes:["M16","M23"],cost:0},{nodes:["M17","M18"],cost:0},{nodes:["M17","M24"],cost:0},{nodes:["M18","M25"],cost:0},{nodes:["M19","M22"],cost:0},{nodes:["M20","M21"],cost:0},{nodes:["M20","M26"],cost:0},{nodes:["M21","M22"],cost:0},{nodes:["M21","M27"],cost:0},{nodes:["M22","M23"],cost:0},{nodes:["M22","M28"],cost:0},{nodes:["M23","M24"],cost:0},{nodes:["M23","M29"],cost:0},{nodes:["M24","M25"],cost:0},{nodes:["M24","M30"],cost:0},{nodes:["M25","M31"],cost:0},{nodes:["M26","M27"],cost:0},{nodes:["M26","M33"],cost:0},{nodes:["M27","M28"],cost:0},{nodes:["M27","M34"],cost:0},{nodes:["M28","M29"],cost:0},{nodes:["M28","M37"],cost:0},{nodes:["M29","M30"],cost:0},{nodes:["M29","M32"],cost:0},{nodes:["M30","M31"],cost:0},{nodes:["M30","M35"],cost:0},{nodes:["M31","M36"],cost:0},{nodes:["M32","M35"],cost:0},{nodes:["M32","M37"],cost:0},{nodes:["M33","M34"],cost:0},{nodes:["M33","M38"],cost:0},{nodes:["M34","M37"],cost:0},{nodes:["M34","M38"],cost:0},{nodes:["M35","M36"],cost:0},{nodes:["M35","M39"],cost:0},{nodes:["M36","M40"],cost:0},{nodes:["M36","M42"],cost:0},{nodes:["M37","M41"],cost:0},{nodes:["M37","M43"],cost:0},{nodes:["M38","M41"],cost:0},{nodes:["M38","M50"],cost:0},{nodes:["M39","M40"],cost:0},{nodes:["M39","M43"],cost:0},{nodes:["M39","M46"],cost:0},{nodes:["M40","M42"],cost:0},{nodes:["M40","M46"],cost:0},{nodes:["M41","M43"],cost:0},{nodes:["M41","M48"],cost:0},{nodes:["M41","M49"],cost:0},{nodes:["M42","M45"],cost:0},{nodes:["M42","M47"],cost:0},{nodes:["M43","M44"],cost:0},{nodes:["M44","M48"],cost:0},{nodes:["M44","M53"],cost:0},{nodes:["M44","M55"],cost:0},{nodes:["M45","M47"],cost:0},{nodes:["M45","M51"],cost:0},{nodes:["M46","M47"],cost:0},{nodes:["M46","M54"],cost:0},{nodes:["M46","M55"],cost:0},{nodes:["M47","M52"],cost:0},{nodes:["M48","M49"],cost:0},{nodes:["M48","M53"],cost:0},{nodes:["M48","M61"],cost:0},{nodes:["M49","M50"],cost:0},{nodes:["M49","M61"],cost:0},{nodes:["M50","M62"],cost:0},{nodes:["M51","M52"],cost:0},{nodes:["M51","M56"],cost:0},{nodes:["M52","M54"],cost:0},{nodes:["M52","M57"],cost:0},{nodes:["M52","M59"],cost:0},{nodes:["M53","M55"],cost:0},{nodes:["M53","M58"],cost:0},{nodes:["M54","M55"],cost:0},{nodes:["M54","M59"],cost:0},{nodes:["M55","M60"],cost:0},{nodes:["M56","M57"],cost:0},{nodes:["M56","M63"],cost:0},{nodes:["M56","M64"],cost:0},{nodes:["M57","M59"],cost:0},{nodes:["M57","M63"],cost:0},{nodes:["M57","M66"],cost:0},{nodes:["M58","M60"],cost:0},{nodes:["M58","M61"],cost:0},{nodes:["M58","M65"],cost:0},{nodes:["M59","M60"],cost:0},{nodes:["M59","M66"],cost:0},{nodes:["M59","M68"],cost:0},{nodes:["M60","M67"],cost:0},{nodes:["M61","M62"],cost:0},{nodes:["M61","M65"],cost:0},{nodes:["M61","M73"],cost:0},{nodes:["M62","M70"],cost:0},{nodes:["M63","M64"],cost:0},{nodes:["M63","M66"],cost:0},{nodes:["M63","M69"],cost:0},{nodes:["M64","M69"],cost:0},{nodes:["M65","M67"],cost:0},{nodes:["M65","M73"],cost:0},{nodes:["M66","M68"],cost:0},{nodes:["M66","M72"],cost:0},{nodes:["M67","M68"],cost:0},{nodes:["M67","M71"],cost:0},{nodes:["M68","M71"],cost:0},{nodes:["M68","M75"],cost:0},{nodes:["M69","M72"],cost:0},{nodes:["M70","M73"],cost:0},{nodes:["M70","M74"],cost:0},{nodes:["M71","M73"],cost:0},{nodes:["M71","M76"],cost:0},{nodes:["M72","M75"],cost:0},{nodes:["M73","M74"],cost:0},{nodes:["M73","M76"],cost:0},{nodes:["M73","M79"],cost:0},{nodes:["M74","M78"],cost:0},{nodes:["M74","M79"],cost:0},{nodes:["M75","M77"],cost:0},{nodes:["M76","M77"],cost:0},{nodes:["M76","M79"],cost:0},{nodes:["M76","M80"],cost:0},{nodes:["M77","M80"],cost:0},{nodes:["M78","M79"],cost:0},{nodes:["M78","M81"],cost:0},{nodes:["M79","M80"],cost:0},{nodes:["M79","M82"],cost:0},{nodes:["M80","M83"],cost:0},{nodes:["M81","M82"],cost:0},{nodes:["M82","M83"],cost:0}],Fn={name:"Manhattan",cities:Wn,connections:Hn,layout:"Portrait",adjustRatio:[1.15,1.15],mapPosition:[30,10],mapRotation:0,viewBox:[1480,1400],supplyPosition:[675,1240],resupply:[[[4,4,4],[4,4,4],[5,5,5],[6,6,6],[7,7,7]],[[3,3,3],[3,3,3],[4,4,4],[5,5,5],[6,6,6]],[[2,2,2],[2,2,2],[3,3,3],[4,4,4],[5,5,5]],[[1,1,1],[1,1,1],[2,2,2],[2,2,2],[3,3,3]]],startingResources:[18,18,9,4],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r=new Set;e<=3&&(r.add(20),r.add(22),r.add(37));var o=Object(we["cloneDeep"])($e).filter((function(e){return!r.has(e.number)}));o.pop();var a=Ne(o.filter((function(e){return e.number<=15})),t()+""),i=Ne(o.filter((function(e){return e.number>15})),t()+"");a.splice(0,4);var s=a.splice(0,8).sort((function(e,n){return e.number-n.number})),c=s.slice(0,4),u=s.slice(4),l=[].concat(M(a),M(i));return{actualMarket:c,futureMarket:u,powerPlantsDeck:l}},blockSpaces:function(e,n,t){if(e>=5)return[];for(var r={10:3,15:3,20:2,25:2,30:2,35:2},o=4===e?1:2,a=[],i=function(){var e=b(c[s],2),r=e[0],i=e[1],u=Number(r),l=i*o,d=Ne(n.filter((function(e){return e.slotCosts&&e.slotCosts[0]===u})).map((function(e){return e.name})),t()+"");a.push.apply(a,M(d.slice(0,l)))},s=0,c=Object.entries(r);s<c.length;s++)i();return a},mapSpecificRules:"Single region, one house per space: every building space holds just one house at its printed building cost (10–40 Elektro). The game runs only in Step 1 until the end. Connections: your first house may be any empty space (pay only its building cost); a space directly adjacent to your network costs only its building cost; otherwise pay a flat 5 Elektro for each space you transit through (blocked spaces, or spaces you choose not to connect) plus the building cost of the target space. Uranium is used. With fewer players, some spaces are blocked at setup (4 players block 14 spaces; 2–3 players block 28). In the physical game the players mutually choose which spaces to block; here the system selects them automatically for your convenience. If you buy the discounted power plant you may purchase another power plant during the same phase. The game ends when a player has connected 18 spaces (17 for 3–4 players, 15 for 5, 14 for 6)."};(function(e){e["Pink"]="pink",e["Green"]="green",e["Orange"]="orange",e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown"})(In||(In={})),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"}(Un||(Un={}));var Yn,Vn,Jn={name:"Middle East",cities:[{name:Un.Mashhad,region:In.Pink,x:859,y:327},{name:Un.Corgan,region:In.Pink,x:734,y:287},{name:Un.Tehran,region:In.Pink,x:633,y:342},{name:Un.Tabriz,region:In.Pink,x:450,y:251},{name:Un.Mosul,region:In.Pink,x:352,y:307},{name:Un.Kermanshah,region:In.Pink,x:503,y:391},{name:Un.Baghdad,region:In.Pink,x:393,y:406},{name:Un.Isfahan,region:In.Green,x:621,y:436},{name:Un.Yazo,region:In.Green,x:720,y:472},{name:Un.Zahedan,region:In.Green,x:896,y:547},{name:Un.Kerman,region:In.Green,x:784,y:534},{name:Un.Shiraz,region:In.Green,x:651,y:557},{name:Un.Bandarabbas,region:In.Green,x:756,y:629},{name:Un.Chabahar,region:In.Green,x:898,y:687},{name:Un.Dubai,region:In.Orange,x:752,y:690},{name:Un.Muscat,region:In.Orange,x:828,y:773},{name:Un.Abudhari,region:In.Orange,x:692,y:747},{name:Un.Alain,region:In.Orange,x:715,y:812},{name:Un.Salalah,region:In.Orange,x:694,y:981},{name:Un.Doha,region:In.Orange,x:596,y:713},{name:Un.Manama,region:In.Orange,x:532,y:652},{name:Un.Ahvaz,region:In.Yellow,x:555,y:499},{name:Un.Basra,region:In.Yellow,x:452,y:519},{name:Un.Najaf,region:In.Yellow,x:356,y:478},{name:Un.Kuwaitcity,region:In.Yellow,x:500,y:580},{name:Un.Buraydah,region:In.Yellow,x:360,y:674},{name:Un.Riyadh,region:In.Yellow,x:443,y:741},{name:Un.Medina,region:In.Yellow,x:264,y:738},{name:Un.Alhasahah,region:In.Red,x:248,y:300},{name:Un.Aleppo,region:In.Red,x:132,y:315},{name:Un.Damascus,region:In.Red,x:186,y:433},{name:Un.Amman,region:In.Red,x:171,y:493},{name:Un.Beirut,region:In.Red,x:94,y:401},{name:Un.Jerusalem,region:In.Red,x:76,y:481},{name:Un.Aqaba,region:In.Red,x:103,y:563},{name:Un.Mukalla,region:In.Brown,x:555,y:1059},{name:Un.Sanaa,region:In.Brown,x:426,y:1018},{name:Un.Aden,region:In.Brown,x:431,y:1105},{name:Un.Alhudaydah,region:In.Brown,x:317,y:1057},{name:Un.Abha,region:In.Brown,x:306,y:938},{name:Un.Mecca,region:In.Brown,x:280,y:850},{name:Un.Jeddah,region:In.Brown,x:190,y:800}],connections:[{nodes:[Un.Tabriz,Un.Tehran],cost:13},{nodes:[Un.Tehran,Un.Corgan],cost:9},{nodes:[Un.Corgan,Un.Mashhad],cost:12},{nodes:[Un.Mashhad,Un.Zahedan],cost:20},{nodes:[Un.Zahedan,Un.Kerman],cost:10},{nodes:[Un.Kerman,Un.Yazo],cost:7},{nodes:[Un.Yazo,Un.Mashhad],cost:18},{nodes:[Un.Mashhad,Un.Tehran],cost:19},{nodes:[Un.Tehran,Un.Yazo],cost:12},{nodes:[Un.Yazo,Un.Shiraz],cost:9},{nodes:[Un.Shiraz,Un.Kerman],cost:11},{nodes:[Un.Yazo,Un.Isfahan],cost:7},{nodes:[Un.Isfahan,Un.Shiraz],cost:10},{nodes:[Un.Isfahan,Un.Tehran],cost:9},{nodes:[Un.Tehran,Un.Kermanshah],cost:13},{nodes:[Un.Kermanshah,Un.Isfahan],cost:13},{nodes:[Un.Isfahan,Un.Ahvaz],cost:11},{nodes:[Un.Ahvaz,Un.Shiraz],cost:11},{nodes:[Un.Ahvaz,Un.Kermanshah],cost:11},{nodes:[Un.Kermanshah,Un.Tabriz],cost:13},{nodes:[Un.Tabriz,Un.Mosul],cost:13},{nodes:[Un.Mosul,Un.Baghdad],cost:8},{nodes:[Un.Baghdad,Un.Kermanshah],cost:8},{nodes:[Un.Basra,Un.Ahvaz],cost:3},{nodes:[Un.Ahvaz,Un.Kuwaitcity],cost:7},{nodes:[Un.Kuwaitcity,Un.Basra],cost:5},{nodes:[Un.Basra,Un.Najaf],cost:10},{nodes:[Un.Najaf,Un.Baghdad],cost:4},{nodes:[Un.Baghdad,Un.Basra],cost:12},{nodes:[Un.Alhasahah,Un.Mosul],cost:4},{nodes:[Un.Alhasahah,Un.Baghdad],cost:11},{nodes:[Un.Baghdad,Un.Damascus],cost:16},{nodes:[Un.Damascus,Un.Najaf],cost:15},{nodes:[Un.Alhasahah,Un.Damascus],cost:14},{nodes:[Un.Damascus,Un.Amman],cost:4},{nodes:[Un.Amman,Un.Aqaba],cost:7},{nodes:[Un.Aqaba,Un.Jerusalem],cost:6},{nodes:[Un.Jerusalem,Un.Amman],cost:3},{nodes:[Un.Jerusalem,Un.Beirut],cost:6},{nodes:[Un.Beirut,Un.Damascus],cost:4},{nodes:[Un.Damascus,Un.Aleppo],cost:8},{nodes:[Un.Aleppo,Un.Beirut],cost:9},{nodes:[Un.Aleppo,Un.Alhasahah],cost:7},{nodes:[Un.Baghdad,Un.Tabriz],cost:18},{nodes:[Un.Zahedan,Un.Chabahar],cost:13},{nodes:[Un.Zahedan,Un.Bandarabbas],cost:14},{nodes:[Un.Bandarabbas,Un.Kerman],cost:13},{nodes:[Un.Shiraz,Un.Bandarabbas],cost:14},{nodes:[Un.Bandarabbas,Un.Chabahar],cost:15},{nodes:[Un.Kuwaitcity,Un.Manama],cost:12},{nodes:[Un.Manama,Un.Doha],cost:6},{nodes:[Un.Doha,Un.Abudhari],cost:9},{nodes:[Un.Abudhari,Un.Dubai],cost:2},{nodes:[Un.Dubai,Un.Muscat],cost:9},{nodes:[Un.Muscat,Un.Alain],cost:7},{nodes:[Un.Alain,Un.Abudhari],cost:3},{nodes:[Un.Alain,Un.Dubai],cost:3},{nodes:[Un.Riyadh,Un.Alain],cost:23},{nodes:[Un.Doha,Un.Riyadh],cost:12},{nodes:[Un.Riyadh,Un.Manama],cost:10},{nodes:[Un.Riyadh,Un.Kuwaitcity],cost:12},{nodes:[Un.Kuwaitcity,Un.Buraydah],cost:12},{nodes:[Un.Buraydah,Un.Riyadh],cost:7},{nodes:[Un.Buraydah,Un.Medina],cost:10},{nodes:[Un.Medina,Un.Riyadh],cost:15},{nodes:[Un.Buraydah,Un.Najaf],cost:14},{nodes:[Un.Aqaba,Un.Jeddah],cost:23},{nodes:[Un.Aqaba,Un.Medina],cost:17},{nodes:[Un.Medina,Un.Jeddah],cost:7},{nodes:[Un.Jeddah,Un.Mecca],cost:1},{nodes:[Un.Mecca,Un.Medina],cost:7},{nodes:[Un.Mecca,Un.Riyadh],cost:17},{nodes:[Un.Riyadh,Un.Abha],cost:19},{nodes:[Un.Abha,Un.Mecca],cost:12},{nodes:[Un.Salalah,Un.Muscat],cost:21},{nodes:[Un.Alain,Un.Salalah],cost:18},{nodes:[Un.Salalah,Un.Mukalla],cost:15},{nodes:[Un.Salalah,Un.Sanaa],cost:25},{nodes:[Un.Sanaa,Un.Mukalla],cost:14},{nodes:[Un.Mukalla,Un.Aden],cost:13},{nodes:[Un.Aden,Un.Alhudaydah],cost:9},{nodes:[Un.Alhudaydah,Un.Abha],cost:10},{nodes:[Un.Abha,Un.Sanaa],cost:11},{nodes:[Un.Sanaa,Un.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"})(Yn||(Yn={})),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"}(Vn||(Vn={}));var $n,qn,Zn,Xn={name:"North America",cities:[{name:Vn.Edmonton,region:Yn.Pink,x:325,y:71},{name:Vn.Calgary,region:Yn.Pink,x:250,y:190},{name:Vn.Vancouver,region:Yn.Pink,x:114,y:266},{name:Vn.Seattle,region:Yn.Pink,x:100,y:387},{name:Vn.Regina,region:Yn.Pink,x:536,y:277},{name:Vn.Winnipeg,region:Yn.Pink,x:830,y:272},{name:Vn.Minneapolis,region:Yn.Pink,x:907,y:486},{name:Vn.Portland,region:Yn.Brown,x:122,y:516},{name:Vn.SanFrancisco,region:Yn.Brown,x:123,y:697},{name:Vn.LosAngeles,region:Yn.Brown,x:160,y:911},{name:Vn.SanDiego,region:Yn.Brown,x:223,y:1007},{name:Vn.SaltLakeCity,region:Yn.Brown,x:380,y:555},{name:Vn.LasVegas,region:Yn.Brown,x:322,y:760},{name:Vn.Denver,region:Yn.Brown,x:569,y:694},{name:Vn.Albuquerque,region:Yn.Orange,x:539,y:941},{name:Vn.Juarez,region:Yn.Orange,x:558,y:1043},{name:Vn.Chihuahua,region:Yn.Orange,x:577,y:1183},{name:Vn.Monterrey,region:Yn.Orange,x:791,y:1292},{name:Vn.Guadalajara,region:Yn.Orange,x:715,y:1391},{name:Vn.MexicoCityN,region:Yn.Orange,x:913,y:1335},{name:Vn.MexicoCityS,region:Yn.Orange,x:913,y:1425},{name:Vn.SanAntonio,region:Yn.Green,x:767,y:1172},{name:Vn.DallasFortWorth,region:Yn.Green,x:850,y:1020},{name:Vn.Houston,region:Yn.Green,x:940,y:1145},{name:Vn.NewOrleans,region:Yn.Green,x:1126,y:1095},{name:Vn.Atlanta,region:Yn.Green,x:1318,y:1021},{name:Vn.Jacksonville,region:Yn.Green,x:1398,y:1109},{name:Vn.Miami,region:Yn.Green,x:1398,y:1235},{name:Vn.Milwaukee,region:Yn.Blue,x:1206,y:414},{name:Vn.Chicago,region:Yn.Blue,x:1121,y:531},{name:Vn.KansasCity,region:Yn.Blue,x:825,y:720},{name:Vn.StLouis,region:Yn.Blue,x:1047,y:768},{name:Vn.Indianapolis,region:Yn.Blue,x:1206,y:694},{name:Vn.OklahomaCity,region:Yn.Blue,x:800,y:870},{name:Vn.Memphis,region:Yn.Blue,x:1099,y:938},{name:Vn.Toronto,region:Yn.Yellow,x:1488,y:513},{name:Vn.Detroit,region:Yn.Yellow,x:1390,y:590},{name:Vn.Pittsburgh,region:Yn.Yellow,x:1524,y:659},{name:Vn.Columbus,region:Yn.Yellow,x:1398,y:733},{name:Vn.Nashville,region:Yn.Yellow,x:1233,y:826},{name:Vn.Washington,region:Yn.Yellow,x:1554,y:829},{name:Vn.Charlotte,region:Yn.Yellow,x:1480,y:965},{name:Vn.Quebec,region:Yn.Red,x:1911,y:354},{name:Vn.Ottawa,region:Yn.Red,x:1653,y:458},{name:Vn.Montreal,region:Yn.Red,x:1875,y:461},{name:Vn.NewYorkN,region:Yn.Red,x:1727,y:561},{name:Vn.NewYorkS,region:Yn.Red,x:1727,y:637},{name:Vn.Boston,region:Yn.Red,x:1928,y:579},{name:Vn.Philadelphia,region:Yn.Red,x:1724,y:755}],connections:[{nodes:[Vn.Edmonton,Vn.Calgary],cost:5},{nodes:[Vn.Calgary,Vn.Vancouver],cost:16},{nodes:[Vn.Vancouver,Vn.Seattle],cost:4},{nodes:[Vn.Edmonton,Vn.Regina],cost:15},{nodes:[Vn.Calgary,Vn.Regina],cost:14},{nodes:[Vn.Vancouver,Vn.Regina],cost:28},{nodes:[Vn.Regina,Vn.Winnipeg],cost:11},{nodes:[Vn.Winnipeg,Vn.Minneapolis],cost:13},{nodes:[Vn.Seattle,Vn.Portland],cost:5},{nodes:[Vn.Regina,Vn.SaltLakeCity],cost:29},{nodes:[Vn.Regina,Vn.Denver],cost:24},{nodes:[Vn.Winnipeg,Vn.Denver],cost:26},{nodes:[Vn.Minneapolis,Vn.Denver],cost:23},{nodes:[Vn.Portland,Vn.SanFrancisco],cost:20},{nodes:[Vn.SanFrancisco,Vn.LosAngeles],cost:12},{nodes:[Vn.LosAngeles,Vn.SanDiego],cost:3},{nodes:[Vn.Portland,Vn.SaltLakeCity],cost:22},{nodes:[Vn.SanFrancisco,Vn.SaltLakeCity],cost:22},{nodes:[Vn.SanFrancisco,Vn.LasVegas],cost:16},{nodes:[Vn.SaltLakeCity,Vn.LasVegas],cost:14},{nodes:[Vn.LasVegas,Vn.LosAngeles],cost:8},{nodes:[Vn.SaltLakeCity,Vn.Denver],cost:14},{nodes:[Vn.LasVegas,Vn.Denver],cost:25},{nodes:[Vn.LosAngeles,Vn.Albuquerque],cost:25},{nodes:[Vn.LasVegas,Vn.Albuquerque],cost:18},{nodes:[Vn.Denver,Vn.Albuquerque],cost:12},{nodes:[Vn.SanDiego,Vn.Juarez],cost:22},{nodes:[Vn.Albuquerque,Vn.Juarez],cost:9},{nodes:[Vn.Juarez,Vn.Chihuahua],cost:8},{nodes:[Vn.Chihuahua,Vn.Monterrey],cost:14},{nodes:[Vn.Chihuahua,Vn.Guadalajara],cost:23},{nodes:[Vn.Monterrey,Vn.Guadalajara],cost:16},{nodes:[Vn.Monterrey,Vn.MexicoCityS],cost:17},{nodes:[Vn.Guadalajara,Vn.MexicoCityS],cost:10},{nodes:[Vn.MexicoCityN,Vn.MexicoCityS],cost:0},{nodes:[Vn.Albuquerque,Vn.OklahomaCity],cost:18},{nodes:[Vn.Juarez,Vn.DallasFortWorth],cost:19},{nodes:[Vn.Juarez,Vn.SanAntonio],cost:18},{nodes:[Vn.Chihuahua,Vn.SanAntonio],cost:16},{nodes:[Vn.Monterrey,Vn.SanAntonio],cost:10},{nodes:[Vn.Milwaukee,Vn.Chicago],cost:3},{nodes:[Vn.Chicago,Vn.KansasCity],cost:16},{nodes:[Vn.Chicago,Vn.StLouis],cost:9},{nodes:[Vn.Chicago,Vn.Indianapolis],cost:6},{nodes:[Vn.KansasCity,Vn.StLouis],cost:8},{nodes:[Vn.StLouis,Vn.Indianapolis],cost:8},{nodes:[Vn.KansasCity,Vn.OklahomaCity],cost:10},{nodes:[Vn.KansasCity,Vn.Memphis],cost:14},{nodes:[Vn.StLouis,Vn.Memphis],cost:9},{nodes:[Vn.OklahomaCity,Vn.Memphis],cost:15},{nodes:[Vn.Milwaukee,Vn.Minneapolis],cost:10},{nodes:[Vn.KansasCity,Vn.Minneapolis],cost:14},{nodes:[Vn.KansasCity,Vn.Denver],cost:19},{nodes:[Vn.OklahomaCity,Vn.Denver],cost:17},{nodes:[Vn.OklahomaCity,Vn.DallasFortWorth],cost:7},{nodes:[Vn.Memphis,Vn.DallasFortWorth],cost:15},{nodes:[Vn.Memphis,Vn.NewOrleans],cost:14},{nodes:[Vn.Memphis,Vn.Atlanta],cost:12},{nodes:[Vn.DallasFortWorth,Vn.SanAntonio],cost:9},{nodes:[Vn.DallasFortWorth,Vn.Houston],cost:8},{nodes:[Vn.DallasFortWorth,Vn.NewOrleans],cost:16},{nodes:[Vn.SanAntonio,Vn.Houston],cost:6},{nodes:[Vn.Houston,Vn.NewOrleans],cost:12},{nodes:[Vn.NewOrleans,Vn.Atlanta],cost:16},{nodes:[Vn.NewOrleans,Vn.Jacksonville],cost:20},{nodes:[Vn.Atlanta,Vn.Jacksonville],cost:10},{nodes:[Vn.Jacksonville,Vn.Miami],cost:12},{nodes:[Vn.Atlanta,Vn.Nashville],cost:9},{nodes:[Vn.Atlanta,Vn.Charlotte],cost:8},{nodes:[Vn.Jacksonville,Vn.Charlotte],cost:12},{nodes:[Vn.Toronto,Vn.Detroit],cost:8},{nodes:[Vn.Toronto,Vn.Pittsburgh],cost:11},{nodes:[Vn.Detroit,Vn.Columbus],cost:7},{nodes:[Vn.Columbus,Vn.Pittsburgh],cost:6},{nodes:[Vn.Nashville,Vn.Columbus],cost:15},{nodes:[Vn.Nashville,Vn.Washington],cost:22},{nodes:[Vn.Nashville,Vn.Charlotte],cost:12},{nodes:[Vn.Columbus,Vn.Washington],cost:12},{nodes:[Vn.Washington,Vn.Pittsburgh],cost:7},{nodes:[Vn.Washington,Vn.Charlotte],cost:12},{nodes:[Vn.Detroit,Vn.Chicago],cost:10},{nodes:[Vn.Columbus,Vn.Chicago],cost:10},{nodes:[Vn.Columbus,Vn.Indianapolis],cost:7},{nodes:[Vn.Nashville,Vn.Indianapolis],cost:9},{nodes:[Vn.Nashville,Vn.StLouis],cost:9},{nodes:[Vn.Nashville,Vn.Memphis],cost:7},{nodes:[Vn.Toronto,Vn.Ottawa],cost:8},{nodes:[Vn.Toronto,Vn.NewYorkS],cost:14},{nodes:[Vn.Pittsburgh,Vn.NewYorkS],cost:11},{nodes:[Vn.Pittsburgh,Vn.Philadelphia],cost:9},{nodes:[Vn.Washington,Vn.Philadelphia],cost:5},{nodes:[Vn.Quebec,Vn.Montreal],cost:5},{nodes:[Vn.Montreal,Vn.Boston],cost:9},{nodes:[Vn.Ottawa,Vn.Montreal],cost:3},{nodes:[Vn.Ottawa,Vn.NewYorkS],cost:13},{nodes:[Vn.Montreal,Vn.NewYorkS],cost:12},{nodes:[Vn.NewYorkS,Vn.Boston],cost:7},{nodes:[Vn.NewYorkS,Vn.Philadelphia],cost:3},{nodes:[Vn.NewYorkN,Vn.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"})(qn||(qn={})),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["Riga"]="Riga",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"}(Zn||(Zn={}));var Qn,et,nt={name:"Northern Europe",cities:[{name:Zn.Oulu,region:qn.Brown,x:514,y:376},{name:Zn.Kuopid,region:qn.Brown,x:551,y:474},{name:Zn.Tampere,region:qn.Brown,x:492,y:544},{name:Zn.Helsinki,region:qn.Brown,x:530,y:602},{name:Zn.Espoo,region:qn.Brown,x:457,y:603},{name:Zn.Pori,region:qn.Brown,x:400,y:526},{name:Zn.Turku,region:qn.Brown,x:409,y:593},{name:Zn.Uppsala,region:qn.Yellow,x:350,y:585},{name:Zn.Stockholm,region:qn.Yellow,x:380,y:660},{name:Zn.Vasteras,region:qn.Yellow,x:295,y:576},{name:Zn.Drebro,region:qn.Yellow,x:295,y:628},{name:Zn.Sundsvall,region:qn.Yellow,x:332,y:506},{name:Zn.Lulea,region:qn.Yellow,x:423,y:345},{name:Zn.Ostersund,region:qn.Yellow,x:272,y:462},{name:Zn.Tallinn,region:qn.Pink,x:475,y:656},{name:Zn.Tartu,region:qn.Pink,x:544,y:689},{name:Zn.Daugavpils,region:qn.Pink,x:547,y:771},{name:Zn.Vilnius,region:qn.Pink,x:520,y:819},{name:Zn.Kaunas,region:qn.Pink,x:458,y:811},{name:Zn.Riga,region:qn.Pink,x:472,y:734},{name:Zn.Klaipeda,region:qn.Pink,x:411,y:784},{name:Zn.Karlstad,region:qn.Purple,x:246,y:629},{name:Zn.Linkopinc,region:qn.Purple,x:309,y:676},{name:Zn.Jonkoping,region:qn.Purple,x:285,y:712},{name:Zn.Visby,region:qn.Purple,x:364,y:717},{name:Zn.Kristianstad,region:qn.Purple,x:330,y:750},{name:Zn.Malmo,region:qn.Purple,x:287,y:787},{name:Zn.Goteborg,region:qn.Purple,x:231,y:700},{name:Zn.Aalborg,region:qn.Orange,x:177,y:717},{name:Zn.Aarhus,region:qn.Orange,x:195,y:758},{name:Zn.Kobenhavn,region:qn.Orange,x:228,y:792},{name:Zn.Nykobingfalster,region:qn.Orange,x:238,y:842},{name:Zn.Ringkobing,region:qn.Orange,x:120,y:733},{name:Zn.Esbjerg,region:qn.Orange,x:104,y:787},{name:Zn.Odense,region:qn.Orange,x:148,y:824},{name:Zn.Tromso,region:qn.Red,x:371,y:122},{name:Zn.Bood,region:qn.Red,x:276,y:254},{name:Zn.Trondheim,region:qn.Red,x:173,y:450},{name:Zn.Oslo,region:qn.Red,x:176,y:606},{name:Zn.Arendal,region:qn.Red,x:145,y:651},{name:Zn.Bergen,region:qn.Red,x:68,y:586},{name:Zn.Stavanger,region:qn.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:($n={},i($n,qn.Orange,[{number:19,type:ve.Oil,cost:2,citiesPowered:4},{number:26,type:ve.Oil,cost:3,citiesPowered:5}]),i($n,qn.Red,[{number:7,type:ve.Wind,cost:0,citiesPowered:1},{number:46,type:ve.Wind,cost:0,citiesPowered:6}]),i($n,qn.Purple,[{number:10,type:ve.Uranium,cost:2,citiesPowered:3},{number:39,type:ve.Wind,cost:0,citiesPowered:5}]),i($n,qn.Yellow,[{number:21,type:ve.Wind,cost:0,citiesPowered:2},{number:25,type:ve.Uranium,cost:1,citiesPowered:4}]),i($n,qn.Brown,[{number:32,type:ve.Garbage,cost:2,citiesPowered:6},{number:44,type:ve.Uranium,cost:1,citiesPowered:7}]),i($n,qn.Pink,[{number:18,type:ve.Oil,cost:1,citiesPowered:3},{number:22,type:ve.Wind,cost:0,citiesPowered:3}]),$n),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:[Zn.Bood,Zn.Tromso],cost:17},{nodes:[Zn.Tromso,Zn.Oulu],cost:25},{nodes:[Zn.Oulu,Zn.Kuopid],cost:10},{nodes:[Zn.Lulea,Zn.Tromso],cost:19},{nodes:[Zn.Lulea,Zn.Oulu],cost:13},{nodes:[Zn.Oulu,Zn.Pori],cost:15},{nodes:[Zn.Oulu,Zn.Tampere],cost:14},{nodes:[Zn.Sundsvall,Zn.Lulea],cost:16},{nodes:[Zn.Lulea,Zn.Bood],cost:16},{nodes:[Zn.Bood,Zn.Ostersund],cost:18},{nodes:[Zn.Ostersund,Zn.Lulea],cost:17},{nodes:[Zn.Lulea,Zn.Pori],cost:22},{nodes:[Zn.Pori,Zn.Sundsvall],cost:17},{nodes:[Zn.Bood,Zn.Trondheim],cost:21},{nodes:[Zn.Trondheim,Zn.Bergen],cost:17},{nodes:[Zn.Trondheim,Zn.Oslo],cost:17},{nodes:[Zn.Oslo,Zn.Ostersund],cost:18},{nodes:[Zn.Ostersund,Zn.Karlstad],cost:16},{nodes:[Zn.Bergen,Zn.Oslo],cost:15},{nodes:[Zn.Oslo,Zn.Stavanger],cost:11},{nodes:[Zn.Stavanger,Zn.Arendal],cost:8},{nodes:[Zn.Arendal,Zn.Oslo],cost:7},{nodes:[Zn.Bergen,Zn.Stavanger],cost:9},{nodes:[Zn.Arendal,Zn.Ringkobing],cost:19},{nodes:[Zn.Ringkobing,Zn.Esbjerg],cost:4},{nodes:[Zn.Esbjerg,Zn.Odense],cost:5},{nodes:[Zn.Odense,Zn.Nykobingfalster],cost:8},{nodes:[Zn.Arendal,Zn.Aalborg],cost:16},{nodes:[Zn.Arendal,Zn.Goteborg],cost:19},{nodes:[Zn.Goteborg,Zn.Oslo],cost:11},{nodes:[Zn.Oslo,Zn.Karlstad],cost:7},{nodes:[Zn.Karlstad,Zn.Goteborg],cost:9},{nodes:[Zn.Karlstad,Zn.Jonkoping],cost:9},{nodes:[Zn.Karlstad,Zn.Linkopinc],cost:7},{nodes:[Zn.Tampere,Zn.Kuopid],cost:10},{nodes:[Zn.Tampere,Zn.Pori],cost:4},{nodes:[Zn.Tampere,Zn.Turku],cost:5},{nodes:[Zn.Tampere,Zn.Espoo],cost:5},{nodes:[Zn.Tampere,Zn.Helsinki],cost:6},{nodes:[Zn.Helsinki,Zn.Espoo],cost:2},{nodes:[Zn.Espoo,Zn.Tallinn],cost:7},{nodes:[Zn.Tallinn,Zn.Helsinki],cost:7},{nodes:[Zn.Visby,Zn.Kristianstad],cost:13},{nodes:[Zn.Visby,Zn.Klaipeda],cost:19},{nodes:[Zn.Visby,Zn.Riga],cost:20},{nodes:[Zn.Riga,Zn.Tallinn],cost:11},{nodes:[Zn.Tallinn,Zn.Tartu],cost:5},{nodes:[Zn.Tartu,Zn.Daugavpils],cost:9},{nodes:[Zn.Riga,Zn.Tartu],cost:7},{nodes:[Zn.Daugavpils,Zn.Kaunas],cost:7},{nodes:[Zn.Kaunas,Zn.Vilnius],cost:3},{nodes:[Zn.Kaunas,Zn.Klaipeda],cost:7},{nodes:[Zn.Klaipeda,Zn.Riga],cost:8},{nodes:[Zn.Riga,Zn.Kaunas],cost:8},{nodes:[Zn.Riga,Zn.Daugavpils],cost:7},{nodes:[Zn.Daugavpils,Zn.Vilnius],cost:5},{nodes:[Zn.Vasteras,Zn.Sundsvall],cost:10},{nodes:[Zn.Sundsvall,Zn.Ostersund],cost:7},{nodes:[Zn.Uppsala,Zn.Stockholm],cost:2},{nodes:[Zn.Uppsala,Zn.Turku],cost:15},{nodes:[Zn.Uppsala,Zn.Pori],cost:17},{nodes:[Zn.Uppsala,Zn.Sundsvall],cost:11},{nodes:[Zn.Vasteras,Zn.Drebro],cost:5},{nodes:[Zn.Drebro,Zn.Linkopinc],cost:3},{nodes:[Zn.Linkopinc,Zn.Stockholm],cost:7},{nodes:[Zn.Visby,Zn.Stockholm],cost:12},{nodes:[Zn.Visby,Zn.Linkopinc],cost:9},{nodes:[Zn.Jonkoping,Zn.Malmo],cost:10},{nodes:[Zn.Jonkoping,Zn.Kristianstad],cost:8},{nodes:[Zn.Kristianstad,Zn.Malmo],cost:3},{nodes:[Zn.Malmo,Zn.Kobenhavn],cost:3},{nodes:[Zn.Kobenhavn,Zn.Nykobingfalster],cost:6},{nodes:[Zn.Odense,Zn.Aarhus],cost:7},{nodes:[Zn.Aarhus,Zn.Aalborg],cost:3},{nodes:[Zn.Aalborg,Zn.Goteborg],cost:11},{nodes:[Zn.Kobenhavn,Zn.Goteborg],cost:18},{nodes:[Zn.Goteborg,Zn.Jonkoping],cost:4},{nodes:[Zn.Trondheim,Zn.Ostersund],cost:9},{nodes:[Zn.Vasteras,Zn.Stockholm],cost:4},{nodes:[Zn.Esbjerg,Zn.Aarhus],cost:5},{nodes:[Zn.Jonkoping,Zn.Linkopinc],cost:5},{nodes:[Zn.Kobenhavn,Zn.Jonkoping],cost:12},{nodes:[Zn.Karlstad,Zn.Drebro],cost:4},{nodes:[Zn.Vasteras,Zn.Uppsala],cost:2},{nodes:[Zn.Odense,Zn.Kobenhavn],cost:7},{nodes:[Zn.Kobenhavn,Zn.Aarhus],cost:10},{nodes:[Zn.Ringkobing,Zn.Aalborg],cost:5},{nodes:[Zn.Linkopinc,Zn.Kristianstad],cost:9},{nodes:[Zn.Drebro,Zn.Stockholm],cost:7},{nodes:[Zn.Espoo,Zn.Turku],cost:4},{nodes:[Zn.Pori,Zn.Turku],cost:4}]};(function(e){e["Green"]="green",e["Brown"]="brown",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple"})(Qn||(Qn={})),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"}(et||(et={}));var tt,rt,ot={name:"Quebec",cities:[{name:et.Septiles,region:Qn.Green,x:3524,y:228},{name:et.Portcartier,region:Qn.Green,x:3328,y:370},{name:et.Baiecomeau,region:Qn.Green,x:3066,y:630},{name:et.Chicoutimi,region:Qn.Green,x:2392,y:898},{name:et.Alma,region:Qn.Green,x:2172,y:844},{name:et.Roberval,region:Qn.Green,x:1944,y:950},{name:et.Jonquiere,region:Qn.Green,x:2240,y:1052},{name:et.Gaspe,region:Qn.Brown,x:4014,y:808},{name:et.Steannedesmonts,region:Qn.Brown,x:3512,y:708},{name:et.Matane,region:Qn.Brown,x:3244,y:808},{name:et.Rimouski,region:Qn.Brown,x:2990,y:946},{name:et.Pointealacroix,region:Qn.Brown,x:3492,y:1094},{name:et.Riviereduloup,region:Qn.Brown,x:2780,y:1208},{name:et.Montmagny,region:Qn.Brown,x:2522,y:1534},{name:et.Stgeorges,region:Qn.Pink,x:2506,y:1836},{name:et.Sherbrooke,region:Qn.Pink,x:2242,y:2128},{name:et.Victoriaville,region:Qn.Pink,x:2178,y:1822},{name:et.Stsimeon,region:Qn.Pink,x:2576,y:1146},{name:et.Charlesbourg,region:Qn.Pink,x:2246,y:1434},{name:et.Quebec,region:Qn.Pink,x:2302,y:1536},{name:et.Beauport,region:Qn.Pink,x:2196,y:1524},{name:et.Granby,region:Qn.Red,x:1974,y:2160},{name:et.Sthyacinthe,region:Qn.Red,x:1796,y:2038},{name:et.Brossard,region:Qn.Red,x:1790,y:2296},{name:et.Valleyfield,region:Qn.Red,x:1576,y:2306},{name:et.Vaudreuildorion,region:Qn.Red,x:1414,y:2186},{name:et.Montreal,region:Qn.Red,x:1624,y:2052},{name:et.Pointeclaire,region:Qn.Red,x:1510,y:2060},{name:et.Shawinigan,region:Qn.Yellow,x:1864,y:1448},{name:et.Troisrivieres,region:Qn.Yellow,x:1918,y:1650},{name:et.Drummondville,region:Qn.Yellow,x:1984,y:1886},{name:et.Repentigny,region:Qn.Yellow,x:1696,y:1820},{name:et.Longueuil,region:Qn.Yellow,x:1598,y:1964},{name:et.Laval,region:Qn.Yellow,x:1512,y:1990},{name:et.Lachute,region:Qn.Yellow,x:1364,y:1944},{name:et.Amos,region:Qn.Purple,x:492,y:868},{name:et.Valdor,region:Qn.Purple,x:570,y:1098},{name:et.Rouynnoranda,region:Qn.Purple,x:236,y:1028},{name:et.Montlaurier,region:Qn.Purple,x:1180,y:1630},{name:et.Maniwaki,region:Qn.Purple,x:964,y:1760},{name:et.Gatineau,region:Qn.Purple,x:1076,y:2096},{name:et.Hull,region:Qn.Purple,x:862,y:2104}],connections:[{nodes:[et.Maniwaki,et.Montlaurier],cost:5},{nodes:[et.Maniwaki,et.Valdor],cost:24},{nodes:[et.Valdor,et.Amos],cost:8},{nodes:[et.Amos,et.Rouynnoranda],cost:9},{nodes:[et.Rouynnoranda,et.Valdor],cost:12},{nodes:[et.Hull,et.Maniwaki],cost:15},{nodes:[et.Hull,et.Gatineau],cost:0},{nodes:[et.Gatineau,et.Montlaurier],cost:16},{nodes:[et.Montlaurier,et.Lachute],cost:18},{nodes:[et.Shawinigan,et.Troisrivieres],cost:3},{nodes:[et.Troisrivieres,et.Drummondville],cost:9},{nodes:[et.Drummondville,et.Victoriaville],cost:6},{nodes:[et.Victoriaville,et.Stgeorges],cost:10},{nodes:[et.Stgeorges,et.Sherbrooke],cost:15},{nodes:[et.Sherbrooke,et.Granby],cost:8},{nodes:[et.Granby,et.Sthyacinthe],cost:4},{nodes:[et.Sthyacinthe,et.Drummondville],cost:6},{nodes:[et.Troisrivieres,et.Victoriaville],cost:9},{nodes:[et.Victoriaville,et.Sherbrooke],cost:9},{nodes:[et.Sherbrooke,et.Drummondville],cost:9},{nodes:[et.Sthyacinthe,et.Repentigny],cost:7},{nodes:[et.Sthyacinthe,et.Brossard],cost:5},{nodes:[et.Brossard,et.Valleyfield],cost:8},{nodes:[et.Valleyfield,et.Vaudreuildorion],cost:4},{nodes:[et.Gatineau,et.Lachute],cost:14},{nodes:[et.Montlaurier,et.Shawinigan],cost:28},{nodes:[et.Shawinigan,et.Beauport],cost:14},{nodes:[et.Beauport,et.Troisrivieres],cost:15},{nodes:[et.Troisrivieres,et.Repentigny],cost:13},{nodes:[et.Repentigny,et.Longueuil],cost:3},{nodes:[et.Laval,et.Lachute],cost:6},{nodes:[et.Vaudreuildorion,et.Pointeclaire],cost:3},{nodes:[et.Montreal,et.Brossard],cost:4},{nodes:[et.Laval,et.Longueuil],cost:0},{nodes:[et.Pointeclaire,et.Montreal],cost:0},{nodes:[et.Montreal,et.Longueuil],cost:0},{nodes:[et.Pointeclaire,et.Laval],cost:0},{nodes:[et.Beauport,et.Charlesbourg],cost:0},{nodes:[et.Charlesbourg,et.Quebec],cost:0},{nodes:[et.Quebec,et.Beauport],cost:0},{nodes:[et.Victoriaville,et.Beauport],cost:12},{nodes:[et.Quebec,et.Stgeorges],cost:12},{nodes:[et.Stgeorges,et.Montmagny],cost:12},{nodes:[et.Montmagny,et.Riviereduloup],cost:16},{nodes:[et.Jonquiere,et.Charlesbourg],cost:21},{nodes:[et.Montmagny,et.Quebec],cost:5},{nodes:[et.Stsimeon,et.Charlesbourg],cost:18},{nodes:[et.Drummondville,et.Granby],cost:4},{nodes:[et.Roberval,et.Shawinigan],cost:25},{nodes:[et.Jonquiere,et.Stsimeon],cost:16},{nodes:[et.Roberval,et.Jonquiere],cost:10},{nodes:[et.Jonquiere,et.Alma],cost:4},{nodes:[et.Alma,et.Chicoutimi],cost:4},{nodes:[et.Jonquiere,et.Chicoutimi],cost:0},{nodes:[et.Chicoutimi,et.Baiecomeau],cost:23},{nodes:[et.Stsimeon,et.Baiecomeau],cost:23},{nodes:[et.Baiecomeau,et.Portcartier],cost:16},{nodes:[et.Septiles,et.Portcartier],cost:6},{nodes:[et.Riviereduloup,et.Rimouski],cost:12},{nodes:[et.Rimouski,et.Matane],cost:11},{nodes:[et.Matane,et.Pointealacroix],cost:15},{nodes:[et.Matane,et.Steannedesmonts],cost:10},{nodes:[et.Pointealacroix,et.Steannedesmonts],cost:16},{nodes:[et.Steannedesmonts,et.Gaspe],cost:21},{nodes:[et.Gaspe,et.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"])($e);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=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)];var u=a.pop();a=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(s),a=Ne(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})),h=a.filter((function(e){return 18==e.number||22==e.number})),p=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=Ne(g,t()+"").slice(1),y=Ne(y,t()+"").slice(5)):3==e?(g=Ne(g,t()+"").slice(2),y=Ne(y,t()+"").slice(6)):4==e&&(g=Ne(g,t()+"").slice(1),y=Ne(y,t()+"").slice(3));var m=Ne(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(p).concat(y),a=Ne(a,t()+""),a=b.concat(h).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"})(tt||(tt={})),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"}(rt||(rt={}));var at,it,st={name:"Russia",cities:[{name:rt.Murmansk,region:tt.Green,x:1574,y:351},{name:rt.Arkhangelsk,region:tt.Green,x:1456,y:695},{name:rt.Syktyvkar,region:tt.Green,x:1669,y:1005},{name:rt.Kirov,region:tt.Green,x:1457,y:1172},{name:rt.Kazan,region:tt.Green,x:1378,y:1478},{name:rt.Cheboksary,region:tt.Green,x:1200,y:1328},{name:rt.Ulyanovsk,region:tt.Green,x:884,y:1448},{name:rt.Tula,region:tt.Pink,x:485,y:1077},{name:rt.Kaliningrad,region:tt.Pink,x:394,y:606},{name:rt.Ryazan,region:tt.Pink,x:793,y:1193},{name:rt.Nizhnynovgorod,region:tt.Pink,x:1129,y:1116},{name:rt.Moscow,region:tt.Pink,x:763,y:961},{name:rt.Stpetersburg,region:tt.Pink,x:883,y:597},{name:rt.Yaroslavl,region:tt.Pink,x:1018,y:915},{name:rt.Chita,region:tt.Red,x:4168,y:2048},{name:rt.Bratsk,region:tt.Red,x:3599,y:1808},{name:rt.Krasnoyarsk,region:tt.Red,x:3230,y:1930},{name:rt.Kemerovd,region:tt.Red,x:2953,y:1987},{name:rt.Novokuznetsk,region:tt.Red,x:3041,y:2159},{name:rt.Irkutsk,region:tt.Red,x:3721,y:2162},{name:rt.Ulanude,region:tt.Red,x:4030,y:2228},{name:rt.Norilsk,region:tt.Yellow,x:3001,y:856},{name:rt.Surgut,region:tt.Yellow,x:2348,y:1411},{name:rt.Tyumen,region:tt.Yellow,x:2060,y:1627},{name:rt.Tomsk,region:tt.Yellow,x:2773,y:1835},{name:rt.Novosibirsk,region:tt.Yellow,x:2647,y:2005},{name:rt.Barnaul,region:tt.Yellow,x:2662,y:2191},{name:rt.Omsk,region:tt.Yellow,x:2195,y:1957},{name:rt.Chelyabinsk,region:tt.Purple,x:1768,y:1865},{name:rt.Ufa,region:tt.Purple,x:1472,y:1907},{name:rt.Perm,region:tt.Purple,x:1688,y:1388},{name:rt.Yekaterinburg,region:tt.Purple,x:1757,y:1620},{name:rt.Orenburg,region:tt.Purple,x:1250,y:1997},{name:rt.Naberezhnyechelny,region:tt.Purple,x:1427,y:1709},{name:rt.Samara,region:tt.Purple,x:1132,y:1701},{name:rt.Astrakhan,region:tt.Brown,x:619,y:2092},{name:rt.Makhachkala,region:tt.Brown,x:317,y:2262},{name:rt.Saratov,region:tt.Brown,x:808,y:1661},{name:rt.Volgograd,region:tt.Brown,x:589,y:1795},{name:rt.Krasnodar,region:tt.Brown,x:260,y:1865},{name:rt.Rostov,region:tt.Brown,x:311,y:1658},{name:rt.Voronezh,region:tt.Brown,x:485,y:1409}],connections:[{nodes:[rt.Kaliningrad,rt.Stpetersburg],cost:15},{nodes:[rt.Stpetersburg,rt.Murmansk],cost:19},{nodes:[rt.Murmansk,rt.Arkhangelsk],cost:15},{nodes:[rt.Arkhangelsk,rt.Stpetersburg],cost:14},{nodes:[rt.Tula,rt.Kaliningrad],cost:20},{nodes:[rt.Tula,rt.Moscow],cost:3},{nodes:[rt.Moscow,rt.Ryazan],cost:3},{nodes:[rt.Ryazan,rt.Voronezh],cost:5},{nodes:[rt.Voronezh,rt.Tula],cost:5},{nodes:[rt.Tula,rt.Stpetersburg],cost:13},{nodes:[rt.Tula,rt.Ryazan],cost:0},{nodes:[rt.Stpetersburg,rt.Moscow],cost:10},{nodes:[rt.Moscow,rt.Yaroslavl],cost:3},{nodes:[rt.Yaroslavl,rt.Nizhnynovgorod],cost:4},{nodes:[rt.Nizhnynovgorod,rt.Moscow],cost:7},{nodes:[rt.Yaroslavl,rt.Stpetersburg],cost:9},{nodes:[rt.Yaroslavl,rt.Arkhangelsk],cost:12},{nodes:[rt.Arkhangelsk,rt.Syktyvkar],cost:10},{nodes:[rt.Syktyvkar,rt.Surgut],cost:21},{nodes:[rt.Perm,rt.Syktyvkar],cost:8},{nodes:[rt.Syktyvkar,rt.Kirov],cost:6},{nodes:[rt.Syktyvkar,rt.Nizhnynovgorod],cost:11},{nodes:[rt.Nizhnynovgorod,rt.Arkhangelsk],cost:15},{nodes:[rt.Nizhnynovgorod,rt.Cheboksary],cost:3},{nodes:[rt.Cheboksary,rt.Ulyanovsk],cost:4},{nodes:[rt.Ulyanovsk,rt.Voronezh],cost:11},{nodes:[rt.Voronezh,rt.Volgograd],cost:8},{nodes:[rt.Volgograd,rt.Saratov],cost:6},{nodes:[rt.Saratov,rt.Samara],cost:5},{nodes:[rt.Samara,rt.Ulyanovsk],cost:3},{nodes:[rt.Ulyanovsk,rt.Kazan],cost:3},{nodes:[rt.Kazan,rt.Samara],cost:4},{nodes:[rt.Samara,rt.Naberezhnyechelny],cost:5},{nodes:[rt.Cheboksary,rt.Kazan],cost:2},{nodes:[rt.Cheboksary,rt.Kirov],cost:5},{nodes:[rt.Kirov,rt.Kazan],cost:5},{nodes:[rt.Kazan,rt.Perm],cost:8},{nodes:[rt.Kazan,rt.Naberezhnyechelny],cost:3},{nodes:[rt.Naberezhnyechelny,rt.Ufa],cost:4},{nodes:[rt.Ufa,rt.Orenburg],cost:6},{nodes:[rt.Orenburg,rt.Samara],cost:6},{nodes:[rt.Orenburg,rt.Naberezhnyechelny],cost:7},{nodes:[rt.Ufa,rt.Chelyabinsk],cost:8},{nodes:[rt.Chelyabinsk,rt.Yekaterinburg],cost:3},{nodes:[rt.Yekaterinburg,rt.Perm],cost:5},{nodes:[rt.Perm,rt.Kirov],cost:6},{nodes:[rt.Chelyabinsk,rt.Tyumen],cost:5},{nodes:[rt.Tyumen,rt.Surgut],cost:10},{nodes:[rt.Syktyvkar,rt.Tyumen],cost:17},{nodes:[rt.Tyumen,rt.Yekaterinburg],cost:5},{nodes:[rt.Chelyabinsk,rt.Omsk],cost:13},{nodes:[rt.Omsk,rt.Tyumen],cost:9},{nodes:[rt.Tyumen,rt.Tomsk],cost:19},{nodes:[rt.Tomsk,rt.Surgut],cost:15},{nodes:[rt.Tomsk,rt.Novosibirsk],cost:4},{nodes:[rt.Novosibirsk,rt.Barnaul],cost:4},{nodes:[rt.Barnaul,rt.Omsk],cost:11},{nodes:[rt.Omsk,rt.Novosibirsk],cost:10},{nodes:[rt.Omsk,rt.Tomsk],cost:12},{nodes:[rt.Rostov,rt.Krasnodar],cost:4},{nodes:[rt.Krasnodar,rt.Volgograd],cost:9},{nodes:[rt.Volgograd,rt.Astrakhan],cost:6},{nodes:[rt.Krasnodar,rt.Makhachkala],cost:14},{nodes:[rt.Makhachkala,rt.Astrakhan],cost:8},{nodes:[rt.Makhachkala,rt.Volgograd],cost:11},{nodes:[rt.Rostov,rt.Volgograd],cost:7},{nodes:[rt.Ryazan,rt.Ulyanovsk],cost:9},{nodes:[rt.Ulyanovsk,rt.Saratov],cost:6},{nodes:[rt.Saratov,rt.Voronezh],cost:8},{nodes:[rt.Rostov,rt.Voronezh],cost:9},{nodes:[rt.Naberezhnyechelny,rt.Perm],cost:6},{nodes:[rt.Naberezhnyechelny,rt.Yekaterinburg],cost:8},{nodes:[rt.Ufa,rt.Yekaterinburg],cost:6},{nodes:[rt.Chita,rt.Ulanude],cost:6},{nodes:[rt.Ulanude,rt.Irkutsk],cost:6},{nodes:[rt.Irkutsk,rt.Novokuznetsk],cost:21},{nodes:[rt.Novokuznetsk,rt.Kemerovd],cost:3},{nodes:[rt.Kemerovd,rt.Tomsk],cost:3},{nodes:[rt.Novosibirsk,rt.Novokuznetsk],cost:5},{nodes:[rt.Novosibirsk,rt.Kemerovd],cost:4},{nodes:[rt.Novokuznetsk,rt.Barnaul],cost:6},{nodes:[rt.Kemerovd,rt.Krasnoyarsk],cost:7},{nodes:[rt.Krasnoyarsk,rt.Novokuznetsk],cost:7},{nodes:[rt.Krasnoyarsk,rt.Irkutsk],cost:17},{nodes:[rt.Krasnoyarsk,rt.Bratsk],cost:10},{nodes:[rt.Bratsk,rt.Tomsk],cost:17},{nodes:[rt.Bratsk,rt.Irkutsk],cost:10},{nodes:[rt.Bratsk,rt.Ulanude],cost:14},{nodes:[rt.Tomsk,rt.Norilsk],cost:24},{nodes:[rt.Norilsk,rt.Bratsk],cost:29},{nodes:[rt.Norilsk,rt.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"])($e),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=sr(10),c=sr(11),u=sr(13),l=r.filter((function(e){return 12==e.number||e.number>=15})),d=Ne(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=Ne(f,t()+""),r=[u].concat(f,d.slice(3),i)}else{var h=r.filter((function(e){return e.number<=15&&6!=e.number&&14!=e.number})),p=Ne(h,t()+""),g=r.filter((function(e){return e.number>=16})),y=Ne(g,t()+"");2==e?y=y.slice(6):3==e?y=y.slice(8):4==e&&(y=y.slice(4));var m=p.slice(0,6),v=p.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"})(at||(at={})),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"}(it||(it={}));var ct,ut,lt={name:"South Africa",cities:[{name:it.Zimbabwe,region:at.Orange,x:903,y:50,singleOccupancy:!0},{name:it.Musina,region:at.Orange,x:874,y:134},{name:it.Botswana,region:at.Orange,x:560,y:187,singleOccupancy:!0},{name:it.Polokwane,region:at.Orange,x:802,y:189},{name:it.PretoriaN,region:at.Orange,x:759,y:261},{name:it.PretoriaS,region:at.Orange,x:759,y:291},{name:it.Rustenburg,region:at.Orange,x:632,y:232},{name:it.Mozambique,region:at.Green,x:1011,y:170,singleOccupancy:!0},{name:it.Mbombela,region:at.Green,x:891,y:275},{name:it.Eswatini,region:at.Green,x:926,y:351,singleOccupancy:!0},{name:it.Germiston,region:at.Green,x:836,y:351},{name:it.JohannesburgN,region:at.Green,x:753,y:343},{name:it.JohannesburgS,region:at.Green,x:754,y:371},{name:it.Ladysmith,region:at.Green,x:823,y:456},{name:it.Newcastle,region:at.Yellow,x:957,y:478},{name:it.Pietermaritzburg,region:at.Yellow,x:851,y:511},{name:it.DurbanN,region:at.Yellow,x:894,y:563},{name:it.DurbanS,region:at.Yellow,x:893,y:592},{name:it.Mthatha,region:at.Yellow,x:791,y:663},{name:it.Lesotho,region:at.Yellow,x:759,y:523,singleOccupancy:!0},{name:it.Bloemfontein,region:at.Yellow,x:656,y:509},{name:it.Klerksdorp,region:at.Brown,x:660,y:362},{name:it.Welkom,region:at.Brown,x:652,y:431},{name:it.Kuruman,region:at.Brown,x:499,y:386},{name:it.Kimberly,region:at.Brown,x:564,y:496},{name:it.Upington,region:at.Brown,x:378,y:453},{name:it.Springbok,region:at.Brown,x:211,y:530},{name:it.Namibia,region:at.Brown,x:189,y:311,singleOccupancy:!0},{name:it.DeAar,region:at.Red,x:539,y:665},{name:it.BeaufortWest,region:at.Red,x:427,y:705},{name:it.EastLondon,region:at.Red,x:722,y:750},{name:it.PortElizabeth,region:at.Red,x:600,y:811},{name:it.George,region:at.Red,x:439,y:811},{name:it.CapeTownN,region:at.Red,x:233,y:783},{name:it.CapeTownS,region:at.Red,x:231,y:812}],connections:[{nodes:[it.Springbok,it.Namibia],cost:30},{nodes:[it.Bloemfontein,it.Lesotho],cost:30},{nodes:[it.Germiston,it.Eswatini],cost:30},{nodes:[it.Mbombela,it.Mozambique],cost:30},{nodes:[it.Botswana,it.Rustenburg],cost:30},{nodes:[it.Zimbabwe,it.Musina],cost:30},{nodes:[it.CapeTownS,it.CapeTownN],cost:0},{nodes:[it.CapeTownS,it.George],cost:16},{nodes:[it.George,it.PortElizabeth],cost:12},{nodes:[it.PortElizabeth,it.EastLondon],cost:13},{nodes:[it.EastLondon,it.Mthatha],cost:8},{nodes:[it.Mthatha,it.DurbanS],cost:13},{nodes:[it.DurbanS,it.DurbanN],cost:0},{nodes:[it.DurbanN,it.Pietermaritzburg],cost:3},{nodes:[it.DurbanN,it.Newcastle],cost:9},{nodes:[it.Newcastle,it.Pietermaritzburg],cost:9},{nodes:[it.Pietermaritzburg,it.Ladysmith],cost:5},{nodes:[it.Ladysmith,it.Newcastle],cost:10},{nodes:[it.Bloemfontein,it.Mthatha],cost:18},{nodes:[it.Bloemfontein,it.EastLondon],cost:22},{nodes:[it.EastLondon,it.DeAar],cost:22},{nodes:[it.DeAar,it.PortElizabeth],cost:18},{nodes:[it.George,it.DeAar],cost:17},{nodes:[it.DeAar,it.BeaufortWest],cost:10},{nodes:[it.BeaufortWest,it.George],cost:8},{nodes:[it.BeaufortWest,it.CapeTownN],cost:22},{nodes:[it.CapeTownN,it.Springbok],cost:22},{nodes:[it.Springbok,it.BeaufortWest],cost:24},{nodes:[it.DeAar,it.Springbok],cost:26},{nodes:[it.Springbok,it.Upington],cost:16},{nodes:[it.Upington,it.DeAar],cost:16},{nodes:[it.DeAar,it.Bloemfontein],cost:13},{nodes:[it.Bloemfontein,it.Kimberly],cost:6},{nodes:[it.Kimberly,it.DeAar],cost:10},{nodes:[it.Kimberly,it.Upington],cost:14},{nodes:[it.Kimberly,it.Welkom],cost:9},{nodes:[it.Welkom,it.Bloemfontein],cost:6},{nodes:[it.Bloemfontein,it.Ladysmith],cost:19},{nodes:[it.Mthatha,it.Pietermaritzburg],cost:12},{nodes:[it.Upington,it.Kuruman],cost:11},{nodes:[it.Musina,it.Polokwane],cost:8},{nodes:[it.Polokwane,it.PretoriaN],cost:11},{nodes:[it.PretoriaN,it.PretoriaS],cost:0},{nodes:[it.PretoriaS,it.JohannesburgN],cost:2},{nodes:[it.JohannesburgN,it.JohannesburgS],cost:0},{nodes:[it.JohannesburgS,it.Germiston],cost:1},{nodes:[it.JohannesburgN,it.Mbombela],cost:13},{nodes:[it.Mbombela,it.Germiston],cost:13},{nodes:[it.PretoriaN,it.Mbombela],cost:13},{nodes:[it.Mbombela,it.Polokwane],cost:10},{nodes:[it.Musina,it.Mbombela],cost:15},{nodes:[it.PretoriaN,it.Rustenburg],cost:4},{nodes:[it.Rustenburg,it.JohannesburgN],cost:4},{nodes:[it.JohannesburgN,it.Klerksdorp],cost:7},{nodes:[it.Klerksdorp,it.Welkom],cost:5},{nodes:[it.Bloemfontein,it.JohannesburgS],cost:16},{nodes:[it.Kuruman,it.Rustenburg],cost:18},{nodes:[it.Klerksdorp,it.Kuruman],cost:12},{nodes:[it.Kuruman,it.Kimberly],cost:8},{nodes:[it.JohannesburgS,it.Ladysmith],cost:13},{nodes:[it.Ladysmith,it.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"])($e).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=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(8),sr(9),sr(10),sr(11)]}else{var u=Ne(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=Ne(a,t()+""),2==e?(u=u.slice(1),a=Ne(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=Ne(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=Ne(a.slice(3).concat(u),t()+"")):a=Ne(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"})(ct||(ct={})),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"}(ut||(ut={}));var dt,ft,ht={name:"Spain & Portugal",cities:[{name:ut.Evora,region:ct.Yellow,x:890,y:1780},{name:ut.Faro,region:ct.Yellow,x:822,y:2348},{name:ut.Portimao,region:ct.Yellow,x:592,y:2218},{name:ut.Setubal,region:ct.Yellow,x:578,y:1864},{name:ut.Lisboa,region:ct.Yellow,x:572,y:1586},{name:ut.Porto,region:ct.Yellow,x:736,y:1052},{name:ut.Braga,region:ct.Yellow,x:990,y:828},{name:ut.Gerona,region:ct.Pink,x:3728,y:666},{name:ut.Barcelona,region:ct.Pink,x:3538,y:848},{name:ut.Tarragona,region:ct.Pink,x:3312,y:970},{name:ut.Lerida,region:ct.Pink,x:3166,y:752},{name:ut.Castellondelaplana,region:ct.Pink,x:3010,y:1284},{name:ut.Valencia,region:ct.Pink,x:2938,y:1580},{name:ut.Alicante,region:ct.Pink,x:2936,y:1922},{name:ut.Sansebastian,region:ct.Brown,x:2498,y:278},{name:ut.Pamplona,region:ct.Brown,x:2648,y:484},{name:ut.Zaragoza,region:ct.Brown,x:2760,y:810},{name:ut.Madrid,region:ct.Brown,x:2088,y:1170},{name:ut.Logrono,region:ct.Brown,x:2310,y:622},{name:ut.Bilbao,region:ct.Brown,x:2264,y:226},{name:ut.Santander,region:ct.Brown,x:2022,y:252},{name:ut.Gijon,region:ct.Green,x:1672,y:190},{name:ut.Leon,region:ct.Green,x:1604,y:518},{name:ut.Valladolid,region:ct.Green,x:1850,y:782},{name:ut.Salamanca,region:ct.Green,x:1564,y:1032},{name:ut.Orense,region:ct.Green,x:1072,y:532},{name:ut.Lacoruna,region:ct.Green,x:982,y:184},{name:ut.Santiagodecompostela,region:ct.Green,x:772,y:394},{name:ut.Cuenca,region:ct.Purple,x:2464,y:1300},{name:ut.Albacete,region:ct.Purple,x:2532,y:1684},{name:ut.Murcia,region:ct.Purple,x:2678,y:2056},{name:ut.Toledo,region:ct.Purple,x:1920,y:1400},{name:ut.Ciudadreal,region:ct.Purple,x:1982,y:1714},{name:ut.Caceres,region:ct.Purple,x:1354,y:1432},{name:ut.Merida,region:ct.Purple,x:1318,y:1764},{name:ut.Almeria,region:ct.Red,x:2402,y:2440},{name:ut.Granada,region:ct.Red,x:2044,y:2272},{name:ut.Cordoba,region:ct.Red,x:1728,y:2074},{name:ut.Malaga,region:ct.Red,x:1782,y:2484},{name:ut.Cadiz,region:ct.Red,x:1290,y:2552},{name:ut.Sevilla,region:ct.Red,x:1390,y:2168},{name:ut.Huelva,region:ct.Red,x:1082,y:2196}],connections:[{nodes:[ut.Huelva,ut.Faro],cost:6},{nodes:[ut.Faro,ut.Portimao],cost:4},{nodes:[ut.Portimao,ut.Setubal],cost:12},{nodes:[ut.Setubal,ut.Evora],cost:6},{nodes:[ut.Evora,ut.Merida],cost:9},{nodes:[ut.Merida,ut.Sevilla],cost:14},{nodes:[ut.Sevilla,ut.Cadiz],cost:8},{nodes:[ut.Cadiz,ut.Malaga],cost:12},{nodes:[ut.Malaga,ut.Granada],cost:7},{nodes:[ut.Granada,ut.Almeria],cost:9},{nodes:[ut.Almeria,ut.Murcia],cost:13},{nodes:[ut.Murcia,ut.Alicante],cost:4},{nodes:[ut.Alicante,ut.Valencia],cost:9},{nodes:[ut.Valencia,ut.Castellondelaplana],cost:4},{nodes:[ut.Albacete,ut.Almeria],cost:19},{nodes:[ut.Albacete,ut.Murcia],cost:10},{nodes:[ut.Albacete,ut.Alicante],cost:11},{nodes:[ut.Albacete,ut.Valencia],cost:11},{nodes:[ut.Albacete,ut.Cuenca],cost:8},{nodes:[ut.Albacete,ut.Ciudadreal],cost:13},{nodes:[ut.Albacete,ut.Granada],cost:19},{nodes:[ut.Albacete,ut.Toledo],cost:14},{nodes:[ut.Toledo,ut.Madrid],cost:6},{nodes:[ut.Madrid,ut.Cuenca],cost:11},{nodes:[ut.Cuenca,ut.Valencia],cost:13},{nodes:[ut.Cuenca,ut.Castellondelaplana],cost:14},{nodes:[ut.Castellondelaplana,ut.Tarragona],cost:12},{nodes:[ut.Toledo,ut.Caceres],cost:16},{nodes:[ut.Caceres,ut.Merida],cost:4},{nodes:[ut.Merida,ut.Ciudadreal],cost:16},{nodes:[ut.Ciudadreal,ut.Granada],cost:16},{nodes:[ut.Granada,ut.Cordoba],cost:11},{nodes:[ut.Cordoba,ut.Malaga],cost:11},{nodes:[ut.Malaga,ut.Sevilla],cost:12},{nodes:[ut.Sevilla,ut.Cordoba],cost:8},{nodes:[ut.Cordoba,ut.Ciudadreal],cost:10},{nodes:[ut.Merida,ut.Cordoba],cost:14},{nodes:[ut.Huelva,ut.Cadiz],cost:9},{nodes:[ut.Huelva,ut.Sevilla],cost:6},{nodes:[ut.Merida,ut.Huelva],cost:15},{nodes:[ut.Huelva,ut.Evora],cost:12},{nodes:[ut.Evora,ut.Faro],cost:13},{nodes:[ut.Faro,ut.Setubal],cost:14},{nodes:[ut.Setubal,ut.Lisboa],cost:4},{nodes:[ut.Lisboa,ut.Evora],cost:9},{nodes:[ut.Lisboa,ut.Merida],cost:16},{nodes:[ut.Caceres,ut.Ciudadreal],cost:16},{nodes:[ut.Toledo,ut.Cuenca],cost:13},{nodes:[ut.Salamanca,ut.Toledo],cost:14},{nodes:[ut.Salamanca,ut.Madrid],cost:14},{nodes:[ut.Salamanca,ut.Caceres],cost:13},{nodes:[ut.Porto,ut.Lisboa],cost:18},{nodes:[ut.Porto,ut.Salamanca],cost:19},{nodes:[ut.Porto,ut.Caceres],cost:21},{nodes:[ut.Caceres,ut.Lisboa],cost:19},{nodes:[ut.Ciudadreal,ut.Toledo],cost:7},{nodes:[ut.Braga,ut.Porto],cost:3},{nodes:[ut.Braga,ut.Salamanca],cost:19},{nodes:[ut.Salamanca,ut.Valladolid],cost:7},{nodes:[ut.Valladolid,ut.Madrid],cost:13},{nodes:[ut.Madrid,ut.Zaragoza],cost:19},{nodes:[ut.Zaragoza,ut.Lerida],cost:8},{nodes:[ut.Lerida,ut.Tarragona],cost:6},{nodes:[ut.Tarragona,ut.Barcelona],cost:6},{nodes:[ut.Lerida,ut.Castellondelaplana],cost:13},{nodes:[ut.Castellondelaplana,ut.Zaragoza],cost:15},{nodes:[ut.Zaragoza,ut.Cuenca],cost:16},{nodes:[ut.Braga,ut.Valladolid],cost:24},{nodes:[ut.Lerida,ut.Barcelona],cost:10},{nodes:[ut.Barcelona,ut.Gerona],cost:6},{nodes:[ut.Gerona,ut.Lerida],cost:13},{nodes:[ut.Lerida,ut.Pamplona],cost:17},{nodes:[ut.Pamplona,ut.Zaragoza],cost:11},{nodes:[ut.Zaragoza,ut.Logrono],cost:11},{nodes:[ut.Logrono,ut.Madrid],cost:18},{nodes:[ut.Santiagodecompostela,ut.Braga],cost:11},{nodes:[ut.Braga,ut.Orense],cost:9},{nodes:[ut.Orense,ut.Santiagodecompostela],cost:7},{nodes:[ut.Santiagodecompostela,ut.Lacoruna],cost:4},{nodes:[ut.Lacoruna,ut.Gijon],cost:9},{nodes:[ut.Gijon,ut.Santander],cost:11},{nodes:[ut.Santander,ut.Bilbao],cost:6},{nodes:[ut.Bilbao,ut.Sansebastian],cost:5},{nodes:[ut.Sansebastian,ut.Pamplona],cost:6},{nodes:[ut.Pamplona,ut.Logrono],cost:7},{nodes:[ut.Logrono,ut.Sansebastian],cost:9},{nodes:[ut.Bilbao,ut.Logrono],cost:9},{nodes:[ut.Logrono,ut.Santander],cost:13},{nodes:[ut.Santander,ut.Valladolid],cost:16},{nodes:[ut.Valladolid,ut.Logrono],cost:15},{nodes:[ut.Leon,ut.Santander],cost:13},{nodes:[ut.Gijon,ut.Leon],cost:9},{nodes:[ut.Leon,ut.Valladolid],cost:9},{nodes:[ut.Valladolid,ut.Orense],cost:22},{nodes:[ut.Orense,ut.Leon],cost:14},{nodes:[ut.Gijon,ut.Orense],cost:10},{nodes:[ut.Orense,ut.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"])($e);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=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{var c=Ne(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=Ne(a,t()+""),2==e?(c=c.slice(1),a=Ne(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=Ne(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=Ne(a.slice(3).concat(c),t()+"")):a=Ne(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"})(dt||(dt={})),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"}(ft||(ft={}));var pt={name:"UK & Ireland",cities:[{name:ft.Norwich,region:dt.Red,island:"gb",x:646,y:702},{name:ft.London1,region:dt.Red,island:"gb",x:554,y:756},{name:ft.London2,region:dt.Red,island:"gb",x:550,y:780},{name:ft.Brighton,region:dt.Red,island:"gb",x:537,y:837},{name:ft.Southampton,region:dt.Red,island:"gb",x:451,y:805},{name:ft.Plymouth,region:dt.Red,island:"gb",x:312,y:814},{name:ft.Leicester,region:dt.Red,island:"gb",x:540,y:680},{name:ft.Bristol,region:dt.Red,island:"gb",x:425,y:762},{name:ft.Newcastleupontyne,region:dt.Pink,island:"gb",x:550,y:414},{name:ft.Leeds,region:dt.Pink,island:"gb",x:559,y:541},{name:ft.Sheffield,region:dt.Pink,island:"gb",x:530,y:590},{name:ft.Nottingham,region:dt.Pink,island:"gb",x:531,y:632},{name:ft.Birmingham,region:dt.Pink,island:"gb",x:465,y:663},{name:ft.Manchester,region:dt.Pink,island:"gb",x:479,y:543},{name:ft.Liverpool,region:dt.Pink,island:"gb",x:433,y:576},{name:ft.Newportcasnewydd,region:dt.Yellow,island:"gb",x:425,y:722},{name:ft.Bangor,region:dt.Yellow,island:"gb",x:348,y:574},{name:ft.Aberystwyth,region:dt.Yellow,island:"gb",x:357,y:639},{name:ft.Swanseaabertawe,region:dt.Yellow,island:"gb",x:346,y:706},{name:ft.Cardiffcaerdydd,region:dt.Yellow,island:"gb",x:357,y:761},{name:ft.Haverfordwesthwlffordd,region:dt.Yellow,island:"gb",x:303,y:673},{name:ft.Invernessinbhirnis,region:dt.Brown,island:"gb",x:479,y:208},{name:ft.Aberdeenobardheathain,region:dt.Brown,island:"gb",x:588,y:245},{name:ft.Dundeedundeach,region:dt.Brown,island:"gb",x:552,y:286},{name:ft.Perthpeairt,region:dt.Brown,island:"gb",x:489,y:307},{name:ft.Edinburgh,region:dt.Brown,island:"gb",x:494,y:375},{name:ft.Dumfries,region:dt.Brown,island:"gb",x:441,y:417},{name:ft.Glasgow,region:dt.Brown,island:"gb",x:422,y:335},{name:ft.Coleraine,region:dt.Orange,island:"ie",x:330,y:367},{name:ft.Derry,region:dt.Orange,island:"ie",x:256,y:362},{name:ft.Belfast,region:dt.Orange,island:"ie",x:342,y:421},{name:ft.Newry,region:dt.Orange,island:"ie",x:298,y:462},{name:ft.Omagh,region:dt.Orange,island:"ie",x:260,y:403},{name:ft.Sligo,region:dt.Green,island:"ie",x:181,y:411},{name:ft.Dublin,region:dt.Green,island:"ie",x:274,y:530},{name:ft.Waterford,region:dt.Green,island:"ie",x:210,y:611},{name:ft.Cork,region:dt.Green,island:"ie",x:114,y:626},{name:ft.Athlone,region:dt.Green,island:"ie",x:200,y:489},{name:ft.Galway,region:dt.Green,island:"ie",x:112,y:486},{name:ft.Limerick,region:dt.Green,island:"ie",x:122,y:546}],connections:[{nodes:[ft.Nottingham,ft.Leicester],cost:4},{nodes:[ft.London1,ft.London2],cost:0},{nodes:[ft.London2,ft.Brighton],cost:6},{nodes:[ft.Brighton,ft.Southampton],cost:7},{nodes:[ft.Southampton,ft.Plymouth],cost:19},{nodes:[ft.Plymouth,ft.Bristol],cost:14},{nodes:[ft.Bristol,ft.Newportcasnewydd],cost:7},{nodes:[ft.Cardiffcaerdydd,ft.Swanseaabertawe],cost:7},{nodes:[ft.Swanseaabertawe,ft.Newportcasnewydd],cost:8},{nodes:[ft.Newportcasnewydd,ft.Cardiffcaerdydd],cost:3},{nodes:[ft.Bristol,ft.Southampton],cost:11},{nodes:[ft.Southampton,ft.London2],cost:9},{nodes:[ft.London2,ft.Bristol],cost:14},{nodes:[ft.London1,ft.Newportcasnewydd],cost:16},{nodes:[ft.Haverfordwesthwlffordd,ft.Aberystwyth],cost:9},{nodes:[ft.Haverfordwesthwlffordd,ft.Swanseaabertawe],cost:8},{nodes:[ft.Swanseaabertawe,ft.Aberystwyth],cost:11},{nodes:[ft.Aberystwyth,ft.Bangor],cost:11},{nodes:[ft.Bangor,ft.Liverpool],cost:9},{nodes:[ft.Liverpool,ft.Aberystwyth],cost:16},{nodes:[ft.Aberystwyth,ft.Newportcasnewydd],cost:14},{nodes:[ft.Aberystwyth,ft.Birmingham],cost:16},{nodes:[ft.Birmingham,ft.Liverpool],cost:12},{nodes:[ft.Birmingham,ft.Newportcasnewydd],cost:9},{nodes:[ft.London1,ft.Norwich],cost:11},{nodes:[ft.Norwich,ft.Leicester],cost:12},{nodes:[ft.Leicester,ft.London1],cost:10},{nodes:[ft.London1,ft.Birmingham],cost:13},{nodes:[ft.Birmingham,ft.Leicester],cost:6},{nodes:[ft.Birmingham,ft.Nottingham],cost:7},{nodes:[ft.Nottingham,ft.Sheffield],cost:6},{nodes:[ft.Sheffield,ft.Leeds],cost:5},{nodes:[ft.Leeds,ft.Manchester],cost:8},{nodes:[ft.Manchester,ft.Sheffield],cost:8},{nodes:[ft.Sheffield,ft.Liverpool],cost:12},{nodes:[ft.Liverpool,ft.Nottingham],cost:15},{nodes:[ft.Manchester,ft.Dumfries],cost:18},{nodes:[ft.Manchester,ft.Newcastleupontyne],cost:15},{nodes:[ft.Newcastleupontyne,ft.Dumfries],cost:12},{nodes:[ft.Dumfries,ft.Edinburgh],cost:12},{nodes:[ft.Edinburgh,ft.Newcastleupontyne],cost:13},{nodes:[ft.Newcastleupontyne,ft.Leeds],cost:13},{nodes:[ft.Dumfries,ft.Glasgow],cost:11},{nodes:[ft.Glasgow,ft.Edinburgh],cost:7},{nodes:[ft.Glasgow,ft.Perthpeairt],cost:10},{nodes:[ft.Perthpeairt,ft.Dundeedundeach],cost:3},{nodes:[ft.Glasgow,ft.Invernessinbhirnis],cost:20},{nodes:[ft.Invernessinbhirnis,ft.Perthpeairt],cost:14},{nodes:[ft.Invernessinbhirnis,ft.Dundeedundeach],cost:14},{nodes:[ft.Invernessinbhirnis,ft.Aberdeenobardheathain],cost:15},{nodes:[ft.Aberdeenobardheathain,ft.Dundeedundeach],cost:10},{nodes:[ft.Limerick,ft.Cork],cost:12},{nodes:[ft.Cork,ft.Waterford],cost:8},{nodes:[ft.Waterford,ft.Limerick],cost:11},{nodes:[ft.Limerick,ft.Galway],cost:10},{nodes:[ft.Galway,ft.Sligo],cost:10},{nodes:[ft.Sligo,ft.Derry],cost:10},{nodes:[ft.Derry,ft.Coleraine],cost:6},{nodes:[ft.Coleraine,ft.Belfast],cost:8},{nodes:[ft.Belfast,ft.Newry],cost:6},{nodes:[ft.Newry,ft.Dublin],cost:10},{nodes:[ft.Dublin,ft.Waterford],cost:13},{nodes:[ft.Galway,ft.Athlone],cost:8},{nodes:[ft.Athlone,ft.Sligo],cost:9},{nodes:[ft.Athlone,ft.Limerick],cost:9},{nodes:[ft.Limerick,ft.Dublin],cost:16},{nodes:[ft.Dublin,ft.Athlone],cost:9},{nodes:[ft.Athlone,ft.Newry],cost:12},{nodes:[ft.Athlone,ft.Omagh],cost:14},{nodes:[ft.Omagh,ft.Newry],cost:8},{nodes:[ft.Omagh,ft.Belfast],cost:10},{nodes:[ft.Belfast,ft.Derry],cost:10},{nodes:[ft.Omagh,ft.Derry],cost:5},{nodes:[ft.Omagh,ft.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"])($e);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=Ne(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=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{var u=Ne(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=Ne(a,t()+""),2==e?(u=u.slice(1),a=Ne(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=Ne(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=Ne(a.slice(3).concat(u),t()+"")):a=Ne(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)."},gt=[Ve,Cn,un,ht,Mn,On,jn,ot,Jn,vn,an,st,gn,tn,nt,Kn,xn,Xn,lt,pt,Qe,fn,Fn,zn],yt=[Je,Bn,un,ht,Mn,On,jn,ot,Jn,vn,an,st,gn,tn,nt,Kn,xn,Xn,lt,pt,Qe,fn,Fn,Tn];const mt=Math.pow(2,-52),vt=new Uint32Array(512);class bt{static from(e,n=Rt,t=At){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 bt(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 _=0;_<a;_++){const n=e[2*_],t=e[2*_+1];n<i&&(i=n),t<s&&(s=t),n>c&&(c=n),t>u&&(u=t),this._ids[_]=_}const l=(i+c)/2,d=(s+u)/2;let f,h,p,g=1/0;for(let _=0;_<a;_++){const n=xt(l,d,e[2*_],e[2*_+1]);n<g&&(f=_,g=n)}const y=e[2*f],m=e[2*f+1];g=1/0;for(let _=0;_<a;_++){if(_===f)continue;const n=xt(y,m,e[2*_],e[2*_+1]);n<g&&n>0&&(h=_,g=n)}let v=e[2*h],b=e[2*h+1],w=1/0;for(let _=0;_<a;_++){if(_===f||_===h)continue;const n=_t(y,m,v,b,e[2*_],e[2*_+1]);n<w&&(p=_,w=n)}let x=e[2*p],k=e[2*p+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];Ct(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(Pt(y,m,v,b,x,k)){const e=h,n=v,t=b;h=p,v=x,b=k,p=e,x=n,k=t}const P=St(y,m,v,b,x,k);this._cx=P.x,this._cy=P.y;for(let _=0;_<a;_++)this._dists[_]=xt(e[2*_],e[2*_+1],P.x,P.y);Ct(this._ids,this._dists,0,a-1),this._hullStart=f;let M=3;t[f]=n[p]=h,t[h]=n[f]=p,t[p]=n[h]=f,r[f]=0,r[h]=1,r[p]=2,o.fill(-1),o[this._hashKey(y,m)]=f,o[this._hashKey(v,b)]=h,o[this._hashKey(x,k)]=p,this.trianglesLen=0,this._addTriangle(f,h,p,-1,-1,-1);for(let _,S,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-_)<=mt&&Math.abs(s-S)<=mt)continue;if(_=i,S=s,a===f||a===h||a===p)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],!Pt(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,M++;let g=t[l];while(u=t[g],Pt(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,M--,g=u;if(l===c)while(u=n[l],Pt(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,M--,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(M);for(let _=0,S=this._hullStart;_<M;_++)this.hull[_]=S,S=t[S];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(e,n){return Math.floor(wt(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=vt[--o];continue}const c=i-i%3,u=s+(e+1)%3,l=c+(i+2)%3,d=n[a],f=n[e],h=n[u],p=n[l],g=Mt(r[2*d],r[2*d+1],r[2*f],r[2*f+1],r[2*h],r[2*h+1],r[2*p],r[2*p+1]);if(g){n[e]=p,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<vt.length&&(vt[o++]=s)}else{if(0===o)break;e=vt[--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 wt(e,n){const t=e/(Math.abs(e)+Math.abs(n));return(n>0?3-t:1+t)/4}function xt(e,n,t,r){const o=e-t,a=n-r;return o*o+a*a}function kt(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 Pt(e,n,t,r,o,a){const i=kt(o,a,e,n,t,r)||kt(e,n,t,r,o,a)||kt(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,h=a-s,p=c*c+u*u,g=l*l+d*d,y=f*f+h*h;return c*(d*y-g*h)-u*(l*y-g*f)+p*(l*h-d*f)<0}function _t(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),h=(u*l-s*d)*f,p=(i*d-c*l)*f;return h*h+p*p}function St(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),h=e+(u*l-s*d)*f,p=n+(i*d-c*l)*f;return{x:h,y:p}}function Ct(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;Bt(e,o,a),n[e[t]]>n[e[r]]&&Bt(e,t,r),n[e[a]]>n[e[r]]&&Bt(e,a,r),n[e[t]]>n[e[a]]&&Bt(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;Bt(e,a,i)}e[t+1]=e[i],e[i]=s,r-a+1>=i-t?(Ct(e,n,a,r),Ct(e,n,t,i-1)):(Ct(e,n,t,i-1),Ct(e,n,a,r))}}function Bt(e,n,t){const r=e[n];e[n]=e[t],e[t]=r}function Rt(e){return e[0]}function At(e){return e[1]}function Ot(e,n,t){var r=M(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,h=Array(f).fill(-1);e.mapPosition=[100,200],e.layout="Portrait";var p=Array(f).fill(0).map((function(e,n){return n}));o.forEach((function(e,n){var r=p[Math.floor(t()*p.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),p=p.filter((function(e){return e!==r})),h[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=bt.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),_=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 S=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(S));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+S-B)/(2*_*C)),O=Math.acos((P+B-S)/(2*_*R)),L=Math.PI-A-O,G=105*Math.PI/180;!1!==y[m.triangles[v]][m.triangles[v+1]]&&L<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]]&&O<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=Lt(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 Lt(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=Gt(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=Gt(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 Gt(e,n){return(e[0]-n[0])*(e[0]-n[0])+(e[1]-n[1])*(e[1]-n[1])}var jt=[10,7,7,7,6],Dt=[9,6,6,6,5],Nt=[10,7,7,7,6],zt=[21,17,17,15,14],Tt=[18,17,17,15,14],Et=[5,5,5,5,4],Kt=[13,13,13,12,11],It=[18,17,17,15,14],Ut=[10,22,33,44,54,64,73,82,90,98,105,112,118,124,129,134,138,142,145,148,150,150],Wt=[3,3,4,5,5];function Ht(e,n,t,r){var o,a,i=Object(we["cloneDeep"])($e);if("original"==n){i=i.slice(8);var s=i.splice(2,1)[0],c=i.pop();i=Ne(i,t()+""),2==e||3==e?i=i.slice(8):4==e&&(i=i.slice(4)),i.unshift(s),i.push(c),o=[sr(3),sr(4),sr(5),sr(6)],a=[sr(7),sr(8),sr(9),sr(10)]}else{var u=Ne(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=Ne(i,t()+""),2==e?(u=u.slice(1),i=Ne(i.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),i=Ne(i.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),i=Ne(i.slice(3).concat(u),t()+"")):r&&(i=Ne(i.concat(u),t()+"")),i.unshift(d),i.push(f)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:i}}function Ft(e,n,t,r,o){var a,i,s,u,l,d,f,h,p=n.fastBid,g=void 0!==p&&p,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,P=void 0===k||k,_=n.trackTotalSpent,S=void 0===_||_,C=n.randomizeMap,B=void 0!==C&&C,R=n.chooseRegions,A=void 0!==R&&R,O=n.chooseColors,L=void 0!==O&&O;t=null!==(a=t)&&void 0!==a?a:Math.random().toString();var G=Ge()(t),j="original"==b?gt.find((function(e){return e.name==m})):yt.find((function(e){return e.name==m}));if(!j)throw new Error('Map "'.concat(m,'" not found for variant "').concat(b,'"'));var D,N,z,T=Object(we["cloneDeep"])(j);if(r)z=r,D=z.splice(0,4),N=z.splice(0,4);else if(T.setupDeck){var E=T.setupDeck(e,b,G);D=E.actualMarket,N=E.futureMarket,z=E.powerPlantsDeck}else{var K=Ht(e,b,G,P);D=K.actualMarket,N=K.futureMarket,z=K.powerPlantsDeck}var I,U,W,H,F,Y,V,J,$,q=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}})),Z=q.length-2,X=Object(we["range"])(e),Q=X[0];if(T.resupplyNorth&&(F=T.resupplyNorth[0],Y=T.resupplyNorth[1],V=T.resupplyNorth[2]),T.resupply?(I=T.resupply[0],U=T.resupply[1],W=T.resupply[2],H=T.resupply[3]):(I=[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],U=[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],W=[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],H=[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]),"Portrait"==T.layout||B){var ee="USA"===T.name&&"recharged"===b;T.viewBox=T.viewBox||[1480,1060],T.adjustRatio=T.adjustRatio||[1,1],T.playerOrderPosition=T.playerOrderPosition||[1160,160],T.cityCountPosition=T.cityCountPosition||[0,0],T.powerPlantMarketPosition=T.powerPlantMarketPosition||[745,0],T.actualMarketWidth=T.actualMarketWidth||430,T.mapPosition=T.mapPosition||[0,0],T.buttonsPosition=T.buttonsPosition||[1305,0],T.playerBoardsPosition=T.playerBoardsPosition||[1105,240],T.roundInfoPosition=T.roundInfoPosition||[20,920],T.supplyPosition=T.supplyPosition||[ee?480:675,920]}else T.viewBox=T.viewBox||[1465,860],T.adjustRatio=T.adjustRatio||[1,1],T.playerOrderPosition=T.playerOrderPosition||[1160,140],T.cityCountPosition=T.cityCountPosition||[0,0],T.powerPlantMarketPosition=T.powerPlantMarketPosition||[745,0],T.actualMarketWidth=T.actualMarketWidth||430,T.mapPosition=T.mapPosition||[-10,0],T.buttonsPosition=T.buttonsPosition||[1305,0],T.playerBoardsPosition=T.playerBoardsPosition||[1105,200],T.roundInfoPosition=T.roundInfoPosition||[20,590],T.supplyPosition=T.supplyPosition||[0,720];if(B)J=Ot(T,Wt[Z],G);else{T.cities=T.cities.map((function(e){return c(c({},e),{},{x:e.x*T.adjustRatio[0],y:e.y*T.adjustRatio[1]})}));var ne=Te(T),te=ne.regions,re=Math.min(Wt[Z],te.length);if(A&&te.length>re)J=T,$={regionsNeeded:re,picked:[]};else{var oe=new Set;while(oe.size!=re){var ae=te[Math.floor(G()*te.length)];Ee(T.name,ne,M(oe),ae)&&(oe.add(ae),"Italy"===T.name&&oe.has("red")&&oe.has("green")&&oe.has("blue")&&oe.clear())}J=Yt(T,oe),Vt(T,oe,D,N,z)}}var ie=T.startingResources?T.startingResources[0]:24,se=T.startingResources?T.startingResources[1]:18,ce=T.startingResources?T.startingResources[2]:"original"==b?6:9,ue=T.startingResources?T.startingResources[3]:2,le=T.startingSupply?T.startingSupply[0]:24,de=T.startingSupply?T.startingSupply[1]:24,fe=T.startingSupply?T.startingSupply[2]:24,he=T.startingSupply?T.startingSupply[3]:12,pe=null===(i=T.startingResourcesNorth)||void 0===i?void 0:i[0],ge=null===(s=T.startingResourcesNorth)||void 0===s?void 0:s[1],ye=null===(u=T.startingResourcesNorth)||void 0===u?void 0:u[2],me=le-ie-(null!==pe&&void 0!==pe?pe:0),ve=de-se-(null!==ge&&void 0!==ge?ge:0),xe=fe-ce-(null!==ye&&void 0!==ye?ye:0),ke=he-ue,Pe=Object(we["cloneDeep"])(null!==(l=T.coalPrices)&&void 0!==l?l:Oe.coal),Me=Object(we["cloneDeep"])(null!==(d=T.oilPrices)&&void 0!==d?d:Oe.oil),_e=Object(we["cloneDeep"])(null!==(f=T.garbagePrices)&&void 0!==f?f:Oe.garbage),Se=Object(we["cloneDeep"])(null!==(h=T.uraniumPrices)&&void 0!==h?h:Oe.uranium),Ce=T.coalPricesNorth?Object(we["cloneDeep"])(T.coalPricesNorth):void 0,Be=T.oilPricesNorth?Object(we["cloneDeep"])(T.oilPricesNorth):void 0,Re=T.garbagePricesNorth?Object(we["cloneDeep"])(T.garbagePricesNorth):void 0,Ae="South Africa"==(o||J).name,Le={map:o||J,players:q,playerOrder:X,currentPlayers:[Q],powerPlantsDeck:z,coalSupply:me,oilSupply:ve,garbageSupply:xe,uraniumSupply:ke,coalStorage:Ae?0:void 0,coalResupply:I,oilResupply:U,garbageResupply:W,uraniumResupply:H,coalMarket:ie,oilMarket:se,garbageMarket:ce,uraniumMarket:ue,uraniumMineMarket:"Australia"==(o||J).name?[2,2,2,2,2,2]:void 0,coalPrices:Pe,oilPrices:Me,garbagePrices:_e,uraniumPrices:Se,coalMarketNorth:pe,oilMarketNorth:ge,garbageMarketNorth:ye,coalResupplyNorth:F,oilResupplyNorth:Y,garbageResupplyNorth:V,coalPricesNorth:Ce,oilPricesNorth:Be,garbagePricesNorth:Re,actualMarket:D,futureMarket:N,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:P,trackTotalSpent:S,chooseRegions:A,chooseColors:L},log:[],hiddenLog:[],seed:t,round:1,auctionSkips:0,citiesToStep2:"Baden-Württemberg"==(o||J).name?Dt[e-2]:"UK & Ireland"==(o||J).name?Nt[e-2]:"Bremen"==(o||J).name?Et[e-2]:jt[e-2],citiesToEndGame:"South Africa"==(o||J).name?Tt[e-2]:"UK & Ireland"==(o||J).name&&2==e?Math.min(zt[e-2],(o||J).cities.length):"Bremen"==(o||J).name?Kt[e-2]:"Manhattan"==(o||J).name?It[e-2]:zt[e-2],resourceResupply:["[".concat(I[Z][0],", ").concat(U[Z][0],", ").concat(W[Z][0],", ").concat(H[Z][0],"]"),"[".concat(I[Z][1],", ").concat(U[Z][1],", ").concat(W[Z][1],", ").concat(H[Z][1],"]"),"[".concat(I[Z][2],", ").concat(U[Z][2],", ").concat(W[Z][2],", ").concat(H[Z][2],"]")],resourceResupplyNorth:F&&Y&&V?["[".concat(F[Z][0],", ").concat(Y[Z][0],", ").concat(V[Z][0],"]"),"[".concat(F[Z][1],", ").concat(Y[Z][1],", ").concat(V[Z][1],"]"),"[".concat(F[Z][2],", ").concat(Y[Z][2],", ").concat(V[Z][2],"]")]:void 0,paymentTable:Ut,variant:b,minimunBid:0,plantDiscountActive:"recharged"==b&&"China"!=(o||J).name&&"Russia"!=(o||J).name&&"Baden-Württemberg"!=(o||J).name,discardSmallestPlant:!1,cardsLeft:z.length,nextCardWeak:"recharged"==b,card39Bought:!1,knownPowerPlantDeck:D.concat(N),knownPowerPlantDeckStep3:[],powerPlantDeckAfterStep3:void 0};return Le.log.push({type:"event",event:"Game Start!"}),"Middle East"==Le.map.name&&tr(Le),$&&(Le.phase=be.RegionSelection,Le.regionDraft=$),L&&(Le.phase=be.ColorSelection,Le.colorDraft={picked:[]}),Le.map.blockSpaces&&(Le.blockedCities=Le.map.blockSpaces(e,Le.map.cities,G),Le.blockedCities.length>0&&Le.log.push({type:"event",event:"".concat(Le.blockedCities.length," building spaces are blocked for ").concat(e," players.")})),Le.players[Q].availableMoves=ze(Le,Le.players[Q]),Le}function Yt(e,n){var t=Object(we["cloneDeep"])(e);return t.cities=t.cities.filter((function(e){return n.has(e.region)})),t.connections=t.connections.filter((function(t){return t.nodes.map((function(n){return e.cities.find((function(e){return e.name==n})).region})).every((function(e){return n.has(e)}))})),t}function Vt(e,n,t,r,o){if(e.regionalPowerPlants){var a,i=w(n);try{for(i.s();!(a=i.n()).done;){var s=a.value,u=e.regionalPowerPlants[s];if(u){var l,d=w(u);try{var f=function(){var e=l.value,n=function(n){var t=n.findIndex((function(n){return n.number===e.number}));-1!==t&&(n[t]=c({},e))};n(t),n(r),n(o)};for(d.s();!(l=d.n()).done;)f()}catch(h){d.e(h)}finally{d.f()}}}}catch(h){i.e(h)}finally{i.f()}}}function Jt(e){var n=new Set(e.regionDraft.picked),t=e.map;e.map=Yt(t,n),Vt(t,n,e.actualMarket,e.futureMarket,e.powerPlantsDeck),e.knownPowerPlantDeck=e.actualMarket.concat(e.futureMarket),"UK & Ireland"==e.map.name&&2==e.players.length&&(e.citiesToEndGame=Math.min(zt[e.players.length-2],e.map.cities.length)),e.regionDraft=void 0,e.phase=be.Auction,e.currentPlayers=[e.playerOrder[0]]}function $t(e){e.colorDraft=void 0,e.currentPlayers=[e.playerOrder[0]],e.regionDraft?e.phase=be.RegionSelection:e.phase=be.Auction}function qt(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(kr(e),He()(e.currentPlayers.includes(t),"It is not your turn!"),He()(i,"You are not allowed to run the command "+n.name),o&&n.name==Me.DiscardPowerPlant&&a.powerPlants[a.powerPlants.length-1].number==n.data||He()(i.some((function(e){return Object(we["isEqual"])(e,n.data)})),"Wrong argument for the command "+n.name),n.name){case Me.ChoosePowerPlant:je(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(ur(a)," chooses Power Plant <b>").concat(n.data,"</b>.")});var c=s[0];if(gr(e,c,e.minimunBid),1==e.round&&yr(e),void 0!=e.discountBonusPlayer){var u=Pe(e,c)>4||e.players.length>2&&Pe(e,c)>3;u||er(e),mr(e,e.discountBonusPlayer)}else(Pe(e,c)<=3||2==e.players.length&&4==Pe(e,c))&&("China"==e.map.name&&3!=e.step||er(e),pr(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(ur(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 Me.Bid:je(n),e.options.fastBid?(e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," bids $").concat(n.data,"."),pretty:"".concat(ur(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),Pr(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(ur(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),br(e));break;case Me.ChooseRegion:if(je(n),e.regionDraft.picked.push(n.data),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," chooses region ").concat(n.data,"."),pretty:"".concat(ur(a)," chooses region <b>").concat(n.data,"</b>.")}),e.regionDraft.picked.length>=e.regionDraft.regionsNeeded)Jt(e);else{var l=e.playerOrder;e.currentPlayers=[l[(l.indexOf(t)+1)%l.length]]}break;case Me.ChooseColor:je(n),a.color=n.data,e.colorDraft.picked.push(n.data),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," chooses ").concat(n.data,"."),pretty:"".concat(ur(a)," chooses <b>").concat(n.data,"</b>.")}),e.colorDraft.picked.length>=e.players.length?$t(e):e.currentPlayers=[e.playerOrder[e.colorDraft.picked.length]];break;case Me.Pass:switch(je(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(ur(a)," passes.")}),e.phase){case be.Auction:var d;if(void 0==e.chosenPowerPlant)if(a.skipAuction=!0,e.discountBonusPlayer==a.id&&(e.discountBonusPlayer=void 0),e.auctionSkips++,1==e.auctionSkips&&"Russia"==e.map.name&&(null===(d=e.actualMarket)||void 0===d?void 0:d.length)>0&&(e.log.push({type:"event",event:"First pass, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),er(e)),e.players.some((function(e){return!e.skipAuction&&!e.isDropped})))xr(e);else{if(e.auctionSkips==e.players.length&&"Baden-Württemberg"==e.map.name){for(var f=[],h=0;h<2&&e.actualMarket.length>0;h++)f.push(e.actualMarket[0].number),e.actualMarket.shift(),er(e);e.log.push({type:"event",event:"Everyone passed, removing the two lowest numbered Power Plants (".concat(f.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(),er(e));pr(e)}else if(e.options.fastBid)e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," passes."),pretty:"".concat(ur(a)," passes.")}),Pr(e,a,0);else{a.passed=!0;var p=e.players.filter((function(e){return!e.passed&&!e.skipAuction&&!e.isDropped}));if(1==p.length){var g=p[0];gr(e,g,g.bid),(Pe(e,g)>4||e.players.length>2&&Pe(e,g)>3)&&!g.isDropped?mr(e,g.id):("China"==e.map.name&&3!=e.step||er(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),xr(e,!0)):pr(e))}else br(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),mr(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,wr(e))):wr(e),"India"==e.map.name)while(e.players[e.currentPlayers[0]].passed)wr(e);break;case be.Building:if(a.passed=!0,0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var y=Math.max.apply(Math,M(e.players.map((function(e){return e.cities.length}))));if(1==e.step){var m=e.players.reduce((function(e,n){return e+n.cities.length}),0),v=m>=e.map.cities.length;if((y>=e.citiesToStep2||v)&&"Middle East"!=e.map.name&&"Manhattan"!=e.map.name){var b=e.actualMarket.shift();if(e.log.push({type:"event",event:"Starting Step 2, Power Plant ".concat(null===b||void 0===b?void 0:b.number," discarded.")}),e.step=2,"Spain & Portugal"==e.map.name&&(e.powerPlantsDeck.find((function(e){return 18==e.number}))||(e.powerPlantsDeck.unshift(sr(27)),e.powerPlantsDeck.unshift(sr(22)),e.powerPlantsDeck.unshift(sr(18)))),"Europe"==e.map.name){var w=[].concat(M(e.actualMarket),M(e.futureMarket));w.sort((function(e,n){return e.number-n.number})),e.actualMarket=w.slice(0,4),e.futureMarket=w.slice(4)}else er(e)}}y>=e.citiesToEndGame?(e.phase=be.GameEnd,e.currentPlayers=[],dr(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&&M(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Be(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=fr(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?ar(e):0==e.futureMarket.length&&"Manhattan"!=e.map.name&&(e.step=3,or(e)))}else wr(e);break;case be.Bureaucracy:a.passed=!0;var x=Math.min(a.cities.length,a.citiesPowered),k=e.paymentTable[x];if("India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&(k-=3*a.cities.length,k=Math.max(k,0)),a.money+=k,e.options.trackTotalSpent&&(a.totalIncome+=k),a.citiesPowered=0,"India"==e.map.name&&(a.targetCitiesPowered=0),0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var P,_,S,C,B,R,A,O;if(e.uraniumMineMarket){M(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Be(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 L=Re(e,e.map.uraniumMineResupply[e.players.length-2][e.step-1]);L>0&&e.log.push({type:"event",event:"Removing ".concat(L," uranium from the mine market (cheapest slots).")})}var G,j,D=(null!==(P=null===(_=e.coalPrices)||void 0===_?void 0:_.length)&&void 0!==P?P:Oe[me.Coal].length)-e.coalMarket,N=(null!==(S=null===(C=e.oilPrices)||void 0===C?void 0:C.length)&&void 0!==S?S:Oe[me.Oil].length)-e.oilMarket,z=(null!==(B=null===(R=e.garbagePrices)||void 0===R?void 0:R.length)&&void 0!==B?B:Oe[me.Garbage].length)-e.garbageMarket,T=(null!==(A=null===(O=e.uraniumPrices)||void 0===O?void 0:O.length)&&void 0!==A?A:Oe[me.Uranium].length)-e.uraniumMarket,E=0,K=0,I=0;if(e.coalResupplyNorth){var U=e.coalPricesNorth.length-e.coalMarketNorth,W=e.oilPricesNorth.length-e.oilMarketNorth,H=e.garbagePricesNorth.length-e.garbageMarketNorth;E=Math.min(e.coalSupply,e.coalResupplyNorth[e.players.length-2][e.step-1],U),e.coalMarketNorth+=E,e.coalSupply-=E,K=Math.min(e.oilSupply,e.oilResupplyNorth[e.players.length-2][e.step-1],W),e.oilMarketNorth+=K,e.oilSupply-=K,I=Math.min(e.garbageSupply,e.garbageResupplyNorth[e.players.length-2][e.step-1],H),e.garbageMarketNorth+=I,e.garbageSupply-=I}if(void 0!==e.coalStorage){var F=Math.min(e.coalResupply[e.players.length-2][e.step-1],D),Y=Math.min(e.coalStorage,F),V=Math.min(e.coalSupply,F-Y);G=Y+V,e.coalMarket+=G,e.coalStorage-=Y,e.coalSupply-=V}else G=Math.min(e.coalSupply,e.coalResupply[e.players.length-2][e.step-1],D),e.coalMarket+=G,e.coalSupply-=G;if("Middle East"==e.map.name){0==e.oilMarket&&(e.oilPrices=Oe[me.Oil]),j=e.oilResupply[e.players.length-2][e.step-1];for(var J=0;J<j;J++)e.oilSupply>0?(e.oilMarket++,e.oilSupply--):(e.oilPrices.pop(),e.oilPrices.unshift(1))}else j=Math.min(e.oilSupply,e.oilResupply[e.players.length-2][e.step-1],N),e.oilMarket+=j,e.oilSupply-=j;var $=Math.min(e.garbageSupply,e.garbageResupply[e.players.length-2][e.step-1],z);e.garbageMarket+=$,e.garbageSupply-=$;var q=0;if(("recharged"!=e.options.variant||"Germany"!=e.options.map&&"Italy"!=e.options.map||!e.card39Bought)&&(q=Math.min(e.uraniumSupply,e.uraniumResupply[e.players.length-2][e.step-1],T),e.uraniumMarket+=q,e.uraniumSupply-=q),e.coalResupplyNorth?e.log.push({type:"event",event:"Resupplying resources — North: [".concat(E,", ").concat(K,", ").concat(I,"], South: [").concat(G,", ").concat(j,", ").concat($,", ").concat(q,"].")}):e.log.push({type:"event",event:"Resupplying resources: [".concat(G,", ").concat(j,", ").concat($,", ").concat(q,"].")}),"Manhattan"==e.map.name)nr(e);else if("Middle East"==e.map.name&&2==e.step&&e.futureMarket.length>0){var Z=e.futureMarket.pop();e.log.push({type:"event",event:"Putting Power Plant ".concat(Z.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Z),er(e),Z=e.futureMarket.length?e.futureMarket.pop():e.actualMarket.pop(),e.log.push({type:"event",event:"Putting Power Plant ".concat(Z.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Z),er(e)}else if(e.futureMarket.length>0){if("Benelux"==e.map.name&&("original"==e.options.variant||e.discardSmallestPlant)){var X=e.actualMarket[0];e.log.push({type:"event",event:"Removing smallest plant, Power Plant ".concat(X.number,".")}),e.actualMarket.shift(),er(e),e.discardSmallestPlant=!1}var Q;if("Quebec"==e.map.name){var ee=e.futureMarket.filter((function(e){return e.type!=ve.Wind}));if(Q=ee.pop(),Q)e.futureMarket=e.futureMarket.filter((function(e){var n;return e.number!=(null===(n=Q)||void 0===n?void 0:n.number)}));else{var ne=e.actualMarket.filter((function(e){return e.type!=ve.Wind}));Q=ne.pop(),Q&&(e.actualMarket=e.actualMarket.filter((function(e){var n;return e.number!=(null===(n=Q)||void 0===n?void 0:n.number)})))}}else Q=e.futureMarket.pop();Q&&(e.log.push({type:"event",event:"Putting Power Plant ".concat(Q.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Q),er(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(),er(e));e.round++,"Baden-Württemberg"!=e.map.name&&yr(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&&"Manhattan"!=e.map.name&&(e.step=3,or(e)),e.plantDiscountActive="recharged"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name,mr(e,e.playerOrder[0])):pr(e)}else e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped}));break}break;case Me.DiscardPowerPlant:je(n),n.extra||e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discards Power Plant ").concat(n.data,"."),pretty:"".concat(ur(a)," discards Power Plant <b>").concat(n.data,"</b>.")});var te=a.powerPlants.find((function(e){return e.number==n.data}));if(a.powerPlants=a.powerPlants.filter((function(e){return e.number!=n.data})),Qt(a),n.extra){var re=[];switch(te.type){case ve.Coal:e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],re.push(n.extra[0]+" Coal");break;case ve.Oil:e.oilSupply+=n.extra[0],a.oilLeft-=n.extra[0],re.push(n.extra[0]+" Oil");break;case ve.Garbage:e.garbageSupply+=n.extra[0],a.garbageLeft-=n.extra[0],re.push(n.extra[0]+" Garbage");break;case ve.Uranium:e.uraniumSupply+=n.extra[0],a.uraniumLeft-=n.extra[0],re.push(n.extra[0]+" Uranium");break;case ve.Hybrid:n.extra[0]>0&&(e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],re.push(n.extra[0]+" Coal")),n.extra[1]>0&&(e.oilSupply+=n.extra[1],a.oilLeft-=n.extra[1],re.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(re.join(", "),"."),pretty:"".concat(ur(a)," discards Power Plant <b>").concat(n.data,"</b> and ").concat(re.join(", "),".")}),"China"==e.map.name&&3!=e.step||er(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?xr(e,!0):pr(e)}else{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),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==oe.length&&(oe[0]==me.Coal?(e.coalSupply+=a.coalLeft-a.coalCapacity,a.coalLeft=a.coalCapacity):oe[0]==me.Oil&&(e.oilSupply+=a.oilLeft-a.oilCapacity,a.oilLeft=a.oilCapacity),oe.pop()),0==oe.length&&("China"==e.map.name&&3!=e.step||er(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?xr(e,!0):pr(e))}break;case Me.DiscardResources:je(n),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discarded a ").concat(n.data,"."),pretty:"".concat(ur(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 ie=[],se=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+se&&ie.push(me.Coal),se=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+se&&ie.push(me.Oil),1==ie.length&&(ie[0]==me.Coal?a.coalLeft--:ie[0]==me.Oil&&a.oilLeft--,ie.pop()),0==ie.length&&("China"==e.map.name&&3!=e.step||er(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?xr(e,!0):pr(e));break;case Me.BuyResource:je(n),e.chosenResource=n.data.resource,n.data.side&&(e.chosenSide=n.data.side);var ce,ue="north"===n.data.side;switch(n.data.resource){case me.Coal:if(ue){var le=e.coalPricesNorth;ce=le[le.length-e.coalMarketNorth],a.coalLeft++,e.coalMarketNorth--}else if(n.data.fromStorage)ce=8,a.coalLeft++,e.coalStorage--;else if(0==e.coalMarket)ce=8,a.coalLeft++,e.coalSupply--,n.fromSupply=!0;else{var de,fe=null!==(de=e.coalPrices)&&void 0!==de?de:Oe[me.Coal];ce=fe[fe.length-e.coalMarket],a.coalLeft++,e.coalMarket--}break;case me.Oil:if(ue){var he=e.oilPricesNorth;ce=he[he.length-e.oilMarketNorth],a.oilLeft++,e.oilMarketNorth--}else{var pe,ge=null!==(pe=e.oilPrices)&&void 0!==pe?pe:Oe[me.Oil];ce=ge[ge.length-e.oilMarket],a.oilLeft++,e.oilMarket--}break;case me.Garbage:if(ue){var ye=e.garbagePricesNorth;ce=ye[ye.length-e.garbageMarketNorth],a.garbageLeft++,e.garbageMarketNorth--}else{var xe,ke=null!==(xe=e.garbagePrices)&&void 0!==xe?xe:Oe[me.Garbage];if(ce=ke[ke.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&&ce--}a.garbageLeft++,e.garbageMarket--}break;case me.Uranium:var Se,Ce=null!==(Se=e.uraniumPrices)&&void 0!==Se?Se:Oe[me.Uranium];ce=Ce[Ce.length-e.uraniumMarket],a.uraniumLeft++,e.uraniumMarket--;break}a.money-=ce,e.options.trackTotalSpent&&(a.totalSpentResources+=ce),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," buys ").concat(n.data.resource," for $").concat(ce,"."),pretty:"".concat(ur(a)," buys <b>").concat(n.data.resource,'</b> for <span style="color: green">$').concat(ce,"</span>.")});break;case Me.Build:je(n);var Ae=!1;if("Japan"===e.map.name&&!a.usedFreeJump&&a.cities.length>=1)if(1===e.round&&e.map.startingCities){var Le=new Set(e.map.startingCities);Le.has(n.data.name)&&(Ae=!0)}else n.data.freeJump&&(Ae=!0);var Ge=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:Ge}),a.money-=n.data.price,e.options.trackTotalSpent){var De=e.map.cities.find((function(e){return e.name==n.data.name}));De.singleOccupancy?a.totalSpentConnections+=n.data.price:(a.totalSpentCities+=10+5*Ge,a.totalSpentConnections+=n.data.price-(10+5*Ge))}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(ur(a)," builds on <b>").concat(n.data.name,'</b> for <span style="color: green">$').concat(n.data.price,"</span>.")}),Ae&&(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(),er(e));break;case Me.UsePowerPlant:je(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(ur(a)," uses Power Plant <b>").concat(n.data.powerPlant,"</b>.")});break;case Me.Undo:je(n);var Ne=a.lastMove;switch(null===Ne||void 0===Ne?void 0:Ne.name){case Me.ChoosePowerPlant:39==Ne.data&&(e.card39Bought=!1),Ne.usedPlantDiscount&&(e.plantDiscountActive=!0),e.chosenPowerPlant=void 0,e.auctioningPlayer=void 0,e.currentPlayers=[a.id],e.log.pop();break;case Me.BuyResource:var Te,Ee="north"===Ne.data.side;switch(Ne.data.resource){case me.Coal:if(Ee){a.coalLeft--,e.coalMarketNorth++;var Ke=e.coalPricesNorth;Te=Ke[Ke.length-e.coalMarketNorth]}else if(Ne.data.fromStorage)Te=8,a.coalLeft--,e.coalStorage++;else if(Ne.fromSupply)Te=8,a.coalLeft--,e.coalSupply++;else{var Ie;a.coalLeft--,e.coalMarket++;var Ue=null!==(Ie=e.coalPrices)&&void 0!==Ie?Ie:Oe[me.Coal];Te=Ue[Ue.length-e.coalMarket]}break;case me.Oil:if(Ee){a.oilLeft--,e.oilMarketNorth++;var We=e.oilPricesNorth;Te=We[We.length-e.oilMarketNorth]}else{var Fe;a.oilLeft--,e.oilMarket++;var Ye=null!==(Fe=e.oilPrices)&&void 0!==Fe?Fe:Oe[me.Oil];Te=Ye[Ye.length-e.oilMarket]}break;case me.Garbage:if(Ee){a.garbageLeft--,e.garbageMarketNorth++;var Ve=e.garbagePricesNorth;Te=Ve[Ve.length-e.garbageMarketNorth]}else{var Je;a.garbageLeft--,e.garbageMarket++;var $e=null!==(Je=e.garbagePrices)&&void 0!==Je?Je:Oe[me.Garbage];if(Te=$e[$e.length-e.garbageMarket],"Central Europe"==e.map.name){var qe=a.cities.filter((function(e){return"Wien"==e.name}));(null===qe||void 0===qe?void 0:qe.length)>0&&Te--}}break;case me.Uranium:var Ze;a.uraniumLeft--,e.uraniumMarket++;var Xe=null!==(Ze=e.uraniumPrices)&&void 0!==Ze?Ze:Oe[me.Uranium];Te=Xe[Xe.length-e.uraniumMarket];break}if(a.money+=Te,e.options.trackTotalSpent&&(a.totalSpentResources-=Te),"India"==e.map.name&&(e.chosenResource=void 0),e.log.pop(),"Korea"==e.map.name&&e.chosenSide){for(var Qe=!1,en=e.log.length-1;en>=0;en--){var nn=e.log[en];if("move"===nn.type){Qe=nn.player===t&&nn.move.name===Me.BuyResource;break}}Qe||(e.chosenSide=void 0)}break;case Me.Build:var tn,rn,on=!1;if("Japan"===e.map.name&&a.usedFreeJump)(1===e.round&&a.cities.length>=2&&null!==(tn=null===(rn=e.map.startingCities)||void 0===rn?void 0:rn.includes(Ne.data.name))&&void 0!==tn&&tn||Ne.data.freeJump)&&(on=!0);a.cities.pop(),a.money+=Ne.data.price;var an=e.players.filter((function(e){return e.cities.find((function(e){return e.name==Ne.data.name}))})).length;e.options.trackTotalSpent&&(a.totalSpentCities-=10+5*an,a.totalSpentConnections-=Ne.data.price-(10+5*an)),e.log.pop(),"India"==e.map.name&&e.citiesBuiltInCurrentRound--,on&&(a.usedFreeJump=!1);break;case Me.UsePowerPlant:a.powerPlantsNotUsed.push(Ne.data.powerPlant),Ne.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-=Ne.data.citiesPowered;var sn=e.log.slice().reverse(),cn=e.log.length-sn.findIndex((function(e){return"move"==e.type&&e.player==a.id}))-1;e.log.splice(cn,1);break}}if(a.availableMoves=null,n.name==Me.Undo){var un=e.log.slice().reverse(),ln=un.find((function(e){return"move"==e.type&&e.player==a.id}));a.lastMove=null===ln||void 0===ln?void 0:ln.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=ze(e,e.players[n])})),e}function Zt(e){return e.phase==be.GameEnd}function Xt(e,n){var t=cr(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=ze(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=w(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":qt(r,s.move,s.player,!0);break}}}catch(u){i.e(u)}finally{i.f()}return r}function Qt(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 er(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,M(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=Ne(e.powerPlantsDeck,e.seed),e.phase!=be.Auction)if("Middle East"==e.map.name&&1==e.step){var a=[].concat(M(e.actualMarket),M(e.futureMarket),[n]);a.sort((function(e,n){return e.number-n.number})),e.actualMarket=a.slice(0,4),e.futureMarket=a.slice(4),rr(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(M(e.actualMarket),M(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 er(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(M(e.actualMarket),[n]);c.sort((function(e,n){return e.number-n.number})),e.actualMarket=c}else if(!o){var u=[].concat(M(e.actualMarket),M(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&&tr(e)}}}function nr(e){var n,t;null!==(n=e.manhattanRecyclePile)&&void 0!==n||(e.manhattanRecyclePile=[]),null!==(t=e.manhattanDepletion)&&void 0!==t||(e.manhattanDepletion=0);var r=function(){if(0!=e.futureMarket.length)return e.futureMarket.sort((function(e,n){return e.number-n.number})),e.futureMarket.pop()},o=function(n){while(e.actualMarket.length+e.futureMarket.length<n&&e.powerPlantsDeck.length>0){var t=e.powerPlantsDeck.shift();e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(t),e.log.push({type:"event",event:"Power Plant ".concat(t.number," drawn from the deck.")}),e.futureMarket.push(t)}var r=[].concat(M(e.actualMarket),M(e.futureMarket)).sort((function(e,n){return e.number-n.number}));e.actualMarket=r.slice(0,4),e.futureMarket=r.slice(4)};if(0==e.manhattanDepletion){for(var a=0;a<2;a++){var i=r();if(!i)break;e.manhattanRecyclePile.push(i),e.log.push({type:"event",event:"Setting Power Plant ".concat(i.number," aside on the recycle pile.")})}o(8),0==e.powerPlantsDeck.length&&e.manhattanRecyclePile.length>0&&(e.powerPlantsDeck=Ne(e.manhattanRecyclePile,e.seed+":manhattan-depletion-1"),e.manhattanRecyclePile=[],e.manhattanDepletion=1,e.log.push({type:"event",event:"The draw deck is empty — reshuffling the recycle pile into a new deck."}),o(8))}else if(1==e.manhattanDepletion){var s=r();if(s&&(e.powerPlantsDeck.push(s),e.log.push({type:"event",event:"Putting Power Plant ".concat(s.number," on the bottom of the deck.")})),o(8),0==e.powerPlantsDeck.length){e.manhattanDepletion=2;var c=[].concat(M(e.actualMarket),M(e.futureMarket)).sort((function(e,n){return e.number-n.number}));e.actualMarket=c,e.futureMarket=[],e.log.push({type:"event",event:"The deck is empty for the second time — the entire market is now buyable."})}}else{if(e.futureMarket.length>0){var u=[].concat(M(e.actualMarket),M(e.futureMarket)).sort((function(e,n){return e.number-n.number}));e.actualMarket=u,e.futureMarket=[]}if(e.actualMarket.length>0){var l=e.actualMarket.shift();e.log.push({type:"event",event:"Removing the smallest plant, Power Plant ".concat(l.number,", from the game.")})}}}function tr(e){var n=e.actualMarket.find((function(e){return e.type==ve.Garbage||e.type==ve.Uranium})),t=function(){ir(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";er(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 rr(e){var n=e.futureMarket.pop();e.powerPlantsDeck=Ne(e.powerPlantsDeck,e.seed),e.powerPlantsDeck.push(n),er(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.")}),er(e));var r=e.actualMarket.shift();r&&(e.log.push({type:"event",event:"Power Plant ".concat(r.number," discarded to start step 2.")}),er(e))}function or(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 ar(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;er(e)}while(2==e.players.length&&e.actualMarket.length<2&&3!=e.step)er(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)er(e)}else{var i=Math.max(2,e.players.length-1);while(e.actualMarket.length>i)e.actualMarket.shift()}}function ir(e,n){e.actualMarket.splice(e.actualMarket.findIndex((function(e){return e.number==n.number})),1)}function sr(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"India"==n?qe.find((function(n){return n.number==e})):$e.find((function(n){return n.number==e}))}function cr(e){var n=Ft(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 ur(e){var n;return'<span style="background-color: '.concat(null!==(n=e.color)&&void 0!==n?n:xe[e.id],'; font-weight: bold; padding: 0 3px;">').concat(e.name,"</span>")}function lr(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 dr(e){e.players.forEach((function(n){n.citiesPowered=fr(e,n)}))}function fr(e,n){for(var t=n.powerPlants.filter((function(n){return!ke(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(hr(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 hr(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 pr(e){if("Baden-Württemberg"==e.map.name&&yr(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.forEach((function(e){e.skipAuction=!1})),e.discountBonusPlayer=void 0,"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(),er(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)rr(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,or(e),e.actualMarket=[].concat(M(e.actualMarket),M(e.futureMarket)),e.futureMarket=[]}e.phase=be.Resources,mr(e,e.playerOrder[e.players.length-1])}function gr(e,n,t){n.powerPlants.push(e.chosenPowerPlant),n.money-=t,e.options.trackTotalSpent&&(n.totalSpentPlants+=t),"Manhattan"!=e.map.name||"recharged"!=e.options.variant||1!=e.minimunBid||n.isDropped?(n.skipAuction=!0,e.discountBonusPlayer==n.id&&(e.discountBonusPlayer=void 0)):e.discountBonusPlayer=n.id,Qt(n),e.log.push({type:"event",event:"".concat(n.name," wins the bid and pays ").concat(t,"."),pretty:"".concat(ur(n),' wins the bid and pays <span style="color: green">$').concat(t,"</span>.")}),ir(e,e.chosenPowerPlant),e.chosenPowerPlant=e.currentBid=void 0}function yr(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,M(e.powerPlants.map((function(e){return e.number}))))-Math.max.apply(Math,M(n.powerPlants.map((function(e){return e.number})))):t-r})).map((function(e){return e.id})).reverse()}function mr(e,n){e.currentPlayers=[n],e.players[n].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[n].passed=!0,vr(e))}function vr(e){e.phase==be.Auction?void 0==e.chosenPowerPlant?xr(e):br(e):wr(e)}function br(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,br(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}))&&br(e)}function wr(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,wr(e))}function xr(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}))&&xr(e)}function kr(e){if(!e.coalResupply){var n=gt.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 Pr(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,M(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,M(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,M(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];gr(e,d,a),(Pe(e,d)>4||e.players.length>2&&Pe(e,d)>3)&&!d.isDropped?mr(e,d.id):("China"==e.map.name&&3!=e.step||er(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),xr(e,!0)):pr(e))}}var Mr,_r=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)])},Sr=[];(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"})(Mr||(Mr={}));var Cr=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe({default:function(){return{x:0,y:0,rotate:0}}})],Cr.prototype,"targetState",void 0),z([pe()],Cr.prototype,"pieceId",void 0),z([pe()],Cr.prototype,"transparent",void 0),z([ie()],Cr.prototype,"communicator",void 0),z([ie()],Cr.prototype,"ui",void 0),z([ge("dragging"),ge("targetState",{immediate:!0})],Cr.prototype,"onTargetChanged",null),Cr=z([oe({created:function(){},mounted:function(){this.mounted=!0},beforeDestroy:function(){this.onTransitionEnd()}})],Cr);var Br,Rr,Ar=Cr,Or=Ar;function Lr(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 Gr=Lr(Or,Br,Rr,!1,null,null,null),jr=Gr.exports,Dr=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],Dr.prototype,"owner",void 0),z([pe()],Dr.prototype,"powerPlant",void 0),z([pe()],Dr.prototype,"canClick",void 0),z([pe({default:!1})],Dr.prototype,"hasDiscount",void 0),Dr=z([oe({created:function(){this.pieceType=Mr.Card}})],Dr);var Nr=Dr,zr=Nr,Tr=(t("11ac"),Lr(zr,_r,Sr,!1,null,null,null)),Er=Tr.exports,Kr=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")])])},Ir=[],Ur=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],Ur.prototype,"canClick",void 0),z([pe({default:.08})],Ur.prototype,"scale",void 0),Ur=z([oe({created:function(){this.pieceType=Mr.Coal}})],Ur);var Wr=Ur,Hr=Wr,Fr=Lr(Hr,Kr,Ir,!1,null,null,null),Yr=Fr.exports,Vr=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)])},Jr=[],$r=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],$r.prototype,"canClick",void 0),z([pe({default:1})],$r.prototype,"scale",void 0),$r=z([oe({created:function(){this.pieceType=Mr.Garbage}})],$r);var qr=$r,Zr=qr,Xr=Lr(Zr,Vr,Jr,!1,null,null,null),Qr=Xr.exports,eo=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("+e.scale+")"}},[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")])])},no=[],to=function(e){A(t,e);var n=N(t);function t(){var e;_(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),"scale",void 0),i(B(e),"owner",void 0),i(B(e),"ownerName",void 0),e}return t}(q(jr));z([se()],to.prototype,"player",void 0),z([pe()],to.prototype,"color",void 0),z([pe({default:.035})],to.prototype,"scale",void 0),z([pe()],to.prototype,"owner",void 0),z([pe()],to.prototype,"ownerName",void 0),to=z([oe({created:function(){this.pieceType=Mr.House}})],to);var ro=to,oo=ro,ao=Lr(oo,eo,no,!1,null,null,null),io=ao.exports,so=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")])])},co=[],uo=function(e){A(t,e);var n=N(t);function t(){return _(this,t),n.apply(this,arguments)}return t}(q(jr));uo=z([oe({created:function(){this.pieceType=Mr.Hybrid}})],uo);var lo=uo,fo=lo,ho=Lr(fo,so,co,!1,null,null,null),po=(ho.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)])}),go=[],yo=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],yo.prototype,"canClick",void 0),z([pe({default:1})],yo.prototype,"scale",void 0),yo=z([oe({created:function(){this.pieceType=Mr.Oil}})],yo);var mo=yo,vo=mo,bo=Lr(vo,po,go,!1,null,null,null),wo=bo.exports,xo=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")])])},ko=[],Po=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],Po.prototype,"canClick",void 0),Po=z([oe({created:function(){this.pieceType=Mr.Uranium}})],Po);var Mo=Po,_o=Mo,So=Lr(_o,xo,ko,!1,null,null,null),Co=So.exports,Bo=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))])])},Ro=[],Ao=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Ao.prototype,"text",void 0),z([pe()],Ao.prototype,"width",void 0),z([pe({default:!0})],Ao.prototype,"enabled",void 0),Ao=z([oe],Ao);var Oo=Ao,Lo=Oo,Go=Lr(Lo,Bo,Ro,!1,null,null,null),jo=Go.exports,Do=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")])])},No=[],zo=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],zo.prototype,"isOn",void 0),zo=z([oe],zo);var To=zo,Eo=To,Ko=Lr(Eo,Do,No,!1,null,null,null),Io=Ko.exports,Uo=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")])])},Wo=[],Ho=function(e){A(t,e);var n=N(t);function t(){return _(this,t),n.apply(this,arguments)}return t}(d.a);Ho=z([oe],Ho);var Fo=Ho,Yo=Fo,Vo=Lr(Yo,Uo,Wo,!1,null,null,null),Jo=Vo.exports,$o=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")])])},qo=[],Zo=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Zo.prototype,"enabled",void 0),z([pe()],Zo.prototype,"highlightButton",void 0),z([pe()],Zo.prototype,"text",void 0),Zo=z([oe],Zo);var Xo=Zo,Qo=Xo,ea=Lr(Qo,$o,qo,!1,null,null,null),na=ea.exports,ta=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")])])},ra=[],oa=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],oa.prototype,"isOn",void 0),oa=z([oe],oa);var aa=oa,ia=aa,sa=Lr(ia,ta,ra,!1,null,null,null),ca=sa.exports,ua=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")])])},la=[],da=function(e){A(t,e);var n=N(t);function t(){return _(this,t),n.apply(this,arguments)}return t}(d.a);da=z([oe],da);var fa=da,ha=fa,pa=Lr(ha,ua,la,!1,null,null,null),ga=pa.exports,ya=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")])])},ma=[],va=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],va.prototype,"enabled",void 0),z([pe()],va.prototype,"highlightButton",void 0),va=z([oe],va);var ba=va,wa=ba,xa=Lr(wa,ya,ma,!1,null,null,null),ka=xa.exports,Pa=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)},Ma=[],_a=function(e){A(t,e);var n=N(t);function t(){var e;_(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[Me.DiscardPowerPlant])return e.number!==this.player.powerPlants[this.player.powerPlants.length-1].number;if(null===(t=this.player.availableMoves)||void 0===t||!t[Me.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([pe()],_a.prototype,"color",void 0),z([pe()],_a.prototype,"avatar",void 0),z([pe()],_a.prototype,"player",void 0),z([pe()],_a.prototype,"isCurrentPlayer",void 0),z([pe()],_a.prototype,"owner",void 0),z([pe()],_a.prototype,"ended",void 0),z([pe()],_a.prototype,"isPlayer",void 0),z([pe()],_a.prototype,"ranking",void 0),z([pe()],_a.prototype,"showMoney",void 0),z([pe()],_a.prototype,"showBid",void 0),z([pe()],_a.prototype,"phase",void 0),z([pe()],_a.prototype,"isAustralia",void 0),z([ie()],_a.prototype,"preferences",void 0),_a=z([oe({components:{Coal:Yr,Oil:wo,Garbage:Qr,Uranium:Co,Card:Er}})],_a);var Sa=_a,Ca=Sa,Ba=Lr(Ca,Pa,Ma,!1,null,null,null),Ra=Ba.exports,Aa=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")])])])},Oa=[],La=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],La.prototype,"minValue",void 0),z([pe()],La.prototype,"maxValue",void 0),La=z([oe({created:function(){this.value=this.minValue}})],La);var Ga=La,ja=Ga,Da=(t("85cf"),Lr(ja,Aa,Oa,!1,null,null,null)),Na=Da.exports,za=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)},Ta=[],Ea=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Ea.prototype,"cardsLeft",void 0),z([pe()],Ea.prototype,"nextCardWeak",void 0),z([pe()],Ea.prototype,"plantDiscountActive",void 0),z([pe()],Ea.prototype,"canBid",void 0),z([pe()],Ea.prototype,"canChoose",void 0),z([pe()],Ea.prototype,"chooseablePowerPlants",void 0),z([pe()],Ea.prototype,"minBid",void 0),z([pe()],Ea.prototype,"maxBid",void 0),z([ie()],Ea.prototype,"preferences",void 0),Ea=z([oe({components:{Card:Er,Calculator:Na}})],Ea);var Ka=Ea,Ia=Ka,Ua=Lr(Ia,za,Ta,!1,null,null,null),Wa=Ua.exports,Ha=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)},Fa=[],Ya=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Ya.prototype,"playerColors",void 0),Ya=z([oe({components:{House:io}})],Ya);var Va=Ya,Ja=Va,$a=Lr(Ja,Ha,Fa,!1,null,null,null),qa=$a.exports,Za=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)},Xa=[],Qa=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Qa.prototype,"citiesToStep2",void 0),z([pe()],Qa.prototype,"citiesToEndGame",void 0),z([pe()],Qa.prototype,"playerColors",void 0),Qa=z([oe({components:{House:io}})],Qa);var ei=Qa,ni=ei,ti=Lr(ni,Za,Xa,!1,null,null,null),ri=ti.exports,oi=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&&n.slotCosts&&n.slotCosts.length>=2?t("g",{key:n.name+"_tile"},[t("rect",{class:[{canClick:e.canBuild(n)||e.canPickRegion(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){return e.onCityClick(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&&n.slotCosts&&1===n.slotCosts.length?t("g",{key:n.name+"_mtile"},[t("rect",{class:[{canClick:e.canBuild(n)}],attrs:{x:n.x-13,y:n.y-13,width:"26",height:"26",rx:"5",fill:e.isBlocked(n)?"#555555":"white","fill-opacity":e.isBlocked(n)?.88:.82,stroke:"black","stroke-width":"1.5"},on:{click:function(t){e.canBuild(n)&&e.build(n)}}},[t("title",[e._v(" "+e._s(n.name)),e.isBlocked(n)?[e._v(" — blocked for this player count (transit only)")]:[e._v(" — build for "+e._s(n.slotCosts[0])+" (+ flat 5 per transited space)")]],2)]),t("text",{attrs:{x:n.x,y:n.y,"font-size":"17","font-weight":"bold","text-anchor":"middle","dominant-baseline":"central",fill:e.isBlocked(n)?"#dddddd":"black"}},[e._v(" "+e._s(n.slotCosts[0])+" ")])]):e._e()]})),e._l(e.cities,(function(n){return[null==n.connectionCost?t("circle",{key:n.name+"_circle2",class:[{canClick:e.canBuild(n)||e.canPickRegion(n)}],attrs:{r:"20",cx:n.x,cy:n.y,fill:"gray"},on:{click:function(t){return e.onCityClick(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,scale:e.scale}})]})),e._l(e.cities,(function(n){return[null!=n.connectionCost&&n.slotCosts&&n.slotCosts.length>=2?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()]}))],e._l(e.cities,(function(n){return[e.canPickRegion(n)?t("circle",{key:n.name+"_pickRegion",staticClass:"canClick",attrs:{r:"18",cx:n.x,cy:n.y,fill:"none",stroke:"gold","stroke-width":"5px"},on:{click:function(t){return e.onCityClick(n)}}}):e._e()]}))],2)},ai=[],ii=function(e){A(t,e);var n=N(t);function t(){var e;_(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),"blockedCities",void 0),i(B(e),"pickableRegions",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,c,u=e.map.cities.find((function(e){return e.name==t.name})),l=null!=u.connectionCost,d=l&&1===(null===(o=u.slotCosts)||void 0===o?void 0:o.length),f=2===(null===(a=u.slotCosts)||void 0===a?void 0:a.length)&&15===u.slotCosts[0];if(d)c=.085,i=-199*c,s=-230*c;else if(l){var h=n.nodeSlotPos(t.position);i=h.dx-7,s=h.dy-8}else f?0==t.position?(i=-15,s=-4):(i=1,s=-4):0==t.position?(i=-6,s=-18):1==t.position?(i=-15,s=-4):(i=1,s=-4);n.houses.push({id:r+"_"+t.name,x:u.x+i,y:u.y+s,color:n.playerColors[r],owner:r,scale:c})}))}))}},{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:"isBlocked",value:function(e){return!!this.blockedCities&&this.blockedCities.includes(e.name)}},{key:"build",value:function(e){this.$emit("build",e)}},{key:"canPickRegion",value:function(e){return!!this.pickableRegions&&this.pickableRegions.includes(e.region)}},{key:"pickRegion",value:function(e){this.$emit("pickRegion",e.region)}},{key:"onCityClick",value:function(e){this.canBuild(e)?this.build(e):this.canPickRegion(e)&&this.pickRegion(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([pe()],ii.prototype,"polygons",void 0),z([pe()],ii.prototype,"cities",void 0),z([pe()],ii.prototype,"connections",void 0),z([pe()],ii.prototype,"playerColors",void 0),z([pe()],ii.prototype,"buildableCities",void 0),z([pe()],ii.prototype,"blockedCities",void 0),z([pe()],ii.prototype,"pickableRegions",void 0),z([pe()],ii.prototype,"devBackdrop",void 0),z([pe({default:0})],ii.prototype,"mapRotation",void 0),z([ie()],ii.prototype,"preferences",void 0),ii=z([oe({components:{House:io}})],ii);var si=ii,ci=si,ui=Lr(ci,oi,ai,!1,null,null,null),li=ui.exports,di=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)},fi=[],hi=t("bcba"),pi=function(e){A(t,e);var n=N(t);function t(){var e;_(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(hi["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(hi["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 h=e.oilPrices.filter((function(e){return e>1})).length,p=e.oilPrices.filter((function(e){return 1==e})).length,g=Math.min(h,e.oilMarket);Array(h).fill(0).forEach((function(e,n){var t=n+(p-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([pe()],pi.prototype,"resourceResupply",void 0),z([pe()],pi.prototype,"resourceResupplyNorth",void 0),z([pe()],pi.prototype,"isUsaRecharged",void 0),z([pe()],pi.prototype,"isMiddleEast",void 0),z([pe()],pi.prototype,"isIndiaResourceMarket",void 0),z([pe()],pi.prototype,"availableSurplusOil",void 0),z([pe()],pi.prototype,"buyableResources",void 0),z([pe()],pi.prototype,"coalStorage",void 0),z([ie()],pi.prototype,"preferences",void 0),pi=z([oe({components:{Coal:Yr,Oil:wo,Garbage:Qr,Uranium:Co}})],pi);var gi=pi,yi=gi,mi=Lr(yi,di,fi,!1,null,null,null),vi=mi.exports,bi=function(e){A(t,e);var n=N(t);function t(){var e;_(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),"defaultPlayerColors",["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:"playerColors",get:function(){var e=M(this.defaultPlayerColors);if(this.G){var n,t=w(this.G.players);try{for(t.s();!(n=t.n()).done;){var r=n.value;r.color&&(e[r.id]=r.color)}}catch(o){t.e(o)}finally{t.f()}}return e}},{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==Me.Pass&&this.G.currentPlayers.includes(this.player)?document.getElementById("notification").cloneNode(!0).play():c.name==Me.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==Me.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:Me.Pass,data:!0})}},{key:"undo",value:function(){this.sendMove({name:Me.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:Me.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:Me.BuyResource,data:n})}},{key:"bid",value:function(e){this.sendMove({name:Me.Bid,data:e})}},{key:"build",value:function(e){var n=this.G.players[this.player],t=n.availableMoves,r=t[Me.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:Me.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[Me.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:Me.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:Me.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:Me.DiscardPowerPlant,data:this.discardedPowerPlant.number,extra:e}):this.sendMove({name:Me.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:Me.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:Me.DiscardPowerPlant,data:e.number});if(0==o.coalLeft)return void this.sendMove({name:Me.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:Me.DiscardPowerPlant,data:e.number});if(0==o.oilLeft)return void this.sendMove({name:Me.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:Me.DiscardPowerPlant,data:e.number});if(0==o.garbageLeft)return void this.sendMove({name:Me.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:Me.DiscardPowerPlant,data:e.number});if(0==o.uraniumLeft)return void this.sendMove({name:Me.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:Me.DiscardPowerPlant,data:e.number});if(o.coalLeft+o.oilLeft==0)return void this.sendMove({name:Me.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:Me.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:Me.DiscardResources,data:e})}},{key:"sendMove",value:function(e){this.paused||this.emitter.emit("move",e)}},{key:"gameEnded",value:function(e){return Zt(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[Me.Pass]}},{key:"canUndo",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[Me.Undo]}},{key:"canBid",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[Me.Bid]}},{key:"canChoose",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[Me.ChoosePowerPlant]}},{key:"buyableResources",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[Me.BuyResource]||[]}},{key:"canBuyResource",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return e?!!t[Me.BuyResource]&&t[Me.BuyResource].find((function(n){return n.resource==e})):!!t[Me.BuyResource]}},{key:"getChooseablePowerPlants",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[Me.ChoosePowerPlant]}},{key:"getBuildableCities",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[Me.Build]&&n[Me.Build].map((function(e){return e.name}))||[]}},{key:"getPickableRegions",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[Me.ChooseRegion]||[]}},{key:"pickRegion",value:function(e){this.sendMove({name:Me.ChooseRegion,data:e})}},{key:"canChooseColor",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player];return!!e.availableMoves[Me.ChooseColor]}},{key:"getChooseableColors",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player];return e.availableMoves[Me.ChooseColor]||[]}},{key:"chooseColor",value:function(e){this.sendMove({name:Me.ChooseColor,data:e})}},{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=w(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)===Me.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[Me.Build]&&t[Me.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[Me.UsePowerPlant]&&o[Me.UsePowerPlant].find((function(n){return n.powerPlant==e.number})):(null===(t=this.G)||void 0===t?void 0:t.phase)==be.Auction?!!o[Me.DiscardPowerPlant]&&o[Me.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=w(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&&this.G.phase==be.ColorSelection&&void 0!==this.player&&this.G.currentPlayers.includes(this.player))return"Choose your color.";if(this.G&&this.G.phase==be.RegionSelection&&void 0!==this.player&&this.G.currentPlayers.includes(this.player)){var n=this.G.regionDraft;return n?"Choose a region to play in (".concat(n.picked.length+1," of ").concat(n.regionsNeeded,")."):"Choose a region to play in."}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 t=this.G.players[this.player];return t.availableMoves[Me.ChoosePowerPlant]?t.availableMoves[Me.Pass]?"Choose a Power Plant to start an auction, or pass.":"Choose a Power Plant to start an auction.":t.availableMoves[Me.Bid]?"It's your turn to bid!":t.availableMoves[Me.BuyResource]?"Buy resources on the market, or pass.":t.availableMoves[Me.Build]?"Build a new city, or pass.":t.availableMoves[Me.UsePowerPlant]?0!=t.resourcesUsed.length?"Choose which resources to spend.":"Choose which Power Plant to use.":t.availableMoves[Me.DiscardPowerPlant]?"Choose which Power Plant to discard.":t.availableMoves[Me.DiscardResources]?"Choose which resources to discard.":"It's your turn!"}var r=this.G.log[this.G.log.length-1];return"move"==r.type?r.simple:"event"==r.type?r.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",M(this.logReversedSimple).reverse())}},{key:"sortedPlayers",get:function(){return lr(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,M(i))+Math.max.apply(Math,M(i)))/2,u=(Math.min.apply(Math,M(s))+Math.max.apply(Math,M(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([pe()],bi.prototype,"state",void 0),z([pe(),de()],bi.prototype,"player",void 0),z([pe()],bi.prototype,"emitter",void 0),z([pe()],bi.prototype,"avatars",void 0),z([pe(),de()],bi.prototype,"preferences",void 0),z([le()],bi.prototype,"ui",void 0),z([le()],bi.prototype,"communicator",void 0),z([de()],bi.prototype,"G",void 0),z([ye()],bi.prototype,"powerPlantMarket",void 0),z([ye()],bi.prototype,"playerOrder",void 0),z([ye()],bi.prototype,"cityCount",void 0),z([ye()],bi.prototype,"map",void 0),z([ye()],bi.prototype,"resources",void 0),z([ge("state",{immediate:!0})],bi.prototype,"onStateChanged",null),z([ge("ui.waitingAnimations")],bi.prototype,"updateUI",null),z([ge("G.log")],bi.prototype,"onLogChanged",null),bi=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(Xt(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:Ra,Card:Er,House:io,Coal:Yr,Oil:wo,Garbage:Qr,Uranium:Co,PassButton:na,UndoButton:ka,LogButton:Jo,SoundButton:ca,HelpButton:Io,RulesButton:ga,Button:jo,Calculator:Na,PowerPlantMarket:Wa,PlayerOrder:qa,CityCount:ri,Map:li,Resources:vi}})],bi);var wi=bi,xi=wi,ki=(t("bb9a"),Lr(xi,f,h,!1,null,null,null)),Pi=ki.exports;function Mi(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(Pi,{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 _i=Mi;"undefined"!==typeof window&&(window.powergrid={launch:_i});var Si=_i;n["default"]=Si},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,h=Math.min,p=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=h(f(a(n),0),b-w)),b+t-r>p)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"),h=f.UNSUPPORTED_Y,p=[].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":""),h=0,g=new RegExp(e.source,f+"g");while(s=d.call(g,r)){if(c=g.lastIndex,c>h&&(l.push(r.slice(h,s.index)),s.length>1&&s.index<r.length&&p.apply(l,s.slice(1)),u=s[0].length,h=c,l.length>=a))break;g.lastIndex===s.index&&g.lastIndex++}return h===r.length?!u&&g.test("")||l.push(""):l.push(r.slice(h)),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),p=s(d,RegExp),m=d.unicode,v=(d.ignoreCase?"i":"")+(d.multiline?"m":"")+(d.unicode?"u":"")+(h?"g":"y"),b=new p(h?"^(?:"+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,P=[];while(k<f.length){b.lastIndex=h?0:k;var M,_=l(b,h?f.slice(k):f);if(null===_||(M=g(u(b.lastIndex+(h?k:0)),f.length))===x)k=c(f,k,m);else{if(P.push(f.slice(x,k)),P.length===w)return P;for(var S=1;S<=_.length-1;S++)if(P.push(_[S]),P.length===w)return P;k=x=M}}return P.push(f.slice(x)),P}]}),h)},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,h=5==e||d;return function(p,g,y,m){for(var v,b,w=a(p),x=o(w),k=r(g,y,3),P=i(x.length),M=0,_=m||s,S=n?_(p,P):t||f?_(p,0):void 0;P>M;M++)if((h||M in x)&&(v=x[M],b=k(v,M,w),e))if(n)S[M]=b;else if(b)switch(e){case 3:return!0;case 5:return v;case 6:return M;case 2:c.call(S,v)}else switch(e){case 4:return!1;case 7:c.call(S,v)}return d?-1:u||l?l:S}};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 he(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 pe(e){return void 0===e&&(e={}),function(n,t){he(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"),t("ec9f");var me,ve,be,we=t("0b6f"),xe=["limegreen","mediumorchid","red","dodgerblue","yellow","brown"];function ke(e,n){return"Australia"===e.map.name&&n.type===ve.Uranium}function Pe(e,n){return n.powerPlants.filter((function(n){return!ke(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["ColorSelection"]="Color Selection",e["RegionSelection"]="Region Selection",e["Order"]="Order",e["Auction"]="Auction",e["Resources"]="Resources",e["Building"]="Building",e["Bureaucracy"]="Bureaucracy",e["GameEnd"]="Game End"}(be||(be={}));var Me,_e,Se=[2,3,4,5,6,7];function Ce(e){for(var n=e.length-1;n>=0;n--)if(e[n]<2)return n;return-1}function Be(e,n){if(!e.uraniumMineMarket)return{income:0,price:0,mines:0,cities:0};var t=n.powerPlants.filter((function(n){return ke(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=Ce(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=Ce(e.uraniumMineMarket);if(c<0)break;e.uraniumMineMarket[c]++}return{income:i,price:a,mines:t.length,cities:r}}function Re(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["ChooseRegion"]="ChooseRegion",e["ChooseColor"]="ChooseColor",e["Pass"]="Pass",e["Undo"]="Undo"})(Me||(Me={}));var Ae=(_e={},i(_e,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(_e,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(_e,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(_e,me.Uranium,[1,2,3,4,5,6,7,8,10,12,14,16]),_e),Oe=Ae,Le=(t("9cd8"),t("3a04")),Ge=t.n(Le);function je(e){}function De(e,n){var t,r,o=1/0,a=w(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 Ne(e,n){var t=Ge.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)})),M(r.keys()).sort().map((function(n){return e[r.get(n)]}))}function ze(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)!=Me.Pass||e.phase==be.Bureaucracy&&(null===(r=n.lastMove)||void 0===r?void 0:r.name)==Me.UsePowerPlant)&&(o[Me.Undo]=[!0,!1]));switch(e.phase){case be.Auction:if(Pe(e,n)>4||e.players.length>2&&Pe(e,n)>3)o[Me.DiscardPowerPlant]=n.powerPlants.filter((function(t,r){return r!=n.powerPlants.length-1&&!ke(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[Me.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[Me.ChoosePowerPlant]=c.map((function(e){return e.number}))),(e.round>1||e.discountBonusPlayer==n.id)&&(o[Me.Pass]=[!0])}else{if(e.options.fastBid?e.minimunBid<=n.money&&(o[Me.Bid]=Object(we["range"])(e.minimunBid,n.money+1)):e.currentBid?e.currentBid<n.money&&(o[Me.Bid]=Object(we["range"])(e.currentBid+1,n.money+1)):o[Me.Bid]=Object(we["range"])(e.minimunBid,n.money+1),"Spain & Portugal"==e.map.name){var h=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));h.every((function(e){return"yellow"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[Me.Bid]=void 0)}if("Central Europe"==e.map.name){var p=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==p.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[Me.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[Me.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[Me.Bid]=void 0)}e.options.fastBid?n.id!=e.auctioningPlayer&&(o[Me.Pass]=[!0]):null!=e.currentBid&&(o[Me.Pass]=[!0])}}break;case be.Resources:if("India"==e.map.name&&void 0!==e.chosenResource){o[Me.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,_=null!==(k=e.coalPrices)&&void 0!==k?k:Oe[me.Coal],S=_[_.length-e.coalMarket];n.money>=S&&n.coalCapacity+n.hybridCapacity>P+n.coalLeft&&S<=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,O=A[A.length-e.coalMarketNorth];n.money>=O&&n.coalCapacity+n.hybridCapacity>R+n.coalLeft&&O<=m&&v.push({resource:me.Coal,side:"north"})}if(w&&e.oilMarket>0){var L,G=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,j=null!==(L=e.oilPrices)&&void 0!==L?L:Oe[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:Oe[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:Oe[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[Me.BuyResource]=v),o[Me.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)$=n.usedFreeJump?[]:e.map.cities.filter((function(e){return Z.has(e.name)})).map((function(e){return{name:e.name,price:0}}));else if($=Ke(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(M($),Q)}$.forEach((function(t){var r,o=e.map.cities.find((function(e){return e.name==t.name}));if(o)if(null!==(r=e.blockedCities)&&void 0!==r&&r.includes(t.name))t.price=9999;else{var a=e.players.filter((function(e){return e.cities.find((function(e){return t.name==e.name}))})).length;if(o.transregional){if(e.step<2)return void(t.price=9999);var i=o.slotCosts,s=o.stepSlots?o.stepSlots[e.step-1]:e.step,c=i?i.length:3;return a>=s||a>=c?t.price=9999:t.price+=i?i[a]:3==e.step?20:15,void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999))}if(o.island&&void 0!==e.map.crossIslandSurcharge&&n.cities.length>0){var u=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(!u.has(o.island))return void(t.price=a>0?9999:10+e.map.crossIslandSurcharge)}if(o.singleOccupancy)return 0==n.cities.length||a>=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)),"Manhattan"==e.map.name&&n.cities.length>0&&(t.price=Math.max(0,t.price-5));var l=o.slotCosts,d=o.stepSlots?o.stepSlots[e.step-1]:e.step,f=l?l.length:3;a>=d||a>=f?t.price=9999:t.price+=l?l[a]:10+5*a,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[Me.Build]=$)}o[Me.Pass]=[!0];break;case be.Bureaucracy:var ee=[];n.powerPlants.forEach((function(t){if(!ke(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[Me.UsePowerPlant]=ee),("India"!=e.map.name||n.citiesPowered>=n.targetCitiesPowered||n.isAI)&&(o[Me.Pass]=[!0]);break;case be.RegionSelection:var ne,te,re=null!==(ne=null===(te=e.regionDraft)||void 0===te?void 0:te.picked)&&void 0!==ne?ne:[],oe=Te(e.map);o[Me.ChooseRegion]=oe.regions.filter((function(n){return Ee(e.map.name,oe,re,n)}));break;case be.ColorSelection:var ae,ie,se=null!==(ae=null===(ie=e.colorDraft)||void 0===ie?void 0:ie.picked)&&void 0!==ae?ae:[];o[Me.ChooseColor]=xe.filter((function(e){return!se.includes(e)}));break}return o}function Te(e){var n,t=e.cities.filter((function(n,t){return e.cities.findIndex((function(e){return e.region==n.region}))==t})).map((function(e){return e.region})),r=e.connections.map((function(n){return n.nodes.map((function(n){return e.cities.find((function(e){return e.name==n})).region}))})),o=t.map((function(e){return t.filter((function(n){return e!=n&&r.some((function(t){return t.includes(e)&&t.includes(n)}))}))})),a={},i=w(e.cities);try{for(i.s();!(n=i.n()).done;){var s=n.value;s.island&&void 0===a[s.region]&&(a[s.region]=s.island)}}catch(c){i.e(c)}finally{i.f()}return{regions:t,regionConnections:o,regionIsland:a}}function Ee(e,n,t,r){var o=new Set(t);if(o.has(r))return!1;if(0==o.size)return!0;var a=n.regions.indexOf(r);if(-1==a)return!1;if(n.regionConnections[a].some((function(e){return o.has(e)})))return!0;if("UK & Ireland"===e){var i=new Set(M(o).map((function(e){return n.regionIsland[e]})));if(!i.has(n.regionIsland[r]))return!0}return"Australia"===e}function Ke(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=De(i,(function(e){return e.price}));if(!s||s.price>n.money)break;o=s}return t}t("a516"),t("7f32"),t("da71"),t("4311");var Ie,Ue,We=t("4cd2"),He=t.n(We);(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(Ie||(Ie={})),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"}(Ue||(Ue={}));var Fe,Ye,Ve={name:"USA",cities:[{name:Ue.Seattle,region:Ie.Purple,x:74,y:99},{name:Ue.Portland,region:Ie.Purple,x:45,y:167},{name:Ue.Boise,region:Ie.Purple,x:180,y:220},{name:Ue.Billings,region:Ie.Purple,x:345,y:180},{name:Ue.Cheyenne,region:Ie.Purple,x:410,y:280},{name:Ue.Denver,region:Ie.Purple,x:400,y:333},{name:Ue.Omaha,region:Ie.Purple,x:566,y:293},{name:Ue.SanFrancisco,region:Ie.Cyan,x:48,y:371},{name:Ue.LosAngeles,region:Ie.Cyan,x:116,y:460},{name:Ue.SanDiego,region:Ie.Cyan,x:157,y:507},{name:Ue.LasVegas,region:Ie.Cyan,x:200,y:410},{name:Ue.SaltLakeCity,region:Ie.Cyan,x:266,y:311},{name:Ue.Phoenix,region:Ie.Cyan,x:260,y:486},{name:Ue.SantaFe,region:Ie.Cyan,x:371,y:435},{name:Ue.KansasCity,region:Ie.Red,x:587,y:356},{name:Ue.OklahomaCity,region:Ie.Red,x:550,y:437},{name:Ue.Dallas,region:Ie.Red,x:560,y:504},{name:Ue.Houston,region:Ie.Red,x:569,y:571},{name:Ue.Memphis,region:Ie.Red,x:678,y:449},{name:Ue.Birmingham,region:Ie.Red,x:739,y:486},{name:Ue.NewOrleans,region:Ie.Red,x:674,y:570},{name:Ue.Fargo,region:Ie.Yellow,x:551,y:152},{name:Ue.Duluth,region:Ie.Yellow,x:637,y:133},{name:Ue.Minneapolis,region:Ie.Yellow,x:621,y:190},{name:Ue.Chicago,region:Ie.Yellow,x:716,y:281},{name:Ue.StLouis,region:Ie.Yellow,x:678,y:362},{name:Ue.Cincinnati,region:Ie.Yellow,x:795,y:348},{name:Ue.Knoxvile,region:Ie.Yellow,x:796,y:422},{name:Ue.Detroit,region:Ie.Brown,x:803,y:262},{name:Ue.Buffalo,region:Ie.Brown,x:913,y:251},{name:Ue.Pittsburgh,region:Ie.Brown,x:884,y:316},{name:Ue.Boston,region:Ie.Brown,x:1052,y:252},{name:Ue.NewYork,region:Ie.Brown,x:1010,y:290},{name:Ue.Philadelphia,region:Ie.Brown,x:985,y:330},{name:Ue.Washington,region:Ie.Brown,x:934,y:357},{name:Ue.Norfolk,region:Ie.Green,x:969,y:405},{name:Ue.Raleigh,region:Ie.Green,x:915,y:437},{name:Ue.Atlanta,region:Ie.Green,x:801,y:487},{name:Ue.Savannah,region:Ie.Green,x:867,y:507},{name:Ue.Jacksonvile,region:Ie.Green,x:861,y:559},{name:Ue.Tampa,region:Ie.Green,x:819,y:621},{name:Ue.Miami,region:Ie.Green,x:883,y:670}],connections:[{nodes:[Ue.Seattle,Ue.Portland],cost:3},{nodes:[Ue.Seattle,Ue.Boise],cost:12},{nodes:[Ue.Seattle,Ue.Billings],cost:9},{nodes:[Ue.Portland,Ue.Boise],cost:13},{nodes:[Ue.Portland,Ue.SanFrancisco],cost:24},{nodes:[Ue.Boise,Ue.Billings],cost:12},{nodes:[Ue.Boise,Ue.Cheyenne],cost:24},{nodes:[Ue.Boise,Ue.SanFrancisco],cost:23},{nodes:[Ue.Boise,Ue.SaltLakeCity],cost:8},{nodes:[Ue.Billings,Ue.Cheyenne],cost:9},{nodes:[Ue.Billings,Ue.Fargo],cost:17},{nodes:[Ue.Billings,Ue.Minneapolis],cost:18},{nodes:[Ue.Cheyenne,Ue.Denver],cost:0},{nodes:[Ue.Cheyenne,Ue.Omaha],cost:14},{nodes:[Ue.Cheyenne,Ue.Minneapolis],cost:18},{nodes:[Ue.Denver,Ue.SaltLakeCity],cost:21},{nodes:[Ue.Denver,Ue.SantaFe],cost:13},{nodes:[Ue.Denver,Ue.KansasCity],cost:16},{nodes:[Ue.Omaha,Ue.KansasCity],cost:5},{nodes:[Ue.Omaha,Ue.Minneapolis],cost:8},{nodes:[Ue.Omaha,Ue.Chicago],cost:13},{nodes:[Ue.SanFrancisco,Ue.LosAngeles],cost:9},{nodes:[Ue.SanFrancisco,Ue.LasVegas],cost:14},{nodes:[Ue.SanFrancisco,Ue.SaltLakeCity],cost:27},{nodes:[Ue.LosAngeles,Ue.SanDiego],cost:3},{nodes:[Ue.LosAngeles,Ue.LasVegas],cost:9},{nodes:[Ue.SanDiego,Ue.LasVegas],cost:9},{nodes:[Ue.SanDiego,Ue.Phoenix],cost:14},{nodes:[Ue.LasVegas,Ue.SaltLakeCity],cost:18},{nodes:[Ue.LasVegas,Ue.Phoenix],cost:15},{nodes:[Ue.LasVegas,Ue.SantaFe],cost:27},{nodes:[Ue.SaltLakeCity,Ue.SantaFe],cost:28},{nodes:[Ue.Phoenix,Ue.SantaFe],cost:18},{nodes:[Ue.SantaFe,Ue.KansasCity],cost:16},{nodes:[Ue.SantaFe,Ue.OklahomaCity],cost:15},{nodes:[Ue.SantaFe,Ue.Dallas],cost:16},{nodes:[Ue.SantaFe,Ue.Houston],cost:21},{nodes:[Ue.KansasCity,Ue.OklahomaCity],cost:8},{nodes:[Ue.KansasCity,Ue.Memphis],cost:12},{nodes:[Ue.KansasCity,Ue.Chicago],cost:8},{nodes:[Ue.KansasCity,Ue.StLouis],cost:6},{nodes:[Ue.OklahomaCity,Ue.Dallas],cost:3},{nodes:[Ue.OklahomaCity,Ue.Memphis],cost:14},{nodes:[Ue.Dallas,Ue.Houston],cost:5},{nodes:[Ue.Dallas,Ue.Memphis],cost:12},{nodes:[Ue.Dallas,Ue.NewOrleans],cost:12},{nodes:[Ue.Houston,Ue.NewOrleans],cost:8},{nodes:[Ue.Memphis,Ue.Birmingham],cost:6},{nodes:[Ue.Memphis,Ue.NewOrleans],cost:7},{nodes:[Ue.Memphis,Ue.StLouis],cost:7},{nodes:[Ue.Birmingham,Ue.NewOrleans],cost:11},{nodes:[Ue.Birmingham,Ue.Atlanta],cost:3},{nodes:[Ue.Birmingham,Ue.Jacksonvile],cost:9},{nodes:[Ue.NewOrleans,Ue.Jacksonvile],cost:16},{nodes:[Ue.Fargo,Ue.Duluth],cost:6},{nodes:[Ue.Fargo,Ue.Minneapolis],cost:6},{nodes:[Ue.Duluth,Ue.Minneapolis],cost:5},{nodes:[Ue.Duluth,Ue.Chicago],cost:12},{nodes:[Ue.Duluth,Ue.Detroit],cost:15},{nodes:[Ue.Minneapolis,Ue.Chicago],cost:8},{nodes:[Ue.Chicago,Ue.StLouis],cost:10},{nodes:[Ue.Chicago,Ue.Cincinnati],cost:7},{nodes:[Ue.Chicago,Ue.Detroit],cost:7},{nodes:[Ue.StLouis,Ue.Cincinnati],cost:12},{nodes:[Ue.StLouis,Ue.Atlanta],cost:12},{nodes:[Ue.Cincinnati,Ue.Knoxvile],cost:6},{nodes:[Ue.Cincinnati,Ue.Detroit],cost:4},{nodes:[Ue.Cincinnati,Ue.Pittsburgh],cost:7},{nodes:[Ue.Cincinnati,Ue.Raleigh],cost:15},{nodes:[Ue.Knoxvile,Ue.Atlanta],cost:5},{nodes:[Ue.Detroit,Ue.Buffalo],cost:7},{nodes:[Ue.Detroit,Ue.Pittsburgh],cost:6},{nodes:[Ue.Buffalo,Ue.Pittsburgh],cost:7},{nodes:[Ue.Buffalo,Ue.NewYork],cost:8},{nodes:[Ue.Pittsburgh,Ue.Washington],cost:6},{nodes:[Ue.Pittsburgh,Ue.Raleigh],cost:7},{nodes:[Ue.Boston,Ue.NewYork],cost:3},{nodes:[Ue.NewYork,Ue.Philadelphia],cost:0},{nodes:[Ue.Philadelphia,Ue.Washington],cost:3},{nodes:[Ue.Washington,Ue.Norfolk],cost:5},{nodes:[Ue.Norfolk,Ue.Raleigh],cost:3},{nodes:[Ue.Raleigh,Ue.Atlanta],cost:7},{nodes:[Ue.Raleigh,Ue.Savannah],cost:7},{nodes:[Ue.Atlanta,Ue.Savannah],cost:7},{nodes:[Ue.Savannah,Ue.Jacksonvile],cost:0},{nodes:[Ue.Jacksonvile,Ue.Tampa],cost:4},{nodes:[Ue.Tampa,Ue.Miami],cost:4}],layout:"Landscape",polygons:[{region:Ie.Brown,points:[[930,423],[1082,331],[1075,231],[716,249],[758,303],[897,406]]},{region:Ie.Green,points:[[898,405],[762,499],[758,643],[887,744],[938,688],[889,618],[1014,432],[985,387],[929,420]]},{region:Ie.Yellow,points:[[895,403],[760,499],[630,393],[607,345],[608,275],[439,162],[654,114],[771,245],[716,247],[758,301]]},{region:Ie.Red,points:[[606,344],[476,371],[445,597],[546,664],[758,641],[760,497],[629,391]]},{region:Ie.Purple,points:[[606,342],[476,369],[347,395],[313,301],[18,287],[18,165],[76,74],[438,160],[607,275]]},{region:Ie.Cyan,points:[[18,285],[20,429],[142,583],[445,594],[476,368],[346,392],[312,300]]}]},Je={name:"USA",cities:[{name:Ue.Seattle,region:Ie.Purple,x:74,y:99},{name:Ue.Portland,region:Ie.Purple,x:45,y:167},{name:Ue.Boise,region:Ie.Purple,x:180,y:220},{name:Ue.Billings,region:Ie.Purple,x:345,y:180},{name:Ue.Cheyenne,region:Ie.Purple,x:410,y:280},{name:Ue.Denver,region:Ie.Purple,x:400,y:333},{name:Ue.Omaha,region:Ie.Purple,x:566,y:293},{name:Ue.SanFrancisco,region:Ie.Cyan,x:48,y:371},{name:Ue.LosAngeles,region:Ie.Cyan,x:116,y:460},{name:Ue.SanDiego,region:Ie.Cyan,x:157,y:507},{name:Ue.LasVegas,region:Ie.Cyan,x:200,y:410},{name:Ue.SaltLakeCity,region:Ie.Cyan,x:266,y:311},{name:Ue.Phoenix,region:Ie.Cyan,x:260,y:486},{name:Ue.SantaFe,region:Ie.Cyan,x:371,y:435},{name:Ue.KansasCity,region:Ie.Red,x:587,y:356},{name:Ue.OklahomaCity,region:Ie.Red,x:550,y:437},{name:Ue.Dallas,region:Ie.Red,x:560,y:504},{name:Ue.Houston,region:Ie.Red,x:569,y:571},{name:Ue.Memphis,region:Ie.Red,x:678,y:449},{name:Ue.Birmingham,region:Ie.Red,x:739,y:486},{name:Ue.NewOrleans,region:Ie.Red,x:674,y:570},{name:Ue.Fargo,region:Ie.Yellow,x:551,y:152},{name:Ue.Duluth,region:Ie.Yellow,x:637,y:133},{name:Ue.Minneapolis,region:Ie.Yellow,x:621,y:190},{name:Ue.Chicago,region:Ie.Yellow,x:716,y:281},{name:Ue.StLouis,region:Ie.Yellow,x:678,y:362},{name:Ue.Cincinnati,region:Ie.Yellow,x:795,y:348},{name:Ue.Knoxvile,region:Ie.Yellow,x:796,y:422},{name:Ue.Detroit,region:Ie.Brown,x:803,y:262},{name:Ue.Buffalo,region:Ie.Brown,x:913,y:251},{name:Ue.Pittsburgh,region:Ie.Brown,x:884,y:316},{name:Ue.Boston,region:Ie.Brown,x:1052,y:252},{name:Ue.NewYork,region:Ie.Brown,x:1010,y:290},{name:Ue.Philadelphia,region:Ie.Brown,x:985,y:330},{name:Ue.Washington,region:Ie.Brown,x:934,y:357},{name:Ue.Norfolk,region:Ie.Green,x:969,y:405},{name:Ue.Raleigh,region:Ie.Green,x:915,y:437},{name:Ue.Atlanta,region:Ie.Green,x:801,y:487},{name:Ue.Savannah,region:Ie.Green,x:867,y:507},{name:Ue.Jacksonvile,region:Ie.Green,x:861,y:559},{name:Ue.Tampa,region:Ie.Green,x:819,y:621},{name:Ue.Miami,region:Ie.Green,x:883,y:670}],connections:[{nodes:[Ue.Seattle,Ue.Portland],cost:3},{nodes:[Ue.Seattle,Ue.Boise],cost:12},{nodes:[Ue.Seattle,Ue.Billings],cost:9},{nodes:[Ue.Portland,Ue.Boise],cost:13},{nodes:[Ue.Portland,Ue.SanFrancisco],cost:24},{nodes:[Ue.Boise,Ue.Billings],cost:12},{nodes:[Ue.Boise,Ue.SanFrancisco],cost:23},{nodes:[Ue.Boise,Ue.SaltLakeCity],cost:8},{nodes:[Ue.Billings,Ue.Cheyenne],cost:9},{nodes:[Ue.Billings,Ue.Fargo],cost:17},{nodes:[Ue.Billings,Ue.Minneapolis],cost:18},{nodes:[Ue.Cheyenne,Ue.Denver],cost:0},{nodes:[Ue.Cheyenne,Ue.Omaha],cost:14},{nodes:[Ue.Cheyenne,Ue.Minneapolis],cost:18},{nodes:[Ue.Denver,Ue.SaltLakeCity],cost:21},{nodes:[Ue.Denver,Ue.SantaFe],cost:13},{nodes:[Ue.Denver,Ue.KansasCity],cost:16},{nodes:[Ue.Omaha,Ue.KansasCity],cost:5},{nodes:[Ue.Omaha,Ue.Minneapolis],cost:8},{nodes:[Ue.Omaha,Ue.Chicago],cost:12},{nodes:[Ue.SanFrancisco,Ue.LosAngeles],cost:9},{nodes:[Ue.SanFrancisco,Ue.LasVegas],cost:14},{nodes:[Ue.SanFrancisco,Ue.SaltLakeCity],cost:27},{nodes:[Ue.LosAngeles,Ue.SanDiego],cost:3},{nodes:[Ue.LosAngeles,Ue.LasVegas],cost:9},{nodes:[Ue.SanDiego,Ue.LasVegas],cost:9},{nodes:[Ue.SanDiego,Ue.Phoenix],cost:14},{nodes:[Ue.LasVegas,Ue.SaltLakeCity],cost:18},{nodes:[Ue.LasVegas,Ue.Phoenix],cost:15},{nodes:[Ue.LasVegas,Ue.SantaFe],cost:27},{nodes:[Ue.SaltLakeCity,Ue.SantaFe],cost:28},{nodes:[Ue.Phoenix,Ue.SantaFe],cost:18},{nodes:[Ue.SantaFe,Ue.KansasCity],cost:16},{nodes:[Ue.SantaFe,Ue.OklahomaCity],cost:15},{nodes:[Ue.SantaFe,Ue.Dallas],cost:16},{nodes:[Ue.SantaFe,Ue.Houston],cost:20},{nodes:[Ue.KansasCity,Ue.OklahomaCity],cost:8},{nodes:[Ue.KansasCity,Ue.Memphis],cost:12},{nodes:[Ue.KansasCity,Ue.Chicago],cost:8},{nodes:[Ue.KansasCity,Ue.StLouis],cost:6},{nodes:[Ue.OklahomaCity,Ue.Dallas],cost:3},{nodes:[Ue.OklahomaCity,Ue.Memphis],cost:14},{nodes:[Ue.Dallas,Ue.Houston],cost:5},{nodes:[Ue.Dallas,Ue.Memphis],cost:12},{nodes:[Ue.Dallas,Ue.NewOrleans],cost:12},{nodes:[Ue.Houston,Ue.NewOrleans],cost:8},{nodes:[Ue.Memphis,Ue.Birmingham],cost:6},{nodes:[Ue.Memphis,Ue.NewOrleans],cost:7},{nodes:[Ue.Memphis,Ue.StLouis],cost:7},{nodes:[Ue.Birmingham,Ue.NewOrleans],cost:11},{nodes:[Ue.Birmingham,Ue.Atlanta],cost:3},{nodes:[Ue.Birmingham,Ue.Jacksonvile],cost:9},{nodes:[Ue.NewOrleans,Ue.Jacksonvile],cost:16},{nodes:[Ue.Fargo,Ue.Duluth],cost:6},{nodes:[Ue.Fargo,Ue.Minneapolis],cost:6},{nodes:[Ue.Duluth,Ue.Minneapolis],cost:5},{nodes:[Ue.Duluth,Ue.Chicago],cost:12},{nodes:[Ue.Duluth,Ue.Detroit],cost:15},{nodes:[Ue.Minneapolis,Ue.Chicago],cost:8},{nodes:[Ue.Chicago,Ue.StLouis],cost:10},{nodes:[Ue.Chicago,Ue.Cincinnati],cost:7},{nodes:[Ue.Chicago,Ue.Detroit],cost:7},{nodes:[Ue.StLouis,Ue.Cincinnati],cost:12},{nodes:[Ue.StLouis,Ue.Atlanta],cost:12},{nodes:[Ue.Cincinnati,Ue.Knoxvile],cost:6},{nodes:[Ue.Cincinnati,Ue.Detroit],cost:4},{nodes:[Ue.Cincinnati,Ue.Pittsburgh],cost:7},{nodes:[Ue.Knoxvile,Ue.Atlanta],cost:5},{nodes:[Ue.Knoxvile,Ue.Raleigh],cost:11},{nodes:[Ue.Detroit,Ue.Buffalo],cost:7},{nodes:[Ue.Detroit,Ue.Pittsburgh],cost:6},{nodes:[Ue.Buffalo,Ue.Pittsburgh],cost:7},{nodes:[Ue.Buffalo,Ue.NewYork],cost:8},{nodes:[Ue.Pittsburgh,Ue.Washington],cost:6},{nodes:[Ue.Pittsburgh,Ue.Raleigh],cost:7},{nodes:[Ue.Boston,Ue.NewYork],cost:3},{nodes:[Ue.NewYork,Ue.Philadelphia],cost:0},{nodes:[Ue.Philadelphia,Ue.Washington],cost:3},{nodes:[Ue.Washington,Ue.Norfolk],cost:5},{nodes:[Ue.Norfolk,Ue.Raleigh],cost:3},{nodes:[Ue.Raleigh,Ue.Atlanta],cost:7},{nodes:[Ue.Raleigh,Ue.Savannah],cost:7},{nodes:[Ue.Atlanta,Ue.Savannah],cost:7},{nodes:[Ue.Savannah,Ue.Jacksonvile],cost:0},{nodes:[Ue.Jacksonvile,Ue.Tampa],cost:4},{nodes:[Ue.Tampa,Ue.Miami],cost:4}],layout:"Landscape",mapSpecificRules:"You can buy coal from the supply for $8."},$e=[{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}],qe=Object(we["cloneDeep"])($e).filter((function(e){return 11!=e.number}));qe.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"}(Fe||(Fe={})),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"}(Ye||(Ye={}));var Ze,Xe,Qe={name:"Australia",layout:"Landscape",adjustRatio:[.33,.33],mapPosition:[40,-30],mapRotation:180,cities:[{name:Ye.Hobart,region:Fe.Pink,x:540,y:467},{name:Ye.Launceston,region:Fe.Pink,x:720,y:500},{name:Ye.Geelong,region:Fe.Pink,x:988,y:712},{name:Ye.Melbourne1,region:Fe.Pink,x:790,y:650},{name:Ye.Melbourne2,region:Fe.Pink,x:790,y:790},{name:Ye.Bendigo,region:Fe.Pink,x:1052,y:870},{name:Ye.Albury,region:Fe.Brown,x:810,y:983},{name:Ye.Wollongong,region:Fe.Brown,x:530,y:1080},{name:Ye.Mildura,region:Fe.Pink,x:1185,y:1010},{name:Ye.Dubbo,region:Fe.Brown,x:891,y:1364},{name:Ye.Canberra,region:Fe.Brown,x:804,y:1188},{name:Ye.Sydney1,region:Fe.Brown,x:550,y:1230},{name:Ye.Sydney2,region:Fe.Brown,x:550,y:1380},{name:Ye.Newcastle,region:Fe.Brown,x:530,y:1545},{name:Ye.Toowoomba,region:Fe.Green,x:1010,y:1660},{name:Ye.Goldcoast,region:Fe.Green,x:660,y:1730},{name:Ye.Brisbane,region:Fe.Green,x:740,y:1885},{name:Ye.Rockhampton,region:Fe.Green,x:1040,y:1987},{name:Ye.Mackay,region:Fe.Green,x:1260,y:2101},{name:Ye.Townsville,region:Fe.Green,x:1445,y:2193},{name:Ye.Cairns,region:Fe.Green,x:1652,y:2209},{name:Ye.Porthedland,region:Fe.Red,x:2741,y:2002},{name:Ye.Broome,region:Fe.Red,x:2503,y:2175},{name:Ye.Albany,region:Fe.Red,x:2400,y:850},{name:Ye.Bunbury,region:Fe.Red,x:2700,y:1030},{name:Ye.Perth,region:Fe.Red,x:2680,y:1230},{name:Ye.Kalgoorlie,region:Fe.Red,x:2177,y:1295},{name:Ye.Geraldton,region:Fe.Red,x:2747,y:1557},{name:Ye.Darwin,region:Fe.Yellow,x:2264,y:2016},{name:Ye.Katherine,region:Fe.Yellow,x:2105,y:1947},{name:Ye.Tennantcreek,region:Fe.Yellow,x:1905,y:1736},{name:Ye.Alicesprings,region:Fe.Yellow,x:1803,y:1512},{name:Ye.Portaugusta,region:Fe.Yellow,x:1520,y:1094},{name:Ye.CooberPedy,region:Fe.Yellow,x:1850,y:1232},{name:Ye.Adelaide,region:Fe.Yellow,x:1430,y:863}],connections:[{nodes:[Ye.Broome,Ye.Porthedland],cost:13},{nodes:[Ye.Kalgoorlie,Ye.Geraldton],cost:16},{nodes:[Ye.Geraldton,Ye.Perth],cost:9},{nodes:[Ye.Perth,Ye.Kalgoorlie],cost:12},{nodes:[Ye.Kalgoorlie,Ye.Albany],cost:16},{nodes:[Ye.Albany,Ye.Perth],cost:9},{nodes:[Ye.Perth,Ye.Bunbury],cost:4},{nodes:[Ye.Bunbury,Ye.Albany],cost:6},{nodes:[Ye.Cairns,Ye.Townsville],cost:9},{nodes:[Ye.Townsville,Ye.Mackay],cost:9},{nodes:[Ye.Mackay,Ye.Rockhampton],cost:8},{nodes:[Ye.Rockhampton,Ye.Toowoomba],cost:15},{nodes:[Ye.Toowoomba,Ye.Brisbane],cost:5},{nodes:[Ye.Brisbane,Ye.Rockhampton],cost:15},{nodes:[Ye.Brisbane,Ye.Goldcoast],cost:2},{nodes:[Ye.Goldcoast,Ye.Toowoomba],cost:6},{nodes:[Ye.Goldcoast,Ye.Newcastle],cost:15},{nodes:[Ye.Newcastle,Ye.Sydney2],cost:4},{nodes:[Ye.Sydney2,Ye.Sydney1],cost:0},{nodes:[Ye.Newcastle,Ye.Dubbo],cost:10},{nodes:[Ye.Dubbo,Ye.Toowoomba],cost:18},{nodes:[Ye.Sydney1,Ye.Wollongong],cost:2},{nodes:[Ye.Sydney1,Ye.Canberra],cost:8},{nodes:[Ye.Canberra,Ye.Dubbo],cost:11},{nodes:[Ye.Canberra,Ye.Newcastle],cost:10},{nodes:[Ye.Dubbo,Ye.Mildura],cost:16},{nodes:[Ye.Mildura,Ye.Canberra],cost:16},{nodes:[Ye.Canberra,Ye.Albury],cost:7},{nodes:[Ye.Mildura,Ye.Bendigo],cost:7},{nodes:[Ye.Bendigo,Ye.Melbourne2],cost:3},{nodes:[Ye.Melbourne2,Ye.Albury],cost:9},{nodes:[Ye.Mildura,Ye.Adelaide],cost:8},{nodes:[Ye.Adelaide,Ye.Portaugusta],cost:7},{nodes:[Ye.Portaugusta,Ye.CooberPedy],cost:11},{nodes:[Ye.Mildura,Ye.Portaugusta],cost:11},{nodes:[Ye.Adelaide,Ye.Geelong],cost:13},{nodes:[Ye.Geelong,Ye.Bendigo],cost:5},{nodes:[Ye.Bendigo,Ye.Albury],cost:6},{nodes:[Ye.Wollongong,Ye.Melbourne1],cost:19},{nodes:[Ye.Melbourne1,Ye.Launceston],cost:19},{nodes:[Ye.Launceston,Ye.Hobart],cost:5},{nodes:[Ye.Melbourne1,Ye.Geelong],cost:2},{nodes:[Ye.Melbourne2,Ye.Melbourne1],cost:0},{nodes:[Ye.CooberPedy,Ye.Alicesprings],cost:13},{nodes:[Ye.Alicesprings,Ye.Tennantcreek],cost:10},{nodes:[Ye.Tennantcreek,Ye.Katherine],cost:14},{nodes:[Ye.Katherine,Ye.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"])($e).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=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{var u=Ne(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=Ne(a,t()+""),2==e?(u=u.slice(1),a=Ne(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=Ne(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=Ne(a.slice(3).concat(u),t()+"")):a=Ne(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"})(Ze||(Ze={})),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"}(Xe||(Xe={}));var en,nn,tn={name:"Baden-Württemberg",cities:[{name:Xe.Friedrichshafen,region:Ze.Purple,x:1286,y:2177},{name:Xe.Ravensburg,region:Ze.Purple,x:1365,y:2023},{name:Xe.Biberach,region:Ze.Purple,x:1451,y:1779},{name:Xe.Sigmarincen,region:Ze.Purple,x:1111,y:1803},{name:Xe.Konstanz,region:Ze.Purple,x:1088,y:2163},{name:Xe.Ulm,region:Ze.Purple,x:1541,y:1499},{name:Xe.Augsburg,region:Ze.Purple,x:1830,y:1505,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Basel,region:Ze.Green,x:103,y:2271,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Waldshuttiencen,region:Ze.Green,x:502,y:2166},{name:Xe.Singen,region:Ze.Green,x:874,y:2084},{name:Xe.Tuttlincen,region:Ze.Green,x:870,y:1854},{name:Xe.Donaueschingen,region:Ze.Green,x:669,y:1923},{name:Xe.Freiburg,region:Ze.Green,x:290,y:1828},{name:Xe.Lorrach,region:Ze.Green,x:212,y:2141},{name:Xe.Tauberbischofsheim,region:Ze.Red,x:1354,y:450},{name:Xe.Schwabischhall,region:Ze.Red,x:1415,y:899},{name:Xe.Heilbronn,region:Ze.Red,x:1115,y:872},{name:Xe.Sinsheim,region:Ze.Red,x:920,y:785},{name:Xe.Heidelber,region:Ze.Red,x:817,y:660},{name:Xe.Mannheim,region:Ze.Red,x:710,y:540},{name:Xe.Luowigshafen,region:Ze.Red,x:579,y:588,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Nurnberg,region:Ze.Blue,x:1837,y:771,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Ellwangen,region:Ze.Blue,x:1637,y:1030},{name:Xe.Coppingen,region:Ze.Blue,x:1387,y:1233},{name:Xe.Reutlincen,region:Ze.Blue,x:1107,y:1443},{name:Xe.Stuttgart,region:Ze.Blue,x:1106,y:1217},{name:Xe.Ludwigsburg,region:Ze.Blue,x:1099,y:1047},{name:Xe.Boblingen,region:Ze.Blue,x:956,y:1277},{name:Xe.Laha,region:Ze.Yellow,x:296,y:1575},{name:Xe.Badenbaden,region:Ze.Yellow,x:554,y:1259},{name:Xe.Offenburg,region:Ze.Yellow,x:395,y:1422},{name:Xe.Strasbourg,region:Ze.Yellow,x:211,y:1330,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Xe.Pforzheim,region:Ze.Yellow,x:794,y:1095},{name:Xe.Rastatt,region:Ze.Yellow,x:509,y:1109},{name:Xe.Karlsruhf,region:Ze.Yellow,x:638,y:974}],connections:[{nodes:[Xe.Luowigshafen,Xe.Mannheim],cost:0},{nodes:[Xe.Mannheim,Xe.Heidelber],cost:4},{nodes:[Xe.Mannheim,Xe.Karlsruhf],cost:10},{nodes:[Xe.Karlsruhf,Xe.Heidelber],cost:9},{nodes:[Xe.Heidelber,Xe.Sinsheim],cost:5},{nodes:[Xe.Sinsheim,Xe.Tauberbischofsheim],cost:15},{nodes:[Xe.Tauberbischofsheim,Xe.Heilbronn],cost:13},{nodes:[Xe.Heilbronn,Xe.Sinsheim],cost:6},{nodes:[Xe.Sinsheim,Xe.Karlsruhf],cost:9},{nodes:[Xe.Karlsruhf,Xe.Rastatt],cost:4},{nodes:[Xe.Karlsruhf,Xe.Pforzheim],cost:6},{nodes:[Xe.Pforzheim,Xe.Sinsheim],cost:10},{nodes:[Xe.Tauberbischofsheim,Xe.Schwabischhall],cost:13},{nodes:[Xe.Schwabischhall,Xe.Ellwangen],cost:8},{nodes:[Xe.Ellwangen,Xe.Nurnberg],cost:18},{nodes:[Xe.Schwabischhall,Xe.Coppingen],cost:11},{nodes:[Xe.Coppingen,Xe.Ellwangen],cost:10},{nodes:[Xe.Ludwigsburg,Xe.Heilbronn],cost:5},{nodes:[Xe.Heilbronn,Xe.Schwabischhall],cost:9},{nodes:[Xe.Schwabischhall,Xe.Ludwigsburg],cost:10},{nodes:[Xe.Ludwigsburg,Xe.Coppingen],cost:9},{nodes:[Xe.Coppingen,Xe.Stuttgart],cost:8},{nodes:[Xe.Ludwigsburg,Xe.Sinsheim],cost:10},{nodes:[Xe.Ludwigsburg,Xe.Pforzheim],cost:8},{nodes:[Xe.Pforzheim,Xe.Badenbaden],cost:9},{nodes:[Xe.Badenbaden,Xe.Rastatt],cost:2},{nodes:[Xe.Strasbourg,Xe.Offenburg],cost:5},{nodes:[Xe.Offenburg,Xe.Badenbaden],cost:8},{nodes:[Xe.Pforzheim,Xe.Stuttgart],cost:8},{nodes:[Xe.Stuttgart,Xe.Ludwigsburg],cost:2},{nodes:[Xe.Stuttgart,Xe.Boblingen],cost:4},{nodes:[Xe.Boblingen,Xe.Pforzheim],cost:7},{nodes:[Xe.Boblingen,Xe.Badenbaden],cost:15},{nodes:[Xe.Reutlincen,Xe.Stuttgart],cost:9},{nodes:[Xe.Boblingen,Xe.Reutlincen],cost:8},{nodes:[Xe.Reutlincen,Xe.Badenbaden],cost:22},{nodes:[Xe.Offenburg,Xe.Reutlincen],cost:30},{nodes:[Xe.Reutlincen,Xe.Coppingen],cost:10},{nodes:[Xe.Coppingen,Xe.Ulm],cost:10},{nodes:[Xe.Ulm,Xe.Reutlincen],cost:16},{nodes:[Xe.Ellwangen,Xe.Ulm],cost:19},{nodes:[Xe.Ulm,Xe.Augsburg],cost:16},{nodes:[Xe.Reutlincen,Xe.Tuttlincen],cost:17},{nodes:[Xe.Reutlincen,Xe.Sigmarincen],cost:11},{nodes:[Xe.Sigmarincen,Xe.Ulm],cost:14},{nodes:[Xe.Ulm,Xe.Biberach],cost:8},{nodes:[Xe.Biberach,Xe.Sigmarincen],cost:11},{nodes:[Xe.Biberach,Xe.Ravensburg],cost:9},{nodes:[Xe.Ravensburg,Xe.Sigmarincen],cost:10},{nodes:[Xe.Sigmarincen,Xe.Tuttlincen],cost:7},{nodes:[Xe.Tuttlincen,Xe.Offenburg],cost:27},{nodes:[Xe.Offenburg,Xe.Laha],cost:3},{nodes:[Xe.Laha,Xe.Freiburg],cost:8},{nodes:[Xe.Laha,Xe.Donaueschingen],cost:19},{nodes:[Xe.Donaueschingen,Xe.Tuttlincen],cost:6},{nodes:[Xe.Tuttlincen,Xe.Singen],cost:7},{nodes:[Xe.Singen,Xe.Donaueschingen],cost:7},{nodes:[Xe.Donaueschingen,Xe.Freiburg],cost:13},{nodes:[Xe.Freiburg,Xe.Lorrach],cost:10},{nodes:[Xe.Freiburg,Xe.Waldshuttiencen],cost:15},{nodes:[Xe.Waldshuttiencen,Xe.Lorrach],cost:9},{nodes:[Xe.Lorrach,Xe.Basel],cost:2},{nodes:[Xe.Waldshuttiencen,Xe.Donaueschingen],cost:11},{nodes:[Xe.Singen,Xe.Konstanz],cost:6},{nodes:[Xe.Konstanz,Xe.Friedrichshafen],cost:9},{nodes:[Xe.Friedrichshafen,Xe.Ravensburg],cost:3},{nodes:[Xe.Friedrichshafen,Xe.Sigmarincen],cost:11},{nodes:[Xe.Sigmarincen,Xe.Konstanz],cost:14},{nodes:[Xe.Konstanz,Xe.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"})(en||(en={})),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"}(nn||(nn={}));var rn,on,an={name:"Benelux",cities:[{name:nn.Groningen,region:en.Green,x:654,y:147},{name:nn.Enschede,region:en.Green,x:659,y:369},{name:nn.Apeldoorn,region:en.Green,x:552,y:329},{name:nn.Arnhem,region:en.Green,x:541,y:386},{name:nn.Leeuwarden,region:en.Green,x:560,y:136},{name:nn.Nijmegen,region:en.Green,x:518,y:445},{name:nn.Denhelder,region:en.Green,x:411,y:169},{name:nn.Zaanstad,region:en.Brown,x:432,y:245},{name:nn.Amsterdam,region:en.Brown,x:437,y:299},{name:nn.Utrecht,region:en.Brown,x:429,y:361},{name:nn.Haarlem,region:en.Brown,x:373,y:259},{name:nn.Leiden,region:en.Brown,x:355,y:322},{name:nn.Denhaas,region:en.Brown,x:300,y:347},{name:nn.Rotterdam,region:en.Brown,x:338,y:400},{name:nn.Enbosch,region:en.Yellow,x:448,y:447},{name:nn.Venlo,region:en.Yellow,x:550,y:526},{name:nn.Eindhoven,region:en.Yellow,x:463,y:539},{name:nn.Tilburg,region:en.Yellow,x:404,y:497},{name:nn.Breda,region:en.Yellow,x:349,y:466},{name:nn.Middelburg,region:en.Yellow,x:210,y:453},{name:nn.Maastricht,region:en.Yellow,x:480,y:640},{name:nn.Leuven,region:en.Red,x:352,y:619},{name:nn.Brussel,region:en.Red,x:286,y:595},{name:nn.Antwerpen,region:en.Red,x:304,y:526},{name:nn.Gent,region:en.Red,x:206,y:562},{name:nn.Kortrijk,region:en.Red,x:132,y:589},{name:nn.Brugge,region:en.Red,x:160,y:511},{name:nn.Dostende,region:en.Red,x:94,y:495},{name:nn.Liege,region:en.Blue,x:445,y:705},{name:nn.Namur,region:en.Blue,x:361,y:713},{name:nn.Bruxelles,region:en.Blue,x:283,y:642},{name:nn.Charleroi,region:en.Blue,x:278,y:725},{name:nn.Mons,region:en.Blue,x:212,y:686},{name:nn.Arlon,region:en.Blue,x:431,y:876},{name:nn.Luxembourg,region:en.Blue,x:502,y:918}],connections:[{nodes:[nn.Denhelder,nn.Leeuwarden],cost:13},{nodes:[nn.Leeuwarden,nn.Groningen],cost:6},{nodes:[nn.Groningen,nn.Enschede],cost:12},{nodes:[nn.Enschede,nn.Apeldoorn],cost:9},{nodes:[nn.Apeldoorn,nn.Arnhem],cost:3},{nodes:[nn.Arnhem,nn.Nijmegen],cost:2},{nodes:[nn.Nijmegen,nn.Enbosch],cost:6},{nodes:[nn.Nijmegen,nn.Venlo],cost:7},{nodes:[nn.Nijmegen,nn.Eindhoven],cost:7},{nodes:[nn.Eindhoven,nn.Enbosch],cost:4},{nodes:[nn.Enbosch,nn.Utrecht],cost:8},{nodes:[nn.Apeldoorn,nn.Leeuwarden],cost:15},{nodes:[nn.Leeuwarden,nn.Enschede],cost:13},{nodes:[nn.Enschede,nn.Arnhem],cost:7},{nodes:[nn.Arnhem,nn.Utrecht],cost:6},{nodes:[nn.Utrecht,nn.Amsterdam],cost:4},{nodes:[nn.Amsterdam,nn.Haarlem],cost:2},{nodes:[nn.Haarlem,nn.Zaanstad],cost:2},{nodes:[nn.Zaanstad,nn.Denhelder],cost:6},{nodes:[nn.Denhelder,nn.Haarlem],cost:7},{nodes:[nn.Haarlem,nn.Leiden],cost:3},{nodes:[nn.Leiden,nn.Denhaas],cost:2},{nodes:[nn.Denhaas,nn.Rotterdam],cost:3},{nodes:[nn.Rotterdam,nn.Leiden],cost:3},{nodes:[nn.Leiden,nn.Amsterdam],cost:4},{nodes:[nn.Leiden,nn.Utrecht],cost:4},{nodes:[nn.Utrecht,nn.Rotterdam],cost:5},{nodes:[nn.Rotterdam,nn.Enbosch],cost:11},{nodes:[nn.Breda,nn.Rotterdam],cost:8},{nodes:[nn.Breda,nn.Middelburg],cost:9},{nodes:[nn.Middelburg,nn.Antwerpen],cost:8},{nodes:[nn.Antwerpen,nn.Brugge],cost:9},{nodes:[nn.Brugge,nn.Dostende],cost:2},{nodes:[nn.Amsterdam,nn.Zaanstad],cost:1},{nodes:[nn.Amsterdam,nn.Apeldoorn],cost:7},{nodes:[nn.Apeldoorn,nn.Utrecht],cost:6},{nodes:[nn.Venlo,nn.Eindhoven],cost:5},{nodes:[nn.Eindhoven,nn.Tilburg],cost:4},{nodes:[nn.Tilburg,nn.Breda],cost:2},{nodes:[nn.Breda,nn.Enbosch],cost:5},{nodes:[nn.Breda,nn.Antwerpen],cost:5},{nodes:[nn.Antwerpen,nn.Tilburg],cost:6},{nodes:[nn.Antwerpen,nn.Eindhoven],cost:8},{nodes:[nn.Eindhoven,nn.Maastricht],cost:8},{nodes:[nn.Maastricht,nn.Venlo],cost:10},{nodes:[nn.Maastricht,nn.Leuven],cost:7},{nodes:[nn.Leuven,nn.Eindhoven],cost:9},{nodes:[nn.Leuven,nn.Brussel],cost:2},{nodes:[nn.Brussel,nn.Bruxelles],cost:0},{nodes:[nn.Bruxelles,nn.Charleroi],cost:5},{nodes:[nn.Charleroi,nn.Namur],cost:3},{nodes:[nn.Namur,nn.Bruxelles],cost:5},{nodes:[nn.Leuven,nn.Namur],cost:5},{nodes:[nn.Leuven,nn.Liege],cost:7},{nodes:[nn.Liege,nn.Namur],cost:6},{nodes:[nn.Liege,nn.Maastricht],cost:3},{nodes:[nn.Kortrijk,nn.Dostende],cost:5},{nodes:[nn.Brugge,nn.Kortrijk],cost:4},{nodes:[nn.Kortrijk,nn.Gent],cost:4},{nodes:[nn.Gent,nn.Brugge],cost:3},{nodes:[nn.Kortrijk,nn.Bruxelles],cost:10},{nodes:[nn.Bruxelles,nn.Mons],cost:5},{nodes:[nn.Mons,nn.Kortrijk],cost:8},{nodes:[nn.Gent,nn.Antwerpen],cost:5},{nodes:[nn.Antwerpen,nn.Brussel],cost:4},{nodes:[nn.Brussel,nn.Gent],cost:7},{nodes:[nn.Antwerpen,nn.Leuven],cost:4},{nodes:[nn.Mons,nn.Charleroi],cost:4},{nodes:[nn.Charleroi,nn.Arlon],cost:18},{nodes:[nn.Arlon,nn.Luxembourg],cost:5},{nodes:[nn.Luxembourg,nn.Liege],cost:20},{nodes:[nn.Liege,nn.Arlon],cost:18},{nodes:[nn.Arlon,nn.Namur],cost:16},{nodes:[nn.Tilburg,nn.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"})(rn||(rn={})),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"}(on||(on={}));var sn,cn,un={name:"Brazil",cities:[{name:on.Parnaiba,region:rn.Red,x:855,y:458},{name:on.Fortaleza,region:rn.Red,x:961,y:478},{name:on.Sadluis,region:rn.Red,x:772,y:418},{name:on.Belem,region:rn.Red,x:655,y:378},{name:on.Teresina,region:rn.Red,x:846,y:548},{name:on.Imperatriz,region:rn.Red,x:697,y:535},{name:on.Maraba,region:rn.Red,x:581,y:492},{name:on.Campinagrande,region:rn.Pink,x:976,y:587},{name:on.Petrolina,region:rn.Pink,x:872,y:648},{name:on.Natal,region:rn.Pink,x:1061,y:518},{name:on.Joaopessoa,region:rn.Pink,x:1097,y:576},{name:on.Recife,region:rn.Pink,x:1083,y:637},{name:on.Maceio,region:rn.Pink,x:1040,y:699},{name:on.Aracaju,region:rn.Pink,x:995,y:750},{name:on.Salvadordabahia,region:rn.Purple,x:960,y:808},{name:on.Montesclaros,region:rn.Purple,x:795,y:847},{name:on.Brasilia,region:rn.Purple,x:671,y:817},{name:on.Palmas,region:rn.Purple,x:648,y:663},{name:on.Porangatu,region:rn.Purple,x:598,y:762},{name:on.Goiania,region:rn.Purple,x:601,y:889},{name:on.Uberlandia,region:rn.Purple,x:646,y:964},{name:on.Vitoria,region:rn.Green,x:910,y:971},{name:on.Riodejaneiro,region:rn.Green,x:795,y:1076},{name:on.Saogoncalo,region:rn.Green,x:843,y:1033},{name:on.Saopaulo,region:rn.Green,x:721,y:1134},{name:on.Guarulhos,region:rn.Green,x:678,y:1089},{name:on.Campinas,region:rn.Green,x:629,y:1037},{name:on.Belohorizonte,region:rn.Green,x:771,y:960},{name:on.Curitiba,region:rn.Brown,x:615,y:1144},{name:on.Florianopolis,region:rn.Brown,x:665,y:1214},{name:on.Portoalecre,region:rn.Brown,x:590,y:1281},{name:on.Pelotas,region:rn.Brown,x:551,y:1346},{name:on.Urucuaiana,region:rn.Brown,x:444,y:1250},{name:on.Londrina,region:rn.Brown,x:516,y:1075},{name:on.Campogrande,region:rn.Brown,x:440,y:983},{name:on.Macapa,region:rn.Yellow,x:561,y:317},{name:on.Boavista,region:rn.Yellow,x:308,y:269},{name:on.Manaus,region:rn.Yellow,x:258,y:466},{name:on.Portovelho,region:rn.Yellow,x:238,y:620},{name:on.Cuiaba,region:rn.Yellow,x:432,y:850},{name:on.Vilhena,region:rn.Yellow,x:328,y:741},{name:on.Riobranco,region:rn.Yellow,x:87,y:666}],connections:[{nodes:[on.Boavista,on.Macapa],cost:22},{nodes:[on.Macapa,on.Belem],cost:10},{nodes:[on.Belem,on.Sadluis],cost:10},{nodes:[on.Sadluis,on.Imperatriz],cost:9},{nodes:[on.Belem,on.Imperatriz],cost:9},{nodes:[on.Belem,on.Maraba],cost:9},{nodes:[on.Macapa,on.Maraba],cost:16},{nodes:[on.Maraba,on.Manaus],cost:22},{nodes:[on.Macapa,on.Manaus],cost:18},{nodes:[on.Boavista,on.Manaus],cost:13},{nodes:[on.Boavista,on.Riobranco],cost:30},{nodes:[on.Riobranco,on.Manaus],cost:23},{nodes:[on.Manaus,on.Portovelho],cost:15},{nodes:[on.Portovelho,on.Riobranco],cost:10},{nodes:[on.Riobranco,on.Vilhena],cost:18},{nodes:[on.Portovelho,on.Vilhena],cost:12},{nodes:[on.Manaus,on.Vilhena],cost:21},{nodes:[on.Vilhena,on.Cuiaba],cost:10},{nodes:[on.Vilhena,on.Maraba],cost:31},{nodes:[on.Maraba,on.Imperatriz],cost:4},{nodes:[on.Sadluis,on.Teresina],cost:8},{nodes:[on.Teresina,on.Imperatriz],cost:11},{nodes:[on.Imperatriz,on.Palmas],cost:9},{nodes:[on.Palmas,on.Maraba],cost:10},{nodes:[on.Maraba,on.Porangatu],cost:17},{nodes:[on.Porangatu,on.Goiania],cost:8},{nodes:[on.Porangatu,on.Vilhena],cost:23},{nodes:[on.Cuiaba,on.Porangatu],cost:16},{nodes:[on.Porangatu,on.Palmas],cost:8},{nodes:[on.Palmas,on.Brasilia],cost:13},{nodes:[on.Brasilia,on.Porangatu],cost:6},{nodes:[on.Brasilia,on.Goiania],cost:4},{nodes:[on.Goiania,on.Cuiaba],cost:15},{nodes:[on.Sadluis,on.Parnaiba],cost:5},{nodes:[on.Parnaiba,on.Teresina],cost:5},{nodes:[on.Parnaiba,on.Fortaleza],cost:7},{nodes:[on.Fortaleza,on.Natal],cost:8},{nodes:[on.Natal,on.Joaopessoa],cost:3},{nodes:[on.Joaopessoa,on.Recife],cost:2},{nodes:[on.Recife,on.Maceio],cost:3},{nodes:[on.Maceio,on.Aracaju],cost:3},{nodes:[on.Aracaju,on.Salvadordabahia],cost:4},{nodes:[on.Natal,on.Campinagrande],cost:4},{nodes:[on.Fortaleza,on.Teresina],cost:10},{nodes:[on.Teresina,on.Petrolina],cost:12},{nodes:[on.Petrolina,on.Palmas],cost:19},{nodes:[on.Petrolina,on.Brasilia],cost:22},{nodes:[on.Petrolina,on.Montesclaros],cost:19},{nodes:[on.Montesclaros,on.Salvadordabahia],cost:16},{nodes:[on.Salvadordabahia,on.Petrolina],cost:10},{nodes:[on.Petrolina,on.Campinagrande],cost:12},{nodes:[on.Petrolina,on.Aracaju],cost:11},{nodes:[on.Vitoria,on.Salvadordabahia],cost:16},{nodes:[on.Montesclaros,on.Vitoria],cost:14},{nodes:[on.Vitoria,on.Saogoncalo],cost:6},{nodes:[on.Vitoria,on.Belohorizonte],cost:9},{nodes:[on.Belohorizonte,on.Montesclaros],cost:8},{nodes:[on.Montesclaros,on.Brasilia],cost:9},{nodes:[on.Brasilia,on.Uberlandia],cost:8},{nodes:[on.Uberlandia,on.Goiania],cost:7},{nodes:[on.Goiania,on.Campogrande],cost:16},{nodes:[on.Campogrande,on.Cuiaba],cost:13},{nodes:[on.Campogrande,on.Londrina],cost:10},{nodes:[on.Campogrande,on.Uberlandia],cost:13},{nodes:[on.Uberlandia,on.Londrina],cost:12},{nodes:[on.Londrina,on.Campinas],cost:9},{nodes:[on.Campinas,on.Uberlandia],cost:9},{nodes:[on.Uberlandia,on.Belohorizonte],cost:10},{nodes:[on.Uberlandia,on.Brasilia],cost:8},{nodes:[on.Brasilia,on.Belohorizonte],cost:14},{nodes:[on.Belohorizonte,on.Saogoncalo],cost:7},{nodes:[on.Saogoncalo,on.Riodejaneiro],cost:0},{nodes:[on.Riodejaneiro,on.Saopaulo],cost:7},{nodes:[on.Saopaulo,on.Guarulhos],cost:0},{nodes:[on.Guarulhos,on.Campinas],cost:0},{nodes:[on.Campinas,on.Curitiba],cost:6},{nodes:[on.Curitiba,on.Londrina],cost:7},{nodes:[on.Saopaulo,on.Florianopolis],cost:9},{nodes:[on.Florianopolis,on.Curitiba],cost:4},{nodes:[on.Londrina,on.Urucuaiana],cost:18},{nodes:[on.Urucuaiana,on.Pelotas],cost:9},{nodes:[on.Pelotas,on.Portoalecre],cost:4},{nodes:[on.Portoalecre,on.Urucuaiana],cost:10},{nodes:[on.Londrina,on.Portoalecre],cost:16},{nodes:[on.Portoalecre,on.Curitiba],cost:11},{nodes:[on.Portoalecre,on.Florianopolis],cost:7},{nodes:[on.Guarulhos,on.Belohorizonte],cost:10},{nodes:[on.Maceio,on.Campinagrande],cost:6},{nodes:[on.Petrolina,on.Fortaleza],cost:14},{nodes:[on.Recife,on.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"])($e),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=Ne(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=Ne(a,t()+""),a.unshift(c),a.unshift(s),a.push(u),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{var l=a.splice(3,1)[0],d=a.splice(10,1)[0],f=Ne(a.splice(0,11),t()+""),h=f.splice(0,6);h.push(l,d),h=h.sort((function(e,n){return e.number-n.number})),r=h.slice(0,4),o=h.slice(4);var p=f.shift(),g=a.pop();a=Ne(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e?(f=f.slice(1),a=Ne(a.slice(5).concat(f),t()+"")):3==e?(f=f.slice(2),a=Ne(a.slice(6).concat(f),t()+"")):4==e?(f=f.slice(1),a=Ne(a.slice(3).concat(f),t()+"")):a=Ne(a.concat(f),t()+""),a=a.concat(i),a=Ne(a,t()+""),a.unshift(p),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"})(sn||(sn={})),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"}(cn||(cn={}));var ln,dn,fn={name:"Bremen",cities:[{name:cn.Borgfeld,region:sn.Blue,connectionCost:15,slotCosts:[8,14],x:645,y:273},{name:cn.Oberneuland,region:sn.Blue,connectionCost:14,slotCosts:[8,14,20],x:652,y:342},{name:cn.Osterholz,region:sn.Blue,connectionCost:11,slotCosts:[8,14,20],x:660,y:434},{name:cn.HornLehe,region:sn.Blue,connectionCost:9,slotCosts:[8,14,20],x:572,y:322},{name:cn.Vahr,region:sn.Blue,connectionCost:6,slotCosts:[8,14,20],x:583,y:376},{name:cn.Schwachhausen,region:sn.Pink,connectionCost:5,slotCosts:[8,14,20],x:517,y:357},{name:cn.OstlicheVorstadt,region:sn.Pink,connectionCost:2,slotCosts:[8,14,20],x:536,y:409},{name:cn.Findorff,region:sn.Pink,connectionCost:3,slotCosts:[8,14],x:488,y:311},{name:cn.Walle,region:sn.Pink,connectionCost:6,slotCosts:[8,14,20],x:438,y:342},{name:cn.Mitte,region:sn.Pink,connectionCost:1,slotCosts:[8,14,20],x:472,y:388},{name:cn.Hemelingen,region:sn.Purple,connectionCost:8,slotCosts:[8,14,20],x:600,y:453},{name:cn.Mahndorf,region:sn.Purple,connectionCost:10,slotCosts:[8,14,20],x:666,y:499},{name:cn.Neustadt,region:sn.Purple,connectionCost:5,slotCosts:[8,14,20],x:464,y:452},{name:cn.Obervieland,region:sn.Purple,connectionCost:10,slotCosts:[8,14,20],x:529,y:479},{name:cn.Huchting,region:sn.Purple,connectionCost:12,slotCosts:[8,14],x:386,y:442},{name:cn.Hofen,region:sn.Red,connectionCost:9,slotCosts:[8,14,20],x:352,y:272},{name:cn.Pusdorf,region:sn.Red,connectionCost:7,slotCosts:[8,14,20],x:399,y:386},{name:cn.Neustadtshafen,region:sn.Red,connectionCost:8,slotCosts:[8,14,20],x:375,y:340},{name:cn.Strom,region:sn.Red,connectionCost:14,slotCosts:[8,14,20],x:328,y:393},{name:cn.Seehausen,region:sn.Red,connectionCost:14,slotCosts:[8,14],x:290,y:321},{name:cn.Blockland,region:sn.Orange,connectionCost:11,slotCosts:[8,14,20],x:476,y:251},{name:cn.Gropelingen,region:sn.Orange,connectionCost:8,slotCosts:[8,14,20],x:426,y:280},{name:cn.Burglesum,region:sn.Orange,connectionCost:13,slotCosts:[8,14,20],x:337,y:197},{name:cn.Vegesack,region:sn.Orange,connectionCost:10,slotCosts:[8,14,20],x:248,y:170},{name:cn.Blumenthal,region:sn.Orange,connectionCost:15,slotCosts:[8,14],x:154,y:135}],connections:[{nodes:[cn.Borgfeld,cn.Oberneuland],cost:0},{nodes:[cn.Oberneuland,cn.Osterholz],cost:0},{nodes:[cn.Borgfeld,cn.HornLehe],cost:0},{nodes:[cn.Oberneuland,cn.HornLehe],cost:0},{nodes:[cn.Oberneuland,cn.Vahr],cost:0},{nodes:[cn.Osterholz,cn.Vahr],cost:0},{nodes:[cn.HornLehe,cn.Vahr],cost:0},{nodes:[cn.HornLehe,cn.Schwachhausen],cost:0},{nodes:[cn.HornLehe,cn.Findorff],cost:0},{nodes:[cn.Vahr,cn.Hemelingen],cost:0},{nodes:[cn.Osterholz,cn.Mahndorf],cost:0},{nodes:[cn.Hofen,cn.Neustadtshafen],cost:0},{nodes:[cn.Hofen,cn.Seehausen],cost:0},{nodes:[cn.Pusdorf,cn.Neustadtshafen],cost:0},{nodes:[cn.Neustadtshafen,cn.Seehausen],cost:0},{nodes:[cn.Neustadtshafen,cn.Strom],cost:0},{nodes:[cn.Seehausen,cn.Strom],cost:0},{nodes:[cn.Blockland,cn.Gropelingen],cost:0},{nodes:[cn.Blockland,cn.Burglesum],cost:0},{nodes:[cn.Gropelingen,cn.Burglesum],cost:0},{nodes:[cn.Burglesum,cn.Vegesack],cost:0},{nodes:[cn.Vegesack,cn.Blumenthal],cost:0},{nodes:[cn.Mahndorf,cn.Hemelingen],cost:0},{nodes:[cn.Hemelingen,cn.Obervieland],cost:0},{nodes:[cn.Obervieland,cn.Neustadt],cost:0},{nodes:[cn.Neustadt,cn.Huchting],cost:0},{nodes:[cn.Hemelingen,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Obervieland,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Neustadt,cn.Mitte],cost:0},{nodes:[cn.Neustadt,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Huchting,cn.Strom],cost:0},{nodes:[cn.Huchting,cn.Pusdorf],cost:0},{nodes:[cn.Findorff,cn.Walle],cost:0},{nodes:[cn.Findorff,cn.Mitte],cost:0},{nodes:[cn.Findorff,cn.Schwachhausen],cost:0},{nodes:[cn.Schwachhausen,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Schwachhausen,cn.Mitte],cost:0},{nodes:[cn.Walle,cn.Mitte],cost:0},{nodes:[cn.Mitte,cn.OstlicheVorstadt],cost:0},{nodes:[cn.Strom,cn.Pusdorf],cost:0},{nodes:[cn.Vahr,cn.Schwachhausen],cost:0},{nodes:[cn.Blockland,cn.HornLehe],cost:0},{nodes:[cn.Hemelingen,cn.Osterholz],cost:0},{nodes:[cn.Hofen,cn.Gropelingen],cost:0},{nodes:[cn.Hofen,cn.Burglesum],cost:0},{nodes:[cn.Burglesum,cn.Seehausen],cost:0},{nodes:[cn.Walle,cn.Gropelingen],cost:0},{nodes:[cn.Walle,cn.Blockland],cost:0},{nodes:[cn.Findorff,cn.Blockland],cost:0},{nodes:[cn.Walle,cn.Hofen],cost:0},{nodes:[cn.Walle,cn.Neustadtshafen],cost:0},{nodes:[cn.Walle,cn.Pusdorf],cost:0},{nodes:[cn.Pusdorf,cn.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"])($e).filter((function(e){return!r.has(e.number)})),s=i.pop();if("original"==n){o=[sr(3),sr(4),sr(5),sr(6)],a=[sr(7),sr(8),sr(9),sr(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=Ne(l,t()+""),l.unshift(u),l.push(s),{actualMarket:o,futureMarket:a,powerPlantsDeck:l}}var d=Ne(i.filter((function(e){return e.number<=15})),t()+""),f=i.filter((function(e){return e.number>15})),h=d.splice(0,8).sort((function(e,n){return e.number-n.number}));o=h.slice(0,4),a=h.slice(4);var p=d.shift();return f=Ne(f.concat(d),t()+""),f.unshift(p),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"})(ln||(ln={})),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"}(dn||(dn={}));var hn,pn,gn={name:"Central Europe",cities:[{name:dn.Bialystok,region:ln.Blue,x:543,y:135},{name:dn.Lublin,region:ln.Blue,x:590,y:294},{name:dn.Warszawa,region:ln.Blue,x:482,y:253},{name:dn.Krakow,region:ln.Blue,x:533,y:443},{name:dn.Sosnowiec,region:ln.Blue,x:468,y:443},{name:dn.Katowice,region:ln.Blue,x:446,y:483},{name:dn.Czestochowa,region:ln.Blue,x:419,y:397},{name:dn.Presov,region:ln.Brown,x:619,y:487},{name:dn.Kosice,region:ln.Brown,x:646,y:538},{name:dn.Poprad,region:ln.Brown,x:565,y:529},{name:dn.Zilina,region:ln.Brown,x:476,y:551},{name:dn.Bratislava,region:ln.Brown,x:423,y:693},{name:dn.Trnava,region:ln.Brown,x:452,y:638},{name:dn.Nyiregyhaza,region:ln.Purple,x:698,y:582},{name:dn.Miskolc,region:ln.Purple,x:621,y:597},{name:dn.Szeged,region:ln.Purple,x:680,y:764},{name:dn.Kecskeme,region:ln.Purple,x:630,y:727},{name:dn.Budapest,region:ln.Purple,x:557,y:689},{name:dn.Pecs,region:ln.Purple,x:566,y:832},{name:dn.Gyor,region:ln.Purple,x:489,y:729},{name:dn.Banskabystrica,region:ln.Brown,x:525,y:601},{name:dn.Goansk,region:ln.Red,x:286,y:158},{name:dn.Goynia,region:ln.Red,x:249,y:131},{name:dn.Byogoszcz,region:ln.Red,x:297,y:257},{name:dn.Wroclaw,region:ln.Red,x:321,y:445},{name:dn.Poznan,region:ln.Red,x:261,y:342},{name:dn.Szczecin,region:ln.Red,x:110,y:316},{name:dn.Lodz,region:ln.Red,x:420,y:337},{name:dn.Graz,region:ln.Yellow,x:376,y:811},{name:dn.Klagenfurt,region:ln.Yellow,x:340,y:875},{name:dn.Villach,region:ln.Yellow,x:272,y:875},{name:dn.Innsbruck,region:ln.Yellow,x:140,y:879},{name:dn.Salzburg,region:ln.Yellow,x:209,y:805},{name:dn.Linz,region:ln.Yellow,x:265,y:744},{name:dn.Wien,region:ln.Yellow,x:366,y:701},{name:dn.Hradeckralove,region:ln.Green,x:291,y:546},{name:dn.Brno,region:ln.Green,x:354,y:597},{name:dn.Ceskebudejovice,region:ln.Green,x:248,y:670},{name:dn.Praha,region:ln.Green,x:220,y:593},{name:dn.Ostrava,region:ln.Green,x:413,y:535},{name:dn.Plzen,region:ln.Green,x:158,y:645},{name:dn.Ustinadlaben,region:ln.Green,x:165,y:537}],connections:[{nodes:[dn.Goynia,dn.Goansk],cost:0},{nodes:[dn.Goansk,dn.Byogoszcz],cost:8},{nodes:[dn.Goynia,dn.Szczecin],cost:17},{nodes:[dn.Szczecin,dn.Poznan],cost:14},{nodes:[dn.Szczecin,dn.Wroclaw],cost:22},{nodes:[dn.Wroclaw,dn.Poznan],cost:9},{nodes:[dn.Poznan,dn.Lodz],cost:13},{nodes:[dn.Lodz,dn.Byogoszcz],cost:12},{nodes:[dn.Byogoszcz,dn.Szczecin],cost:15},{nodes:[dn.Wroclaw,dn.Lodz],cost:12},{nodes:[dn.Lodz,dn.Czestochowa],cost:7},{nodes:[dn.Czestochowa,dn.Wroclaw],cost:9},{nodes:[dn.Wroclaw,dn.Ostrava],cost:11},{nodes:[dn.Ostrava,dn.Hradeckralove],cost:16},{nodes:[dn.Hradeckralove,dn.Wroclaw],cost:10},{nodes:[dn.Wroclaw,dn.Ustinadlaben],cost:17},{nodes:[dn.Ustinadlaben,dn.Hradeckralove],cost:10},{nodes:[dn.Hradeckralove,dn.Brno],cost:9},{nodes:[dn.Brno,dn.Ostrava],cost:12},{nodes:[dn.Ostrava,dn.Katowice],cost:4},{nodes:[dn.Czestochowa,dn.Lublin],cost:17},{nodes:[dn.Lublin,dn.Presov],cost:20},{nodes:[dn.Presov,dn.Krakow],cost:13},{nodes:[dn.Krakow,dn.Poprad],cost:11},{nodes:[dn.Poprad,dn.Zilina],cost:11},{nodes:[dn.Zilina,dn.Krakow],cost:12},{nodes:[dn.Krakow,dn.Sosnowiec],cost:4},{nodes:[dn.Warszawa,dn.Bialystok],cost:14},{nodes:[dn.Bialystok,dn.Goansk],cost:20},{nodes:[dn.Byogoszcz,dn.Warszawa],cost:15},{nodes:[dn.Warszawa,dn.Lublin],cost:10},{nodes:[dn.Lodz,dn.Warszawa],cost:7},{nodes:[dn.Bialystok,dn.Lublin],cost:15},{nodes:[dn.Lublin,dn.Krakow],cost:16},{nodes:[dn.Poprad,dn.Kosice],cost:6},{nodes:[dn.Kosice,dn.Nyiregyhaza],cost:8},{nodes:[dn.Kosice,dn.Miskolc],cost:4},{nodes:[dn.Miskolc,dn.Poprad],cost:9},{nodes:[dn.Poprad,dn.Banskabystrica],cost:11},{nodes:[dn.Banskabystrica,dn.Zilina],cost:6},{nodes:[dn.Zilina,dn.Trnava],cost:10},{nodes:[dn.Zilina,dn.Brno],cost:14},{nodes:[dn.Brno,dn.Wien],cost:8},{nodes:[dn.Bratislava,dn.Brno],cost:10},{nodes:[dn.Brno,dn.Trnava],cost:10},{nodes:[dn.Trnava,dn.Banskabystrica],cost:10},{nodes:[dn.Banskabystrica,dn.Miskolc],cost:11},{nodes:[dn.Miskolc,dn.Nyiregyhaza],cost:7},{nodes:[dn.Nyiregyhaza,dn.Szeged],cost:16},{nodes:[dn.Szeged,dn.Kecskeme],cost:5},{nodes:[dn.Budapest,dn.Trnava],cost:9},{nodes:[dn.Trnava,dn.Bratislava],cost:2},{nodes:[dn.Bratislava,dn.Wien],cost:3},{nodes:[dn.Wien,dn.Ceskebudejovice],cost:14},{nodes:[dn.Ceskebudejovice,dn.Praha],cost:10},{nodes:[dn.Praha,dn.Brno],cost:13},{nodes:[dn.Brno,dn.Ceskebudejovice],cost:15},{nodes:[dn.Ceskebudejovice,dn.Plzen],cost:11},{nodes:[dn.Plzen,dn.Praha],cost:7},{nodes:[dn.Praha,dn.Ustinadlaben],cost:6},{nodes:[dn.Ustinadlaben,dn.Plzen],cost:9},{nodes:[dn.Ceskebudejovice,dn.Linz],cost:8},{nodes:[dn.Linz,dn.Wien],cost:11},{nodes:[dn.Wien,dn.Graz],cost:12},{nodes:[dn.Graz,dn.Linz],cost:16},{nodes:[dn.Linz,dn.Salzburg],cost:9},{nodes:[dn.Salzburg,dn.Graz],cost:22},{nodes:[dn.Graz,dn.Gyor],cost:14},{nodes:[dn.Gyor,dn.Wien],cost:8},{nodes:[dn.Bratislava,dn.Gyor],cost:6},{nodes:[dn.Gyor,dn.Trnava],cost:5},{nodes:[dn.Banskabystrica,dn.Budapest],cost:12},{nodes:[dn.Budapest,dn.Gyor],cost:5},{nodes:[dn.Budapest,dn.Kecskeme],cost:6},{nodes:[dn.Kecskeme,dn.Miskolc],cost:10},{nodes:[dn.Miskolc,dn.Budapest],cost:9},{nodes:[dn.Szeged,dn.Pecs],cost:12},{nodes:[dn.Pecs,dn.Kecskeme],cost:11},{nodes:[dn.Budapest,dn.Pecs],cost:12},{nodes:[dn.Pecs,dn.Gyor],cost:15},{nodes:[dn.Graz,dn.Pecs],cost:19},{nodes:[dn.Graz,dn.Klagenfurt],cost:10},{nodes:[dn.Klagenfurt,dn.Villach],cost:4},{nodes:[dn.Klagenfurt,dn.Salzburg],cost:20},{nodes:[dn.Salzburg,dn.Innsbruck],cost:15},{nodes:[dn.Innsbruck,dn.Villach],cost:22},{nodes:[dn.Poznan,dn.Byogoszcz],cost:7},{nodes:[dn.Lublin,dn.Lodz],cost:16},{nodes:[dn.Czestochowa,dn.Sosnowiec],cost:4},{nodes:[dn.Sosnowiec,dn.Katowice],cost:0},{nodes:[dn.Czestochowa,dn.Krakow],cost:6},{nodes:[dn.Poprad,dn.Presov],cost:7},{nodes:[dn.Presov,dn.Kosice],cost:2},{nodes:[dn.Ostrava,dn.Zilina],cost:7},{nodes:[dn.Ostrava,dn.Krakow],cost:7},{nodes:[dn.Praha,dn.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"})(hn||(hn={})),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"}(pn||(pn={}));var yn,mn,vn={name:"China",cities:[{name:pn.Hegang,region:hn.Pink,x:3920,y:290},{name:pn.Qiqhaer,region:hn.Pink,x:3422,y:262},{name:pn.Haerbin,region:hn.Pink,x:3672,y:434},{name:pn.Jilin,region:hn.Pink,x:3744,y:614},{name:pn.Fushun,region:hn.Pink,x:3712,y:784},{name:pn.Anshan,region:hn.Pink,x:3510,y:902},{name:pn.Dalian,region:hn.Pink,x:3424,y:1052},{name:pn.Shanghai,region:hn.Green,x:3462,y:1672},{name:pn.Hangzhou,region:hn.Green,x:3280,y:1824},{name:pn.Nanjing,region:hn.Green,x:3130,y:1632},{name:pn.Qingoad,region:hn.Green,x:3322,y:1316},{name:pn.Jinan,region:hn.Green,x:3002,y:1292},{name:pn.Zhengzhou,region:hn.Green,x:2778,y:1438},{name:pn.Shijiazhuang,region:hn.Green,x:2866,y:1152},{name:pn.Changchun,region:hn.Red,x:3504,y:590},{name:pn.Shenyang,region:hn.Red,x:3458,y:778},{name:pn.Tangshan,region:hn.Red,x:3158,y:908},{name:pn.Tianjin,region:hn.Red,x:3134,y:1016},{name:pn.Beijing,region:hn.Red,x:2886,y:910},{name:pn.Taiyuan,region:hn.Red,x:2588,y:1130},{name:pn.Badtou,region:hn.Red,x:2500,y:862},{name:pn.Fuzhou,region:hn.Brown,x:3290,y:2132},{name:pn.Nanchang,region:hn.Brown,x:3004,y:1974},{name:pn.Chaozhou,region:hn.Brown,x:3096,y:2322},{name:pn.Hongkong,region:hn.Brown,x:2902,y:2552},{name:pn.Guangzhou,region:hn.Brown,x:2694,y:2352},{name:pn.Changsha,region:hn.Brown,x:2682,y:1988},{name:pn.Wuhan,region:hn.Brown,x:2810,y:1786},{name:pn.Hami,region:hn.Purple,x:1816,y:698},{name:pn.Karamay,region:hn.Purple,x:1304,y:372},{name:pn.Wulumuqi,region:hn.Purple,x:1520,y:558},{name:pn.Kuerle,region:hn.Purple,x:1326,y:756},{name:pn.Yinchjan,region:hn.Purple,x:2208,y:1058},{name:pn.Xining,region:hn.Purple,x:1868,y:1226},{name:pn.Lanzhou,region:hn.Purple,x:2142,y:1328},{name:pn.Kunming,region:hn.Yellow,x:1840,y:2248},{name:pn.Chengou,region:hn.Yellow,x:1988,y:1736},{name:pn.Xian,region:hn.Yellow,x:2440,y:1478},{name:pn.Chongqing,region:hn.Yellow,x:2300,y:1880},{name:pn.Nanning,region:hn.Yellow,x:2318,y:2452},{name:pn.Haikou,region:hn.Yellow,x:2524,y:2680},{name:pn.Chiyang,region:hn.Yellow,x:2212,y:2112}],connections:[{nodes:[pn.Kunming,pn.Chengou],cost:16},{nodes:[pn.Nanning,pn.Haikou],cost:10},{nodes:[pn.Guangzhou,pn.Hongkong],cost:4},{nodes:[pn.Guangzhou,pn.Chaozhou],cost:7},{nodes:[pn.Chaozhou,pn.Hongkong],cost:7},{nodes:[pn.Guangzhou,pn.Haikou],cost:13},{nodes:[pn.Nanning,pn.Guangzhou],cost:11},{nodes:[pn.Xining,pn.Chengou],cost:20},{nodes:[pn.Chengou,pn.Chongqing],cost:6},{nodes:[pn.Chongqing,pn.Chiyang],cost:9},{nodes:[pn.Chiyang,pn.Kunming],cost:12},{nodes:[pn.Chiyang,pn.Nanning],cost:12},{nodes:[pn.Chiyang,pn.Guangzhou],cost:18},{nodes:[pn.Guangzhou,pn.Changsha],cost:14},{nodes:[pn.Changsha,pn.Chongqing],cost:16},{nodes:[pn.Changsha,pn.Wuhan],cost:6},{nodes:[pn.Wuhan,pn.Nanchang],cost:6},{nodes:[pn.Nanchang,pn.Changsha],cost:7},{nodes:[pn.Changsha,pn.Chiyang],cost:15},{nodes:[pn.Chiyang,pn.Chengou],cost:13},{nodes:[pn.Guangzhou,pn.Nanchang],cost:16},{nodes:[pn.Nanchang,pn.Chaozhou],cost:14},{nodes:[pn.Chaozhou,pn.Fuzhou],cost:9},{nodes:[pn.Fuzhou,pn.Nanchang],cost:13},{nodes:[pn.Wuhan,pn.Hangzhou],cost:13},{nodes:[pn.Hangzhou,pn.Fuzhou],cost:13},{nodes:[pn.Hangzhou,pn.Shanghai],cost:4},{nodes:[pn.Shanghai,pn.Nanjing],cost:6},{nodes:[pn.Nanjing,pn.Hangzhou],cost:5},{nodes:[pn.Hangzhou,pn.Nanchang],cost:10},{nodes:[pn.Chongqing,pn.Wuhan],cost:18},{nodes:[pn.Lanzhou,pn.Chengou],cost:16},{nodes:[pn.Chengou,pn.Xian],cost:14},{nodes:[pn.Xian,pn.Chongqing],cost:14},{nodes:[pn.Xian,pn.Wuhan],cost:15},{nodes:[pn.Wuhan,pn.Zhengzhou],cost:10},{nodes:[pn.Zhengzhou,pn.Xian],cost:10},{nodes:[pn.Xian,pn.Lanzhou],cost:15},{nodes:[pn.Lanzhou,pn.Yinchjan],cost:9},{nodes:[pn.Yinchjan,pn.Xining],cost:11},{nodes:[pn.Lanzhou,pn.Taiyuan],cost:18},{nodes:[pn.Taiyuan,pn.Xian],cost:12},{nodes:[pn.Taiyuan,pn.Zhengzhou],cost:11},{nodes:[pn.Taiyuan,pn.Shijiazhuang],cost:5},{nodes:[pn.Shijiazhuang,pn.Tianjin],cost:5},{nodes:[pn.Shijiazhuang,pn.Jinan],cost:6},{nodes:[pn.Shijiazhuang,pn.Zhengzhou],cost:9},{nodes:[pn.Zhengzhou,pn.Jinan],cost:7},{nodes:[pn.Zhengzhou,pn.Nanjing],cost:12},{nodes:[pn.Nanjing,pn.Wuhan],cost:10},{nodes:[pn.Jinan,pn.Nanjing],cost:11},{nodes:[pn.Nanjing,pn.Qingoad],cost:12},{nodes:[pn.Qingoad,pn.Jinan],cost:6},{nodes:[pn.Jinan,pn.Tianjin],cost:6},{nodes:[pn.Xining,pn.Lanzhou],cost:6},{nodes:[pn.Yinchjan,pn.Badtou],cost:9},{nodes:[pn.Badtou,pn.Taiyuan],cost:9},{nodes:[pn.Taiyuan,pn.Yinchjan],cost:14},{nodes:[pn.Yinchjan,pn.Hami],cost:25},{nodes:[pn.Hami,pn.Xining],cost:25},{nodes:[pn.Wulumuqi,pn.Kuerle],cost:9},{nodes:[pn.Kuerle,pn.Karamay],cost:12},{nodes:[pn.Karamay,pn.Wulumuqi],cost:7},{nodes:[pn.Wulumuqi,pn.Hami],cost:12},{nodes:[pn.Hami,pn.Kuerle],cost:15},{nodes:[pn.Taiyuan,pn.Beijing],cost:10},{nodes:[pn.Beijing,pn.Shijiazhuang],cost:6},{nodes:[pn.Beijing,pn.Tangshan],cost:3},{nodes:[pn.Tangshan,pn.Tianjin],cost:0},{nodes:[pn.Beijing,pn.Badtou],cost:14},{nodes:[pn.Tangshan,pn.Shenyang],cost:11},{nodes:[pn.Dalian,pn.Anshan],cost:6},{nodes:[pn.Qiqhaer,pn.Hegang],cost:11},{nodes:[pn.Hegang,pn.Haerbin],cost:7},{nodes:[pn.Haerbin,pn.Qiqhaer],cost:6},{nodes:[pn.Changchun,pn.Jilin],cost:5},{nodes:[pn.Jilin,pn.Haerbin],cost:5},{nodes:[pn.Haerbin,pn.Changchun],cost:5},{nodes:[pn.Changchun,pn.Shenyang],cost:5},{nodes:[pn.Shenyang,pn.Anshan],cost:2},{nodes:[pn.Jilin,pn.Fushun],cost:6},{nodes:[pn.Fushun,pn.Shenyang],cost:0},{nodes:[pn.Changchun,pn.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"])($e),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=Ne(a.filter((function(e){return e.number>=31&&e.number<=35})).concat(s),t()+""),u=Ne(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"})(yn||(yn={})),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"}(mn||(mn={}));var bn,wn,xn={name:"Europe",cities:[{name:mn.Glasgow,region:yn.Pink,x:490,y:510},{name:mn.Dublin,region:yn.Pink,x:390,y:660},{name:mn.Birmingham,region:yn.Pink,x:485,y:695},{name:mn.London,region:yn.Pink,x:545,y:800},{name:mn.Randstad,region:yn.Pink,x:786,y:594},{name:mn.Vlaanderen,region:yn.Pink,x:794,y:756},{name:mn.RheinRuhr,region:yn.Pink,x:820,y:884},{name:mn.Paris,region:yn.Red,x:632,y:926},{name:mn.Bordeaux,region:yn.Red,x:655,y:1095},{name:mn.Lyon,region:yn.Red,x:785,y:1100},{name:mn.Marseille,region:yn.Red,x:815,y:1240},{name:mn.Barcelona,region:yn.Red,x:650,y:1280},{name:mn.Madrid,region:yn.Red,x:435,y:1335},{name:mn.Lisboa,region:yn.Red,x:255,y:1335},{name:mn.Bremen,region:yn.Brown,x:1010,y:770},{name:mn.Berlin,region:yn.Brown,x:1180,y:800},{name:mn.RheinMain,region:yn.Brown,x:982,y:898},{name:mn.Stuttgart,region:yn.Brown,x:995,y:1e3},{name:mn.München,region:yn.Brown,x:1114,y:1020},{name:mn.Praha,region:yn.Brown,x:1235,y:940},{name:mn.Katowice,region:yn.Brown,x:1380,y:940},{name:mn.Zürich,region:yn.Yellow,x:1010,y:1100},{name:mn.Milano,region:yn.Yellow,x:1075,y:1180},{name:mn.Roma,region:yn.Yellow,x:1180,y:1310},{name:mn.Napoli,region:yn.Yellow,x:1235,y:1430},{name:mn.Wien,region:yn.Yellow,x:1265,y:1080},{name:mn.Budapest,region:yn.Yellow,x:1390,y:1080},{name:mn.Zagreb,region:yn.Yellow,x:1300,y:1180},{name:mn.Oslo,region:yn.Orange,x:1015,y:365},{name:mn.Stockholm,region:yn.Orange,x:1170,y:415},{name:mn.Helsinki,region:yn.Orange,x:1395,y:360},{name:mn.Tallinn,region:yn.Orange,x:1410,y:470},{name:mn.Riga,region:yn.Orange,x:1395,y:575},{name:mn.Kobenhavn,region:yn.Orange,x:1180,y:660},{name:mn.StPetersburg,region:yn.Orange,x:1620,y:460},{name:mn.Warszawa,region:yn.Blue,x:1500,y:815},{name:mn.Minsk,region:yn.Blue,x:1610,y:815},{name:mn.Moskwa,region:yn.Blue,x:1830,y:600},{name:mn.Kyjiv,region:yn.Blue,x:1690,y:980},{name:mn.Kharkiv,region:yn.Blue,x:1860,y:980},{name:mn.Odessa,region:yn.Blue,x:1720,y:1100},{name:mn.Bucuresti,region:yn.Blue,x:1610,y:1175},{name:mn.Beograd,region:yn.Green,x:1390,y:1175},{name:mn.Sofia,region:yn.Green,x:1505,y:1240},{name:mn.Tirana,region:yn.Green,x:1370,y:1330},{name:mn.Athina,region:yn.Green,x:1480,y:1450},{name:mn.Istanbul,region:yn.Green,x:1665,y:1335},{name:mn.Izmir,region:yn.Green,x:1730,y:1430},{name:mn.Ankara,region:yn.Green,x:1850,y:1380}],connections:[{nodes:[mn.Dublin,mn.Glasgow],cost:17},{nodes:[mn.Glasgow,mn.Birmingham],cost:13},{nodes:[mn.Dublin,mn.Birmingham],cost:15},{nodes:[mn.Birmingham,mn.London],cost:4},{nodes:[mn.London,mn.Vlaanderen],cost:15},{nodes:[mn.London,mn.Randstad],cost:18},{nodes:[mn.Randstad,mn.Vlaanderen],cost:4},{nodes:[mn.Vlaanderen,mn.RheinRuhr],cost:4},{nodes:[mn.Paris,mn.Bordeaux],cost:12},{nodes:[mn.Paris,mn.Lyon],cost:11},{nodes:[mn.Bordeaux,mn.Lyon],cost:12},{nodes:[mn.Lyon,mn.Marseille],cost:8},{nodes:[mn.Bordeaux,mn.Marseille],cost:12},{nodes:[mn.Marseille,mn.Barcelona],cost:11},{nodes:[mn.Bordeaux,mn.Barcelona],cost:15},{nodes:[mn.Bordeaux,mn.Madrid],cost:15},{nodes:[mn.Madrid,mn.Barcelona],cost:14},{nodes:[mn.Madrid,mn.Lisboa],cost:13},{nodes:[mn.Paris,mn.London],cost:16},{nodes:[mn.Paris,mn.Vlaanderen],cost:7},{nodes:[mn.Paris,mn.RheinRuhr],cost:10},{nodes:[mn.Bremen,mn.Berlin],cost:6},{nodes:[mn.Bremen,mn.RheinMain],cost:9},{nodes:[mn.Berlin,mn.RheinMain],cost:10},{nodes:[mn.Berlin,mn.Praha],cost:7},{nodes:[mn.RheinMain,mn.Praha],cost:10},{nodes:[mn.RheinMain,mn.München],cost:6},{nodes:[mn.RheinMain,mn.Stuttgart],cost:3},{nodes:[mn.Stuttgart,mn.München],cost:5},{nodes:[mn.München,mn.Praha],cost:6},{nodes:[mn.Praha,mn.Katowice],cost:8},{nodes:[mn.Bremen,mn.Randstad],cost:8},{nodes:[mn.Bremen,mn.Vlaanderen],cost:10},{nodes:[mn.RheinMain,mn.Vlaanderen],cost:6},{nodes:[mn.RheinMain,mn.RheinRuhr],cost:3},{nodes:[mn.Stuttgart,mn.Paris],cost:14},{nodes:[mn.Zürich,mn.Milano],cost:11},{nodes:[mn.Milano,mn.Zagreb],cost:17},{nodes:[mn.Milano,mn.Roma],cost:19},{nodes:[mn.Roma,mn.Napoli],cost:7},{nodes:[mn.Wien,mn.Budapest],cost:5},{nodes:[mn.Wien,mn.Zagreb],cost:8},{nodes:[mn.Budapest,mn.Zagreb],cost:7},{nodes:[mn.Paris,mn.Zürich],cost:14},{nodes:[mn.Lyon,mn.Zürich],cost:14},{nodes:[mn.Lyon,mn.Milano],cost:11},{nodes:[mn.Marseille,mn.Milano],cost:13},{nodes:[mn.Zürich,mn.München],cost:8},{nodes:[mn.Zürich,mn.Stuttgart],cost:5},{nodes:[mn.München,mn.Wien],cost:9},{nodes:[mn.Praha,mn.Wien],cost:7},{nodes:[mn.Wien,mn.Katowice],cost:8},{nodes:[mn.Budapest,mn.Katowice],cost:11},{nodes:[mn.Oslo,mn.Kobenhavn],cost:17},{nodes:[mn.Oslo,mn.Stockholm],cost:13},{nodes:[mn.Stockholm,mn.Kobenhavn],cost:18},{nodes:[mn.Stockholm,mn.Helsinki],cost:21},{nodes:[mn.Helsinki,mn.StPetersburg],cost:11},{nodes:[mn.Tallinn,mn.StPetersburg],cost:9},{nodes:[mn.Tallinn,mn.Riga],cost:7},{nodes:[mn.Riga,mn.StPetersburg],cost:13},{nodes:[mn.Kobenhavn,mn.Bremen],cost:12},{nodes:[mn.Kobenhavn,mn.Berlin],cost:15},{nodes:[mn.Warszawa,mn.Minsk],cost:10},{nodes:[mn.Warszawa,mn.Kyjiv],cost:14},{nodes:[mn.Minsk,mn.Moskwa],cost:14},{nodes:[mn.Minsk,mn.Kyjiv],cost:10},{nodes:[mn.Moskwa,mn.Kharkiv],cost:16},{nodes:[mn.Kyjiv,mn.Kharkiv],cost:9},{nodes:[mn.Kyjiv,mn.Odessa],cost:9},{nodes:[mn.Kharkiv,mn.Odessa],cost:13},{nodes:[mn.Odessa,mn.Bucuresti],cost:10},{nodes:[mn.Berlin,mn.Warszawa],cost:11},{nodes:[mn.Praha,mn.Warszawa],cost:11},{nodes:[mn.Katowice,mn.Warszawa],cost:5},{nodes:[mn.Kobenhavn,mn.Warszawa],cost:25},{nodes:[mn.Riga,mn.Warszawa],cost:12},{nodes:[mn.Riga,mn.Minsk],cost:8},{nodes:[mn.Riga,mn.Moskwa],cost:18},{nodes:[mn.StPetersburg,mn.Moskwa],cost:14},{nodes:[mn.Kyjiv,mn.Budapest],cost:21},{nodes:[mn.Odessa,mn.Budapest],cost:25},{nodes:[mn.Bucuresti,mn.Budapest],cost:16},{nodes:[mn.Beograd,mn.Sofia],cost:11},{nodes:[mn.Beograd,mn.Tirana],cost:15},{nodes:[mn.Sofia,mn.Tirana],cost:13},{nodes:[mn.Sofia,mn.Athina],cost:17},{nodes:[mn.Sofia,mn.Istanbul],cost:13},{nodes:[mn.Tirana,mn.Athina],cost:16},{nodes:[mn.Istanbul,mn.Izmir],cost:8},{nodes:[mn.Istanbul,mn.Ankara],cost:9},{nodes:[mn.Izmir,mn.Ankara],cost:10},{nodes:[mn.Bucuresti,mn.Beograd],cost:12},{nodes:[mn.Bucuresti,mn.Sofia],cost:9},{nodes:[mn.Bucuresti,mn.Istanbul],cost:13},{nodes:[mn.Beograd,mn.Zagreb],cost:9},{nodes:[mn.Beograd,mn.Napoli],cost:18},{nodes:[mn.Beograd,mn.Budapest],cost:10},{nodes:[mn.Tirana,mn.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"])($e),o=r.findIndex((function(e){return e.type===ve.Step3})),a=r.splice(o,1)[0],i=Ne(r.splice(0,13),t()+""),s=Ne(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 h=Math.max(0,d-i.length),p=i.slice(d),g=s.slice(f+h),y=Ne(p.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"})(bn||(bn={})),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"}(wn||(wn={}));var kn,Pn,Mn={name:"France",cities:[{name:wn.Calais,region:bn.Brown,x:661,y:294},{name:wn.Lile,region:bn.Brown,x:791,y:328},{name:wn.Amiens,region:bn.Brown,x:700,y:433},{name:wn.Reims,region:bn.Brown,x:888,y:531},{name:wn.Metz,region:bn.Brown,x:1076,y:528},{name:wn.Nancy,region:bn.Brown,x:1078,y:643},{name:wn.Strasbourg,region:bn.Brown,x:1208,y:615},{name:wn.Havre,region:bn.Purple,x:487,y:471},{name:wn.Caen,region:bn.Purple,x:423,y:567},{name:wn.Brest,region:bn.Purple,x:79,y:654},{name:wn.Rennes,region:bn.Purple,x:326,y:695},{name:wn.Lemans,region:bn.Purple,x:516,y:699},{name:wn.Angers,region:bn.Purple,x:446,y:798},{name:wn.Rouen,region:bn.Purple,x:598,y:506},{name:wn.Paris1,region:bn.Blue,x:693,y:553},{name:wn.Paris2,region:bn.Blue,x:779,y:566},{name:wn.Paris3,region:bn.Blue,x:722,y:633},{name:wn.Orleans,region:bn.Blue,x:684,y:736},{name:wn.Tours,region:bn.Blue,x:564,y:813},{name:wn.Limoges,region:bn.Blue,x:605,y:1009},{name:wn.Clermontferrand,region:bn.Blue,x:777,y:1017},{name:wn.Besancon,region:bn.Yellow,x:1084,y:828},{name:wn.Dijon,region:bn.Yellow,x:964,y:801},{name:wn.Lyon,region:bn.Yellow,x:964,y:973},{name:wn.Chamonix,region:bn.Yellow,x:1153,y:987},{name:wn.Mulhouse,region:bn.Yellow,x:1180,y:742},{name:wn.Grenoble,region:bn.Yellow,x:1048,y:1116},{name:wn.Saintetienne,region:bn.Yellow,x:892,y:1088},{name:wn.Nice,region:bn.Green,x:1178,y:1302},{name:wn.Toulon,region:bn.Green,x:1070,y:1397},{name:wn.Aimenprovence,region:bn.Green,x:1016,y:1304},{name:wn.Marseille,region:bn.Green,x:954,y:1369},{name:wn.Nimes,region:bn.Green,x:889,y:1256},{name:wn.Montpellier,region:bn.Green,x:816,y:1330},{name:wn.Perpignan,region:bn.Green,x:767,y:1460},{name:wn.Nantes,region:bn.Red,x:330,y:833},{name:wn.Larochelle,region:bn.Red,x:379,y:959},{name:wn.Bordeaux,region:bn.Red,x:435,y:1148},{name:wn.Biarritz,region:bn.Red,x:345,y:1328},{name:wn.Toulous,region:bn.Red,x:621,y:1309},{name:wn.Carcassone,region:bn.Red,x:700,y:1382},{name:wn.Lourdes,region:bn.Red,x:479,y:1393}],connections:[{nodes:[wn.Calais,wn.Havre],cost:13},{nodes:[wn.Calais,wn.Lile],cost:7},{nodes:[wn.Calais,wn.Amiens],cost:8},{nodes:[wn.Lile,wn.Reims],cost:9},{nodes:[wn.Havre,wn.Rouen],cost:5},{nodes:[wn.Havre,wn.Caen],cost:5},{nodes:[wn.Caen,wn.Rennes],cost:12},{nodes:[wn.Rennes,wn.Brest],cost:16},{nodes:[wn.Brest,wn.Nantes],cost:19},{nodes:[wn.Rennes,wn.Nantes],cost:7},{nodes:[wn.Rennes,wn.Angers],cost:7},{nodes:[wn.Rennes,wn.Lemans],cost:9},{nodes:[wn.Caen,wn.Lemans],cost:10},{nodes:[wn.Lemans,wn.Paris3],cost:10},{nodes:[wn.Paris3,wn.Caen],cost:12},{nodes:[wn.Caen,wn.Rouen],cost:9},{nodes:[wn.Rouen,wn.Paris1],cost:9},{nodes:[wn.Rouen,wn.Amiens],cost:6},{nodes:[wn.Lile,wn.Amiens],cost:7},{nodes:[wn.Amiens,wn.Reims],cost:11},{nodes:[wn.Reims,wn.Metz],cost:12},{nodes:[wn.Metz,wn.Strasbourg],cost:11},{nodes:[wn.Strasbourg,wn.Nancy],cost:10},{nodes:[wn.Strasbourg,wn.Mulhouse],cost:6},{nodes:[wn.Mulhouse,wn.Besancon],cost:8},{nodes:[wn.Besancon,wn.Nancy],cost:14},{nodes:[wn.Nancy,wn.Dijon],cost:15},{nodes:[wn.Reims,wn.Nancy],cost:13},{nodes:[wn.Nancy,wn.Paris2],cost:21},{nodes:[wn.Paris1,wn.Paris2],cost:0},{nodes:[wn.Paris1,wn.Paris3],cost:0},{nodes:[wn.Paris2,wn.Dijon],cost:20},{nodes:[wn.Dijon,wn.Orleans],cost:18},{nodes:[wn.Orleans,wn.Lemans],cost:8},{nodes:[wn.Lemans,wn.Tours],cost:5},{nodes:[wn.Tours,wn.Orleans],cost:7},{nodes:[wn.Paris1,wn.Amiens],cost:9},{nodes:[wn.Dijon,wn.Clermontferrand],cost:19},{nodes:[wn.Clermontferrand,wn.Limoges],cost:12},{nodes:[wn.Limoges,wn.Toulous],cost:19},{nodes:[wn.Toulous,wn.Clermontferrand],cost:24},{nodes:[wn.Clermontferrand,wn.Montpellier],cost:22},{nodes:[wn.Montpellier,wn.Nimes],cost:3},{nodes:[wn.Saintetienne,wn.Grenoble],cost:10},{nodes:[wn.Grenoble,wn.Chamonix],cost:12},{nodes:[wn.Chamonix,wn.Besancon],cost:19},{nodes:[wn.Besancon,wn.Dijon],cost:6},{nodes:[wn.Dijon,wn.Lyon],cost:13},{nodes:[wn.Lyon,wn.Clermontferrand],cost:11},{nodes:[wn.Saintetienne,wn.Montpellier],cost:18},{nodes:[wn.Saintetienne,wn.Nimes],cost:16},{nodes:[wn.Nimes,wn.Aimenprovence],cost:8},{nodes:[wn.Aimenprovence,wn.Nice],cost:8},{nodes:[wn.Nice,wn.Toulon],cost:7},{nodes:[wn.Toulon,wn.Marseille],cost:3},{nodes:[wn.Marseille,wn.Aimenprovence],cost:0},{nodes:[wn.Nice,wn.Grenoble],cost:19},{nodes:[wn.Grenoble,wn.Aimenprovence],cost:17},{nodes:[wn.Grenoble,wn.Nimes],cost:18},{nodes:[wn.Montpellier,wn.Toulous],cost:14},{nodes:[wn.Toulous,wn.Bordeaux],cost:14},{nodes:[wn.Bordeaux,wn.Limoges],cost:13},{nodes:[wn.Limoges,wn.Tours],cost:13},{nodes:[wn.Tours,wn.Larochelle],cost:13},{nodes:[wn.Larochelle,wn.Angers],cost:12},{nodes:[wn.Angers,wn.Lemans],cost:5},{nodes:[wn.Angers,wn.Nantes],cost:5},{nodes:[wn.Nantes,wn.Larochelle],cost:9},{nodes:[wn.Larochelle,wn.Bordeaux],cost:13},{nodes:[wn.Bordeaux,wn.Biarritz],cost:12},{nodes:[wn.Bordeaux,wn.Lourdes],cost:14},{nodes:[wn.Lourdes,wn.Biarritz],cost:9},{nodes:[wn.Lourdes,wn.Toulous],cost:10},{nodes:[wn.Lourdes,wn.Carcassone],cost:15},{nodes:[wn.Lourdes,wn.Perpignan],cost:20},{nodes:[wn.Perpignan,wn.Carcassone],cost:6},{nodes:[wn.Carcassone,wn.Toulous],cost:6},{nodes:[wn.Carcassone,wn.Montpellier],cost:9},{nodes:[wn.Montpellier,wn.Perpignan],cost:11},{nodes:[wn.Orleans,wn.Limoges],cost:19},{nodes:[wn.Orleans,wn.Clermontferrand],cost:18},{nodes:[wn.Paris3,wn.Orleans],cost:7},{nodes:[wn.Angers,wn.Tours],cost:6},{nodes:[wn.Larochelle,wn.Limoges],cost:13},{nodes:[wn.Nancy,wn.Metz],cost:3},{nodes:[wn.Nancy,wn.Mulhouse],cost:12},{nodes:[wn.Besancon,wn.Lyon],cost:16},{nodes:[wn.Lyon,wn.Grenoble],cost:7},{nodes:[wn.Lyon,wn.Chamonix],cost:13},{nodes:[wn.Lyon,wn.Saintetienne],cost:6},{nodes:[wn.Saintetienne,wn.Clermontferrand],cost:10},{nodes:[wn.Paris2,wn.Reims],cost:9},{nodes:[wn.Paris3,wn.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"])($e);if("original"==n){a=a.slice(8);var i=a.splice(0,1)[0];a.splice(1,1)[0];var s=a.pop();a=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{a.splice(10,1)[0];var c=a.splice(8,1)[0],u=Ne(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=Ne(a,t()+""),2==e?a=Ne(a.slice(6).concat(u),t()+""):3==e?(u=u.slice(1),a=Ne(a.slice(6).concat(u),t()+"")):a=Ne(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"})(kn||(kn={})),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"}(Pn||(Pn={}));var _n,Sn,Cn={name:"Germany",cities:[{name:Pn.Flensburg,region:kn.Green,x:37,y:427},{name:Pn.Kiel,region:kn.Green,x:106,y:392},{name:Pn.Hamburg,region:kn.Green,x:212,y:396},{name:Pn.Hannover,region:kn.Green,x:378,y:395},{name:Pn.Bremen,region:kn.Green,x:276,y:463},{name:Pn.Wilhelmshaven,region:kn.Green,x:211,y:521},{name:Pn.Cuxhaven,region:kn.Green,x:168,y:474},{name:Pn.Lubeck,region:kn.Brown,x:153,y:341},{name:Pn.Rostock,region:kn.Brown,x:128,y:256},{name:Pn.Schwerin,region:kn.Brown,x:217,y:297},{name:Pn.Torgelow,region:kn.Brown,x:210,y:126},{name:Pn.Magdeburg,region:kn.Brown,x:389,y:271},{name:Pn.Berlin,region:kn.Brown,x:355,y:170},{name:Pn.FrankfurtO,region:kn.Brown,x:381,y:99},{name:Pn.Halle,region:kn.Yellow,x:493,y:259},{name:Pn.Leipzig,region:kn.Yellow,x:526,y:222},{name:Pn.Dresden,region:kn.Yellow,x:572,y:126},{name:Pn.Erfurt,region:kn.Yellow,x:567,y:309},{name:Pn.Fulda,region:kn.Yellow,x:628,y:398},{name:Pn.Würzburg,region:kn.Yellow,x:735,y:386},{name:Pn.Nurnberg,region:kn.Yellow,x:780,y:309},{name:Pn.Osnabrück,region:kn.Red,x:359,y:516},{name:Pn.Münster,region:kn.Red,x:427,y:554},{name:Pn.Essen,region:kn.Red,x:475,y:603},{name:Pn.Duisburg,region:kn.Red,x:456,y:645},{name:Pn.Dortmund,region:kn.Red,x:505,y:543},{name:Pn.Dusseldorf,region:kn.Red,x:537,y:635},{name:Pn.Kassel,region:kn.Red,x:524,y:430},{name:Pn.Aachen,region:kn.Cyan,x:614,y:654},{name:Pn.Köln,region:kn.Cyan,x:590,y:589},{name:Pn.Trier,region:kn.Cyan,x:739,y:628},{name:Pn.Wiesbaden,region:kn.Cyan,x:697,y:514},{name:Pn.FrankfurtM,region:kn.Cyan,x:672,y:473},{name:Pn.Saarbrücken,region:kn.Cyan,x:818,y:568},{name:Pn.Mannheim,region:kn.Cyan,x:796,y:479},{name:Pn.Freiburg,region:kn.Purple,x:966,y:537},{name:Pn.Stuttgart,region:kn.Purple,x:884,y:458},{name:Pn.Konstanz,region:kn.Purple,x:1011,y:459},{name:Pn.Augsburg,region:kn.Purple,x:911,y:346},{name:Pn.Regensburg,region:kn.Purple,x:846,y:256},{name:Pn.München,region:kn.Purple,x:967,y:278},{name:Pn.Passau,region:kn.Purple,x:904,y:153}],connections:[{nodes:[Pn.Flensburg,Pn.Kiel],cost:4},{nodes:[Pn.Kiel,Pn.Hamburg],cost:8},{nodes:[Pn.Kiel,Pn.Lubeck],cost:4},{nodes:[Pn.Hamburg,Pn.Hannover],cost:17},{nodes:[Pn.Hamburg,Pn.Bremen],cost:11},{nodes:[Pn.Hamburg,Pn.Cuxhaven],cost:11},{nodes:[Pn.Hamburg,Pn.Lubeck],cost:6},{nodes:[Pn.Hamburg,Pn.Schwerin],cost:8},{nodes:[Pn.Bremen,Pn.Wilhelmshaven],cost:11},{nodes:[Pn.Bremen,Pn.Hannover],cost:10},{nodes:[Pn.Bremen,Pn.Cuxhaven],cost:8},{nodes:[Pn.Bremen,Pn.Osnabrück],cost:11},{nodes:[Pn.Hannover,Pn.Schwerin],cost:19},{nodes:[Pn.Hannover,Pn.Magdeburg],cost:15},{nodes:[Pn.Hannover,Pn.Erfurt],cost:19},{nodes:[Pn.Hannover,Pn.Osnabrück],cost:16},{nodes:[Pn.Hannover,Pn.Kassel],cost:15},{nodes:[Pn.Wilhelmshaven,Pn.Osnabrück],cost:14},{nodes:[Pn.Lubeck,Pn.Schwerin],cost:6},{nodes:[Pn.Schwerin,Pn.Rostock],cost:6},{nodes:[Pn.Schwerin,Pn.Torgelow],cost:19},{nodes:[Pn.Schwerin,Pn.Berlin],cost:18},{nodes:[Pn.Schwerin,Pn.Magdeburg],cost:16},{nodes:[Pn.Torgelow,Pn.Rostock],cost:19},{nodes:[Pn.Torgelow,Pn.Berlin],cost:15},{nodes:[Pn.Berlin,Pn.Magdeburg],cost:10},{nodes:[Pn.Berlin,Pn.FrankfurtO],cost:6},{nodes:[Pn.Berlin,Pn.Halle],cost:17},{nodes:[Pn.Magdeburg,Pn.Halle],cost:11},{nodes:[Pn.FrankfurtO,Pn.Leipzig],cost:21},{nodes:[Pn.FrankfurtO,Pn.Dresden],cost:16},{nodes:[Pn.Halle,Pn.Leipzig],cost:0},{nodes:[Pn.Leipzig,Pn.Dresden],cost:13},{nodes:[Pn.Erfurt,Pn.Halle],cost:6},{nodes:[Pn.Erfurt,Pn.Dresden],cost:19},{nodes:[Pn.Erfurt,Pn.Nurnberg],cost:21},{nodes:[Pn.Erfurt,Pn.Fulda],cost:13},{nodes:[Pn.Erfurt,Pn.Kassel],cost:15},{nodes:[Pn.Fulda,Pn.Würzburg],cost:11},{nodes:[Pn.Fulda,Pn.Kassel],cost:8},{nodes:[Pn.Fulda,Pn.FrankfurtM],cost:8},{nodes:[Pn.Würzburg,Pn.Nurnberg],cost:8},{nodes:[Pn.Würzburg,Pn.FrankfurtM],cost:13},{nodes:[Pn.Würzburg,Pn.Mannheim],cost:10},{nodes:[Pn.Würzburg,Pn.Stuttgart],cost:12},{nodes:[Pn.Würzburg,Pn.Augsburg],cost:19},{nodes:[Pn.Nurnberg,Pn.Augsburg],cost:18},{nodes:[Pn.Nurnberg,Pn.Regensburg],cost:12},{nodes:[Pn.Osnabrück,Pn.Münster],cost:7},{nodes:[Pn.Osnabrück,Pn.Kassel],cost:20},{nodes:[Pn.Münster,Pn.Essen],cost:6},{nodes:[Pn.Münster,Pn.Dortmund],cost:2},{nodes:[Pn.Essen,Pn.Duisburg],cost:0},{nodes:[Pn.Essen,Pn.Dusseldorf],cost:2},{nodes:[Pn.Essen,Pn.Dortmund],cost:4},{nodes:[Pn.Dortmund,Pn.Kassel],cost:18},{nodes:[Pn.Dortmund,Pn.Köln],cost:10},{nodes:[Pn.Dortmund,Pn.FrankfurtM],cost:20},{nodes:[Pn.Kassel,Pn.FrankfurtM],cost:13},{nodes:[Pn.Dusseldorf,Pn.Aachen],cost:9},{nodes:[Pn.Dusseldorf,Pn.Köln],cost:4},{nodes:[Pn.Aachen,Pn.Köln],cost:7},{nodes:[Pn.Aachen,Pn.Trier],cost:19},{nodes:[Pn.Trier,Pn.Köln],cost:20},{nodes:[Pn.Trier,Pn.Wiesbaden],cost:18},{nodes:[Pn.Trier,Pn.Saarbrücken],cost:11},{nodes:[Pn.Wiesbaden,Pn.FrankfurtM],cost:0},{nodes:[Pn.Wiesbaden,Pn.Köln],cost:21},{nodes:[Pn.Wiesbaden,Pn.Saarbrücken],cost:10},{nodes:[Pn.Wiesbaden,Pn.Mannheim],cost:11},{nodes:[Pn.Mannheim,Pn.Saarbrücken],cost:11},{nodes:[Pn.Mannheim,Pn.Stuttgart],cost:6},{nodes:[Pn.Stuttgart,Pn.Saarbrücken],cost:17},{nodes:[Pn.Stuttgart,Pn.Freiburg],cost:16},{nodes:[Pn.Stuttgart,Pn.Konstanz],cost:16},{nodes:[Pn.Stuttgart,Pn.Augsburg],cost:15},{nodes:[Pn.Konstanz,Pn.Freiburg],cost:14},{nodes:[Pn.Konstanz,Pn.Augsburg],cost:17},{nodes:[Pn.Regensburg,Pn.Augsburg],cost:13},{nodes:[Pn.Regensburg,Pn.München],cost:10},{nodes:[Pn.Regensburg,Pn.Passau],cost:12},{nodes:[Pn.Augsburg,Pn.München],cost:6},{nodes:[Pn.Passau,Pn.München],cost:14}],layout:"Landscape",mapPosition:[20,20]},Bn={name:"Germany",cities:[{name:Pn.Flensburg,region:kn.Green,x:37,y:427},{name:Pn.Kiel,region:kn.Green,x:106,y:392},{name:Pn.Hamburg,region:kn.Green,x:212,y:396},{name:Pn.Hannover,region:kn.Green,x:378,y:395},{name:Pn.Bremen,region:kn.Green,x:276,y:463},{name:Pn.Wilhelmshaven,region:kn.Green,x:211,y:521},{name:Pn.Cuxhaven,region:kn.Green,x:168,y:474},{name:Pn.Lubeck,region:kn.Brown,x:153,y:341},{name:Pn.Rostock,region:kn.Brown,x:128,y:256},{name:Pn.Schwerin,region:kn.Brown,x:217,y:297},{name:Pn.Stralsund,region:kn.Brown,x:210,y:126},{name:Pn.Magdeburg,region:kn.Brown,x:389,y:271},{name:Pn.Berlin,region:kn.Brown,x:355,y:170},{name:Pn.FrankfurtO,region:kn.Brown,x:381,y:99},{name:Pn.Halle,region:kn.Yellow,x:493,y:259},{name:Pn.Leipzig,region:kn.Yellow,x:526,y:222},{name:Pn.Dresden,region:kn.Yellow,x:572,y:126},{name:Pn.Erfurt,region:kn.Yellow,x:567,y:309},{name:Pn.Fulda,region:kn.Yellow,x:628,y:398},{name:Pn.Würzburg,region:kn.Yellow,x:735,y:386},{name:Pn.Nurnberg,region:kn.Yellow,x:780,y:309},{name:Pn.Osnabrück,region:kn.Red,x:359,y:516},{name:Pn.Münster,region:kn.Red,x:427,y:554},{name:Pn.Essen,region:kn.Red,x:475,y:603},{name:Pn.Duisburg,region:kn.Red,x:456,y:645},{name:Pn.Dortmund,region:kn.Red,x:505,y:543},{name:Pn.Dusseldorf,region:kn.Red,x:537,y:635},{name:Pn.Kassel,region:kn.Red,x:524,y:430},{name:Pn.Aachen,region:kn.Cyan,x:614,y:654},{name:Pn.Köln,region:kn.Cyan,x:590,y:589},{name:Pn.Trier,region:kn.Cyan,x:739,y:628},{name:Pn.Mainz,region:kn.Cyan,x:697,y:514},{name:Pn.FrankfurtM,region:kn.Cyan,x:672,y:473},{name:Pn.Saarbrücken,region:kn.Cyan,x:818,y:568},{name:Pn.Mannheim,region:kn.Cyan,x:796,y:479},{name:Pn.Freiburg,region:kn.Purple,x:966,y:537},{name:Pn.Stuttgart,region:kn.Purple,x:884,y:458},{name:Pn.Konstanz,region:kn.Purple,x:1011,y:459},{name:Pn.Augsburg,region:kn.Purple,x:911,y:346},{name:Pn.Regensburg,region:kn.Purple,x:846,y:256},{name:Pn.München,region:kn.Purple,x:967,y:278},{name:Pn.Passau,region:kn.Purple,x:904,y:153}],connections:[{nodes:[Pn.Flensburg,Pn.Kiel],cost:4},{nodes:[Pn.Kiel,Pn.Hamburg],cost:8},{nodes:[Pn.Kiel,Pn.Lubeck],cost:4},{nodes:[Pn.Hamburg,Pn.Hannover],cost:17},{nodes:[Pn.Hamburg,Pn.Bremen],cost:11},{nodes:[Pn.Hamburg,Pn.Cuxhaven],cost:11},{nodes:[Pn.Hamburg,Pn.Lubeck],cost:6},{nodes:[Pn.Hamburg,Pn.Schwerin],cost:8},{nodes:[Pn.Bremen,Pn.Wilhelmshaven],cost:11},{nodes:[Pn.Bremen,Pn.Hannover],cost:10},{nodes:[Pn.Bremen,Pn.Cuxhaven],cost:8},{nodes:[Pn.Bremen,Pn.Osnabrück],cost:11},{nodes:[Pn.Hannover,Pn.Schwerin],cost:19},{nodes:[Pn.Hannover,Pn.Magdeburg],cost:15},{nodes:[Pn.Hannover,Pn.Erfurt],cost:19},{nodes:[Pn.Hannover,Pn.Osnabrück],cost:16},{nodes:[Pn.Hannover,Pn.Kassel],cost:15},{nodes:[Pn.Wilhelmshaven,Pn.Osnabrück],cost:14},{nodes:[Pn.Lubeck,Pn.Schwerin],cost:6},{nodes:[Pn.Schwerin,Pn.Rostock],cost:6},{nodes:[Pn.Schwerin,Pn.Stralsund],cost:19},{nodes:[Pn.Schwerin,Pn.Berlin],cost:18},{nodes:[Pn.Schwerin,Pn.Magdeburg],cost:16},{nodes:[Pn.Stralsund,Pn.Rostock],cost:19},{nodes:[Pn.Stralsund,Pn.Berlin],cost:15},{nodes:[Pn.Berlin,Pn.Magdeburg],cost:10},{nodes:[Pn.Berlin,Pn.FrankfurtO],cost:6},{nodes:[Pn.Berlin,Pn.Halle],cost:17},{nodes:[Pn.Magdeburg,Pn.Halle],cost:11},{nodes:[Pn.FrankfurtO,Pn.Leipzig],cost:21},{nodes:[Pn.FrankfurtO,Pn.Dresden],cost:16},{nodes:[Pn.Halle,Pn.Leipzig],cost:0},{nodes:[Pn.Leipzig,Pn.Dresden],cost:13},{nodes:[Pn.Erfurt,Pn.Halle],cost:6},{nodes:[Pn.Erfurt,Pn.Dresden],cost:19},{nodes:[Pn.Erfurt,Pn.Nurnberg],cost:21},{nodes:[Pn.Erfurt,Pn.Fulda],cost:13},{nodes:[Pn.Erfurt,Pn.Kassel],cost:15},{nodes:[Pn.Fulda,Pn.Würzburg],cost:11},{nodes:[Pn.Fulda,Pn.Kassel],cost:8},{nodes:[Pn.Fulda,Pn.FrankfurtM],cost:8},{nodes:[Pn.Würzburg,Pn.Nurnberg],cost:8},{nodes:[Pn.Würzburg,Pn.FrankfurtM],cost:13},{nodes:[Pn.Würzburg,Pn.Mannheim],cost:10},{nodes:[Pn.Würzburg,Pn.Stuttgart],cost:12},{nodes:[Pn.Würzburg,Pn.Augsburg],cost:19},{nodes:[Pn.Nurnberg,Pn.Augsburg],cost:18},{nodes:[Pn.Nurnberg,Pn.Regensburg],cost:12},{nodes:[Pn.Osnabrück,Pn.Münster],cost:7},{nodes:[Pn.Osnabrück,Pn.Kassel],cost:20},{nodes:[Pn.Münster,Pn.Essen],cost:6},{nodes:[Pn.Münster,Pn.Dortmund],cost:2},{nodes:[Pn.Essen,Pn.Duisburg],cost:0},{nodes:[Pn.Essen,Pn.Dusseldorf],cost:2},{nodes:[Pn.Essen,Pn.Dortmund],cost:5},{nodes:[Pn.Dortmund,Pn.Kassel],cost:18},{nodes:[Pn.Dortmund,Pn.Köln],cost:10},{nodes:[Pn.Dortmund,Pn.FrankfurtM],cost:20},{nodes:[Pn.Kassel,Pn.FrankfurtM],cost:13},{nodes:[Pn.Dusseldorf,Pn.Aachen],cost:9},{nodes:[Pn.Dusseldorf,Pn.Köln],cost:4},{nodes:[Pn.Aachen,Pn.Köln],cost:7},{nodes:[Pn.Aachen,Pn.Trier],cost:19},{nodes:[Pn.Trier,Pn.Köln],cost:20},{nodes:[Pn.Trier,Pn.Mainz],cost:18},{nodes:[Pn.Trier,Pn.Saarbrücken],cost:11},{nodes:[Pn.Mainz,Pn.FrankfurtM],cost:0},{nodes:[Pn.Mainz,Pn.Köln],cost:21},{nodes:[Pn.Mainz,Pn.Saarbrücken],cost:10},{nodes:[Pn.Mainz,Pn.Mannheim],cost:11},{nodes:[Pn.Mannheim,Pn.Saarbrücken],cost:16},{nodes:[Pn.Mannheim,Pn.Stuttgart],cost:6},{nodes:[Pn.Stuttgart,Pn.Saarbrücken],cost:17},{nodes:[Pn.Stuttgart,Pn.Freiburg],cost:16},{nodes:[Pn.Stuttgart,Pn.Konstanz],cost:16},{nodes:[Pn.Stuttgart,Pn.Augsburg],cost:15},{nodes:[Pn.Konstanz,Pn.Freiburg],cost:14},{nodes:[Pn.Konstanz,Pn.Augsburg],cost:17},{nodes:[Pn.Regensburg,Pn.Augsburg],cost:13},{nodes:[Pn.Regensburg,Pn.München],cost:10},{nodes:[Pn.Regensburg,Pn.Passau],cost:12},{nodes:[Pn.Augsburg,Pn.München],cost:6},{nodes:[Pn.Passau,Pn.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"}(Sn||(Sn={}));var Rn,An,On={name:"India",cities:[{name:Sn.Thiruvananthapuram,region:_n.Red,x:217,y:868},{name:Sn.Madurai,region:_n.Red,x:230,y:829},{name:Sn.Coimbatore,region:_n.Red,x:197,y:797},{name:Sn.Chennai,region:_n.Red,x:289,y:740},{name:Sn.Hyderabad,region:_n.Red,x:232,y:618},{name:Sn.Bangalore1,region:_n.Red,x:205,y:710},{name:Sn.Bangalore2,region:_n.Red,x:205,y:735},{name:Sn.Dibrugarh,region:_n.Brown,x:669,y:328},{name:Sn.Imphal,region:_n.Brown,x:658,y:392},{name:Sn.Aizawi,region:_n.Brown,x:625,y:427},{name:Sn.Chittagong,region:_n.Brown,x:589,y:483},{name:Sn.Shillong,region:_n.Brown,x:586,y:395},{name:Sn.Dhaka,region:_n.Brown,x:548,y:432},{name:Sn.Khulna,region:_n.Brown,x:528,y:468},{name:Sn.Darjeeling,region:_n.Green,x:496,y:333},{name:Sn.Kathmandu,region:_n.Green,x:418,y:307},{name:Sn.Patna,region:_n.Green,x:416,y:373},{name:Sn.Lakhnau,region:_n.Green,x:310,y:338},{name:Sn.Varanasi,region:_n.Green,x:350,y:385},{name:Sn.Agra,region:_n.Green,x:228,y:335},{name:Sn.Kanpur,region:_n.Green,x:269,y:373},{name:Sn.Srinagar,region:_n.Orange,x:135,y:115},{name:Sn.Ludhiana,region:_n.Orange,x:186,y:215},{name:Sn.Delhi1,region:_n.Orange,x:190,y:281},{name:Sn.Delhi2,region:_n.Orange,x:190,y:303},{name:Sn.Jaipur,region:_n.Orange,x:158,y:341},{name:Sn.Udaipur,region:_n.Orange,x:105,y:410},{name:Sn.Ahmedabad,region:_n.Orange,x:75,y:456},{name:Sn.Dhanbad,region:_n.Yellow,x:424,y:427},{name:Sn.Kolkata,region:_n.Yellow,x:463,y:477},{name:Sn.Bhudaneswar,region:_n.Yellow,x:428,y:533},{name:Sn.Sambalpur,region:_n.Yellow,x:376,y:494},{name:Sn.Jabalpur,region:_n.Yellow,x:293,y:478},{name:Sn.Nagpur,region:_n.Yellow,x:250,y:510},{name:Sn.Visakhapatnam,region:_n.Yellow,x:358,y:597},{name:Sn.Goa,region:_n.Pink,x:109,y:677},{name:Sn.Pune,region:_n.Pink,x:133,y:587},{name:Sn.Surat,region:_n.Pink,x:80,y:510},{name:Sn.Indore,region:_n.Pink,x:160,y:476},{name:Sn.Bhopal,region:_n.Pink,x:208,y:437},{name:Sn.Mumbai1,region:_n.Pink,x:58,y:570},{name:Sn.Mumbai2,region:_n.Pink,x:58,y:593}],connections:[{nodes:[Sn.Srinagar,Sn.Ludhiana],cost:15},{nodes:[Sn.Ludhiana,Sn.Delhi1],cost:9},{nodes:[Sn.Delhi1,Sn.Delhi2],cost:0},{nodes:[Sn.Delhi2,Sn.Jaipur],cost:7},{nodes:[Sn.Delhi2,Sn.Agra],cost:6},{nodes:[Sn.Jaipur,Sn.Bhopal],cost:12},{nodes:[Sn.Jaipur,Sn.Kanpur],cost:12},{nodes:[Sn.Agra,Sn.Lakhnau],cost:8},{nodes:[Sn.Lakhnau,Sn.Kathmandu],cost:15},{nodes:[Sn.Kathmandu,Sn.Darjeeling],cost:13},{nodes:[Sn.Darjeeling,Sn.Shillong],cost:12},{nodes:[Sn.Shillong,Sn.Patna],cost:18},{nodes:[Sn.Patna,Sn.Kathmandu],cost:10},{nodes:[Sn.Imphal,Sn.Dibrugarh],cost:11},{nodes:[Sn.Dibrugarh,Sn.Shillong],cost:9},{nodes:[Sn.Shillong,Sn.Imphal],cost:12},{nodes:[Sn.Imphal,Sn.Aizawi],cost:7},{nodes:[Sn.Shillong,Sn.Dhaka],cost:10},{nodes:[Sn.Dhaka,Sn.Khulna],cost:6},{nodes:[Sn.Khulna,Sn.Kolkata],cost:3},{nodes:[Sn.Dhanbad,Sn.Dhaka],cost:14},{nodes:[Sn.Jabalpur,Sn.Sambalpur],cost:13},{nodes:[Sn.Sambalpur,Sn.Nagpur],cost:13},{nodes:[Sn.Nagpur,Sn.Visakhapatnam],cost:17},{nodes:[Sn.Visakhapatnam,Sn.Sambalpur],cost:12},{nodes:[Sn.Jabalpur,Sn.Kanpur],cost:11},{nodes:[Sn.Varanasi,Sn.Jabalpur],cost:11},{nodes:[Sn.Kanpur,Sn.Varanasi],cost:8},{nodes:[Sn.Varanasi,Sn.Patna],cost:5},{nodes:[Sn.Patna,Sn.Lakhnau],cost:11},{nodes:[Sn.Kanpur,Sn.Bhopal],cost:13},{nodes:[Sn.Ahmedabad,Sn.Bhopal],cost:11},{nodes:[Sn.Bhopal,Sn.Udaipur],cost:11},{nodes:[Sn.Udaipur,Sn.Jaipur],cost:9},{nodes:[Sn.Ahmedabad,Sn.Surat],cost:7},{nodes:[Sn.Ahmedabad,Sn.Indore],cost:8},{nodes:[Sn.Indore,Sn.Surat],cost:10},{nodes:[Sn.Mumbai1,Sn.Mumbai2],cost:0},{nodes:[Sn.Mumbai2,Sn.Pune],cost:4},{nodes:[Sn.Pune,Sn.Hyderabad],cost:13},{nodes:[Sn.Pune,Sn.Nagpur],cost:17},{nodes:[Sn.Pune,Sn.Indore],cost:15},{nodes:[Sn.Goa,Sn.Coimbatore],cost:18},{nodes:[Sn.Bangalore1,Sn.Bangalore2],cost:0},{nodes:[Sn.Bangalore2,Sn.Coimbatore],cost:9},{nodes:[Sn.Coimbatore,Sn.Thiruvananthapuram],cost:10},{nodes:[Sn.Thiruvananthapuram,Sn.Madurai],cost:7},{nodes:[Sn.Madurai,Sn.Chennai],cost:12},{nodes:[Sn.Chennai,Sn.Bangalore1],cost:9},{nodes:[Sn.Bangalore1,Sn.Hyderabad],cost:14},{nodes:[Sn.Hyderabad,Sn.Goa],cost:15},{nodes:[Sn.Goa,Sn.Bangalore2],cost:14},{nodes:[Sn.Mumbai2,Sn.Goa],cost:11},{nodes:[Sn.Indore,Sn.Nagpur],cost:10},{nodes:[Sn.Sambalpur,Sn.Dhanbad],cost:8},{nodes:[Sn.Sambalpur,Sn.Bhudaneswar],cost:7},{nodes:[Sn.Bhudaneswar,Sn.Kolkata],cost:11},{nodes:[Sn.Kolkata,Sn.Dhanbad],cost:9},{nodes:[Sn.Dhanbad,Sn.Patna],cost:8},{nodes:[Sn.Nagpur,Sn.Hyderabad],cost:12},{nodes:[Sn.Hyderabad,Sn.Visakhapatnam],cost:13},{nodes:[Sn.Visakhapatnam,Sn.Chennai],cost:17},{nodes:[Sn.Chittagong,Sn.Aizawi],cost:7},{nodes:[Sn.Dhaka,Sn.Aizawi],cost:8},{nodes:[Sn.Dhaka,Sn.Chittagong],cost:7},{nodes:[Sn.Patna,Sn.Darjeeling],cost:11},{nodes:[Sn.Visakhapatnam,Sn.Bhudaneswar],cost:12},{nodes:[Sn.Udaipur,Sn.Ahmedabad],cost:6},{nodes:[Sn.Madurai,Sn.Coimbatore],cost:6},{nodes:[Sn.Bangalore2,Sn.Madurai],cost:10},{nodes:[Sn.Bhopal,Sn.Jabalpur],cost:8},{nodes:[Sn.Bhopal,Sn.Nagpur],cost:7},{nodes:[Sn.Bhopal,Sn.Indore],cost:4},{nodes:[Sn.Surat,Sn.Mumbai1],cost:6},{nodes:[Sn.Agra,Sn.Kanpur],cost:8},{nodes:[Sn.Kanpur,Sn.Lakhnau],cost:3},{nodes:[Sn.Lakhnau,Sn.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"])(qe);if("original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[sr(3,"India"),sr(4,"India"),sr(5,"India"),sr(6,"India")],o=[sr(7,"India"),sr(8,"India"),sr(9,"India"),sr(10,"India")]}else{var c=Ne(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=Ne(a,t()+""),2==e?(c=c.slice(1),a=Ne(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=Ne(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=Ne(a.slice(3).concat(c),t()+"")):a=Ne(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"})(Rn||(Rn={})),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"}(An||(An={}));var Ln,Gn,jn={name:"Italy",cities:[{name:An.Siracusa,region:Rn.Brown,x:1048,y:471},{name:An.Reggiodical,region:Rn.Brown,x:1013,y:346},{name:An.Cosenza,region:Rn.Brown,x:960,y:240},{name:An.Messina,region:Rn.Brown,x:975,y:365},{name:An.Palermo,region:Rn.Brown,x:875,y:468},{name:An.Catania,region:Rn.Brown,x:1007,y:460},{name:An.Brindisi,region:Rn.Purple,x:945,y:4},{name:An.Taranto,region:Rn.Brown,x:933,y:92},{name:An.Bari,region:Rn.Purple,x:871,y:32},{name:An.Foggia,region:Rn.Purple,x:777,y:69},{name:An.Pesara,region:Rn.Purple,x:646,y:76},{name:An.Napoli,region:Rn.Purple,x:747,y:222},{name:An.Salerno,region:Rn.Purple,x:799,y:212},{name:An.Roma,region:Rn.Purple,x:583,y:228},{name:An.Ancona,region:Rn.Red,x:549,y:16},{name:An.Rimini,region:Rn.Red,x:459,y:13},{name:An.Ravenna,region:Rn.Red,x:401,y:-5},{name:An.Sanmarino,region:Rn.Red,x:456,y:88},{name:An.Perugia,region:Rn.Red,x:507,y:123},{name:An.Frienze,region:Rn.Red,x:389,y:159},{name:An.Udine,region:Rn.Green,x:358,y:-207},{name:An.Trieste,region:Rn.Green,x:410,y:-181},{name:An.Bolanzo,region:Rn.Green,x:197,y:-172},{name:An.Mestre,region:Rn.Green,x:318,y:-115},{name:An.Venezia,region:Rn.Green,x:349,y:-103},{name:An.Vicenza,region:Rn.Green,x:235,y:-89},{name:An.Padua,region:Rn.Green,x:279,y:-72},{name:An.Torino,region:Rn.Blue,x:57,y:215},{name:An.Bergamo,region:Rn.Blue,x:125,y:14},{name:An.Milano,region:Rn.Blue,x:123,y:102},{name:An.Brescia,region:Rn.Blue,x:182,y:2},{name:An.Picenza,region:Rn.Blue,x:182,y:105},{name:An.Genova,region:Rn.Blue,x:182,y:217},{name:An.Verona,region:Rn.Blue,x:231,y:-13},{name:An.Lovorno,region:Rn.Red,x:333,y:216},{name:An.Ferrara,region:Rn.Yellow,x:333,y:-3},{name:An.Bologna,region:Rn.Yellow,x:350,y:85},{name:An.Modena,region:Rn.Yellow,x:303,y:72},{name:An.Reggio,region:Rn.Yellow,x:263,y:96},{name:An.Pisa,region:Rn.Yellow,x:304,y:197},{name:An.Parma,region:Rn.Yellow,x:224,y:81},{name:An.Laspezia,region:Rn.Yellow,x:245,y:206}],connections:[{nodes:[An.Palermo,An.Catania],cost:15},{nodes:[An.Catania,An.Siracusa],cost:3},{nodes:[An.Catania,An.Messina],cost:6},{nodes:[An.Messina,An.Palermo],cost:15},{nodes:[An.Messina,An.Reggiodical],cost:3},{nodes:[An.Reggiodical,An.Cosenza],cost:13},{nodes:[An.Cosenza,An.Salerno],cost:18},{nodes:[An.Cosenza,An.Taranto],cost:15},{nodes:[An.Taranto,An.Brindisi],cost:4},{nodes:[An.Brindisi,An.Bari],cost:7},{nodes:[An.Bari,An.Taranto],cost:7},{nodes:[An.Taranto,An.Salerno],cost:19},{nodes:[An.Salerno,An.Bari],cost:16},{nodes:[An.Bari,An.Foggia],cost:8},{nodes:[An.Foggia,An.Salerno],cost:10},{nodes:[An.Salerno,An.Napoli],cost:3},{nodes:[An.Napoli,An.Foggia],cost:12},{nodes:[An.Napoli,An.Roma],cost:14},{nodes:[An.Roma,An.Foggia],cost:22},{nodes:[An.Foggia,An.Pesara],cost:10},{nodes:[An.Pesara,An.Roma],cost:14},{nodes:[An.Roma,An.Ancona],cost:17},{nodes:[An.Roma,An.Perugia],cost:13},{nodes:[An.Perugia,An.Sanmarino],cost:12},{nodes:[An.Sanmarino,An.Rimini],cost:0},{nodes:[An.Rimini,An.Ancona],cost:6},{nodes:[An.Ancona,An.Perugia],cost:10},{nodes:[An.Ancona,An.Pesara],cost:9},{nodes:[An.Roma,An.Frienze],cost:20},{nodes:[An.Lovorno,An.Roma],cost:19},{nodes:[An.Frienze,An.Perugia],cost:13},{nodes:[An.Frienze,An.Sanmarino],cost:12},{nodes:[An.Genova,An.Torino],cost:12},{nodes:[An.Torino,An.Milano],cost:8},{nodes:[An.Milano,An.Bergamo],cost:3},{nodes:[An.Bergamo,An.Bolanzo],cost:12},{nodes:[An.Bolanzo,An.Brescia],cost:12},{nodes:[An.Bolanzo,An.Mestre],cost:12},{nodes:[An.Bolanzo,An.Udine],cost:14},{nodes:[An.Udine,An.Trieste],cost:4},{nodes:[An.Udine,An.Venezia],cost:7},{nodes:[An.Venezia,An.Mestre],cost:0},{nodes:[An.Genova,An.Laspezia],cost:5},{nodes:[An.Laspezia,An.Pisa],cost:5},{nodes:[An.Pisa,An.Lovorno],cost:0},{nodes:[An.Genova,An.Milano],cost:9},{nodes:[An.Milano,An.Picenza],cost:4},{nodes:[An.Picenza,An.Parma],cost:4},{nodes:[An.Parma,An.Reggio],cost:2},{nodes:[An.Reggio,An.Modena],cost:2},{nodes:[An.Modena,An.Bologna],cost:3},{nodes:[An.Bologna,An.Pisa],cost:12},{nodes:[An.Pisa,An.Reggio],cost:10},{nodes:[An.Laspezia,An.Parma],cost:9},{nodes:[An.Laspezia,An.Reggio],cost:9},{nodes:[An.Genova,An.Picenza],cost:7},{nodes:[An.Genova,An.Parma],cost:11},{nodes:[An.Milano,An.Brescia],cost:4},{nodes:[An.Brescia,An.Bergamo],cost:3},{nodes:[An.Brescia,An.Verona],cost:4},{nodes:[An.Brescia,An.Picenza],cost:5},{nodes:[An.Bolanzo,An.Vicenza],cost:10},{nodes:[An.Vicenza,An.Padua],cost:3},{nodes:[An.Vicenza,An.Verona],cost:3},{nodes:[An.Verona,An.Parma],cost:6},{nodes:[An.Parma,An.Brescia],cost:6},{nodes:[An.Verona,An.Padua],cost:5},{nodes:[An.Padua,An.Mestre],cost:3},{nodes:[An.Venezia,An.Ravenna],cost:12},{nodes:[An.Ravenna,An.Ferrara],cost:4},{nodes:[An.Ferrara,An.Venezia],cost:9},{nodes:[An.Ferrara,An.Padua],cost:7},{nodes:[An.Ferrara,An.Verona],cost:7},{nodes:[An.Verona,An.Modena],cost:8},{nodes:[An.Frienze,An.Pisa],cost:5},{nodes:[An.Frienze,An.Ravenna],cost:10},{nodes:[An.Ravenna,An.Rimini],cost:4},{nodes:[An.Frienze,An.Bologna],cost:8},{nodes:[An.Bologna,An.Ravenna],cost:4},{nodes:[An.Bologna,An.Ferrara],cost:3},{nodes:[An.Ferrara,An.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"})(Ln||(Ln={})),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"}(Gn||(Gn={}));var Dn,Nn,zn={name:"Japan",cities:[{name:Gn.Asahikawa,region:Ln.Brown,x:3384,y:1014},{name:Gn.Sapporo,region:Ln.Brown,x:3028,y:982,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Hakodate,region:Ln.Brown,x:2622,y:1112},{name:Gn.Admori,region:Ln.Brown,x:3818,y:1336},{name:Gn.Morioka,region:Ln.Brown,x:3636,y:1646,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Akita,region:Ln.Brown,x:3472,y:1480},{name:Gn.Sendai,region:Ln.Brown,x:3408,y:1886},{name:Gn.Niigata,region:Ln.Green,x:2874,y:1628},{name:Gn.Koriyama,region:Ln.Green,x:3086,y:1932,slotCosts:[10,15]},{name:Gn.Nagano,region:Ln.Green,x:2486,y:1722},{name:Gn.Saitama,region:Ln.Green,x:2450,y:1986,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Tokyo,region:Ln.Green,x:2524,y:2122,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Chiba,region:Ln.Green,x:2650,y:2316},{name:Gn.Yokohama,region:Ln.Green,x:2306,y:2244,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Kanazawa,region:Ln.Purple,x:2207,y:1385},{name:Gn.Toyama,region:Ln.Purple,x:2257,y:1595,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Kyoto,region:Ln.Purple,x:1765,y:1595},{name:Gn.Osaka,region:Ln.Purple,x:1517,y:1631,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Nagoya,region:Ln.Purple,x:1942,y:1751},{name:Gn.Kofu,region:Ln.Purple,x:2179,y:1897},{name:Gn.Hamamatsu,region:Ln.Purple,x:1958,y:2024,slotCosts:[10,15]},{name:Gn.Kobe,region:Ln.Yellow,x:1555,y:1451,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Matsue,region:Ln.Yellow,x:1457,y:1006,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Okayama,region:Ln.Yellow,x:1390,y:1286},{name:Gn.Takamatsu,region:Ln.Yellow,x:1268,y:1507},{name:Gn.Kochi,region:Ln.Yellow,x:974,y:1472,slotCosts:[10,15]},{name:Gn.Matsuyama,region:Ln.Yellow,x:1036,y:1268},{name:Gn.Hiroshima,region:Ln.Yellow,x:1103,y:1078},{name:Gn.Shimonoseki,region:Ln.Red,x:856,y:962},{name:Gn.Oita,region:Ln.Red,x:731,y:1166,slotCosts:[10,15]},{name:Gn.Miyazaki,region:Ln.Red,x:469,y:1318,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Gn.Kagoshima,region:Ln.Red,x:157,y:1255},{name:Gn.Kumamoto,region:Ln.Red,x:457,y:1045},{name:Gn.Fukuoka,region:Ln.Red,x:644,y:823,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Gn.Nagasaki,region:Ln.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:"Users may build 0, 1, 2 houses in round 1. The first house you place MUST be in one of the six special starting cities: Fukuoka, Kobe, Osaka, Sapporo, Tokyo, or Yokohama whether it be round 1 or after.\nYou get a free jump but that free jump can only go into one of these six starting cities (you still pay for the house, just no connection fee).\nAll of these six special starting cities are [10, 10, 20] meaning two players can go there in step 1 and these cities are marked with 10 on the map.\nIf you build 2 cities in round 1, you must use your free jump even though they might have 0 connection like Tokyo and Yokohama (system will auto use your free jump).\nIn Step 3, the third connection spots (cost 20) are opened in the starting cities and are available for normal or free jump.\nSome smaller cities have only two building spots (10 and 15, or 15 and 20). These cities are marked with an X. An X at the top means no Step 1 builds, an X at the bottom means no Step 3 builds.\nIf all starting city spots are taken, you cannot use your free jump.",connections:[{nodes:[Gn.Nagasaki,Gn.Fukuoka],cost:10},{nodes:[Gn.Fukuoka,Gn.Shimonoseki],cost:10},{nodes:[Gn.Shimonoseki,Gn.Hiroshima],cost:12},{nodes:[Gn.Hiroshima,Gn.Matsue],cost:13},{nodes:[Gn.Kumamoto,Gn.Kagoshima],cost:13},{nodes:[Gn.Kagoshima,Gn.Miyazaki],cost:8},{nodes:[Gn.Miyazaki,Gn.Kumamoto],cost:11},{nodes:[Gn.Kumamoto,Gn.Oita],cost:12},{nodes:[Gn.Oita,Gn.Miyazaki],cost:12},{nodes:[Gn.Oita,Gn.Matsuyama],cost:14},{nodes:[Gn.Matsuyama,Gn.Kochi],cost:7},{nodes:[Gn.Kochi,Gn.Takamatsu],cost:9},{nodes:[Gn.Hiroshima,Gn.Okayama],cost:11},{nodes:[Gn.Okayama,Gn.Matsue],cost:11},{nodes:[Gn.Okayama,Gn.Kobe],cost:9},{nodes:[Gn.Kobe,Gn.Matsue],cost:16},{nodes:[Gn.Matsuyama,Gn.Takamatsu],cost:10},{nodes:[Gn.Takamatsu,Gn.Okayama],cost:9},{nodes:[Gn.Osaka,Gn.Nagoya],cost:9},{nodes:[Gn.Nagoya,Gn.Kyoto],cost:9},{nodes:[Gn.Kyoto,Gn.Kobe],cost:3},{nodes:[Gn.Osaka,Gn.Kyoto],cost:0},{nodes:[Gn.Kyoto,Gn.Kanazawa],cost:19},{nodes:[Gn.Kanazawa,Gn.Toyama],cost:3},{nodes:[Gn.Kanazawa,Gn.Nagoya],cost:16},{nodes:[Gn.Nagoya,Gn.Toyama],cost:15},{nodes:[Gn.Toyama,Gn.Nagano],cost:9},{nodes:[Gn.Nagano,Gn.Niigata],cost:12},{nodes:[Gn.Niigata,Gn.Akita],cost:16},{nodes:[Gn.Hamamatsu,Gn.Kofu],cost:12},{nodes:[Gn.Kofu,Gn.Nagoya],cost:15},{nodes:[Gn.Nagoya,Gn.Hamamatsu],cost:6},{nodes:[Gn.Kofu,Gn.Saitama],cost:8},{nodes:[Gn.Saitama,Gn.Tokyo],cost:0},{nodes:[Gn.Tokyo,Gn.Yokohama],cost:0},{nodes:[Gn.Tokyo,Gn.Chiba],cost:4},{nodes:[Gn.Chiba,Gn.Sendai],cost:21},{nodes:[Gn.Tokyo,Gn.Koriyama],cost:14},{nodes:[Gn.Koriyama,Gn.Niigata],cost:11},{nodes:[Gn.Saitama,Gn.Nagano],cost:17},{nodes:[Gn.Saitama,Gn.Niigata],cost:21},{nodes:[Gn.Koriyama,Gn.Sendai],cost:7},{nodes:[Gn.Sendai,Gn.Akita],cost:14},{nodes:[Gn.Akita,Gn.Koriyama],cost:21},{nodes:[Gn.Sendai,Gn.Morioka],cost:10},{nodes:[Gn.Morioka,Gn.Akita],cost:7},{nodes:[Gn.Akita,Gn.Admori],cost:10},{nodes:[Gn.Admori,Gn.Morioka],cost:10},{nodes:[Gn.Admori,Gn.Hakodate],cost:15},{nodes:[Gn.Hakodate,Gn.Sapporo],cost:14},{nodes:[Gn.Sapporo,Gn.Asahikawa],cost:8},{nodes:[Gn.Kumamoto,Gn.Shimonoseki],cost:16},{nodes:[Gn.Kumamoto,Gn.Fukuoka],cost:8}]},Tn=c({},zn);(function(e){e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Pink"]="pink"})(Dn||(Dn={})),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"}(Nn||(Nn={}));var En,Kn={name:"Korea",cities:[{name:Nn.Gyeongju,region:Dn.Yellow,x:2161,y:2980},{name:Nn.Ulsan,region:Dn.Yellow,x:2185,y:3226},{name:Nn.Busan,region:Dn.Yellow,x:2041,y:3440},{name:Nn.Jinju,region:Dn.Yellow,x:1676,y:3431},{name:Nn.Daegu,region:Dn.Yellow,x:1876,y:3062},{name:Nn.Andong,region:Dn.Yellow,x:1987,y:2737},{name:Nn.Sangju,region:Dn.Yellow,x:1747,y:2827},{name:Nn.Rasun,region:Dn.Red,x:2485,y:361},{name:Nn.Cheongjin,region:Dn.Red,x:2309,y:491},{name:Nn.Gyeongseong,region:Dn.Red,x:2209,y:689},{name:Nn.Seongjin,region:Dn.Red,x:2060,y:1001},{name:Nn.Hyesan,region:Dn.Red,x:1783,y:665},{name:Nn.Hamheung,region:Dn.Red,x:1516,y:1283},{name:Nn.Wonsan,region:Dn.Red,x:1484,y:1600},{name:Nn.Samcheok,region:Dn.Brown,x:2171,y:2437},{name:Nn.Donghae,region:Dn.Brown,x:2041,y:2299},{name:Nn.Taeraek,region:Dn.Brown,x:1999,y:2528},{name:Nn.Gangneung,region:Dn.Brown,x:1949,y:2092},{name:Nn.Sokcho,region:Dn.Brown,x:1832,y:1915},{name:Nn.Wonju,region:Dn.Brown,x:1735,y:2293},{name:Nn.Chuncheon,region:Dn.Brown,x:1594,y:2056},{name:Nn.Chungju,region:Dn.Green,x:1744,y:2552},{name:Nn.Cheongju,region:Dn.Green,x:1547,y:2645},{name:Nn.Jeju,region:Dn.Green,x:1223,y:4051},{name:Nn.Gwangju,region:Dn.Green,x:1309,y:3380},{name:Nn.Naju,region:Dn.Green,x:1121,y:3569},{name:Nn.Jeonju,region:Dn.Green,x:1363,y:3109},{name:Nn.Daejeon,region:Dn.Green,x:1462,y:2839},{name:Nn.Yongin,region:Dn.Purple,x:1532,y:2371},{name:Nn.Seoul,region:Dn.Purple,x:1400,y:2203},{name:Nn.Suwon,region:Dn.Purple,x:1366,y:2488},{name:Nn.Goyang,region:Dn.Purple,x:1219,y:2270},{name:Nn.Anyang,region:Dn.Purple,x:1156,y:2446},{name:Nn.Incheon,region:Dn.Purple,x:1028,y:2311},{name:Nn.Gaesung,region:Dn.Purple,x:1171,y:2042},{name:Nn.Ganggye,region:Dn.Pink,x:1213,y:809},{name:Nn.Haeju,region:Dn.Pink,x:856,y:2135},{name:Nn.Pyeongyang,region:Dn.Pink,x:938,y:1642},{name:Nn.Hwangju,region:Dn.Pink,x:901,y:1886},{name:Nn.Nampo,region:Dn.Pink,x:677,y:1763},{name:Nn.Anju,region:Dn.Pink,x:812,y:1391},{name:Nn.Sinuiju,region:Dn.Pink,x:433,y:1105}],connections:[{nodes:[Nn.Naju,Nn.Jeju],cost:19},{nodes:[Nn.Naju,Nn.Jinju],cost:15},{nodes:[Nn.Jinju,Nn.Gwangju],cost:14},{nodes:[Nn.Gwangju,Nn.Naju],cost:2},{nodes:[Nn.Gwangju,Nn.Jeonju],cost:11},{nodes:[Nn.Jeonju,Nn.Jinju],cost:15},{nodes:[Nn.Jinju,Nn.Busan],cost:11},{nodes:[Nn.Jinju,Nn.Daegu],cost:11},{nodes:[Nn.Daegu,Nn.Jeonju],cost:16},{nodes:[Nn.Daegu,Nn.Busan],cost:12},{nodes:[Nn.Busan,Nn.Ulsan],cost:7},{nodes:[Nn.Ulsan,Nn.Daegu],cost:10},{nodes:[Nn.Jeonju,Nn.Daejeon],cost:9},{nodes:[Nn.Daejeon,Nn.Daegu],cost:15},{nodes:[Nn.Andong,Nn.Gyeongju],cost:11},{nodes:[Nn.Gyeongju,Nn.Daegu],cost:7},{nodes:[Nn.Gyeongju,Nn.Ulsan],cost:3},{nodes:[Nn.Daegu,Nn.Sangju],cost:9},{nodes:[Nn.Sangju,Nn.Daejeon],cost:8},{nodes:[Nn.Daegu,Nn.Andong],cost:10},{nodes:[Nn.Andong,Nn.Sangju],cost:6},{nodes:[Nn.Andong,Nn.Taeraek],cost:8},{nodes:[Nn.Taeraek,Nn.Samcheok],cost:5},{nodes:[Nn.Samcheok,Nn.Donghae],cost:0},{nodes:[Nn.Donghae,Nn.Gangneung],cost:4},{nodes:[Nn.Chungju,Nn.Taeraek],cost:13},{nodes:[Nn.Andong,Nn.Chungju],cost:11},{nodes:[Nn.Chungju,Nn.Cheongju],cost:7},{nodes:[Nn.Cheongju,Nn.Sangju],cost:8},{nodes:[Nn.Sangju,Nn.Chungju],cost:9},{nodes:[Nn.Daejeon,Nn.Cheongju],cost:4},{nodes:[Nn.Wonju,Nn.Donghae],cost:14},{nodes:[Nn.Wonju,Nn.Taeraek],cost:13},{nodes:[Nn.Chungju,Nn.Wonju],cost:5},{nodes:[Nn.Wonju,Nn.Gangneung],cost:12},{nodes:[Nn.Wonju,Nn.Sokcho],cost:15},{nodes:[Nn.Sokcho,Nn.Gangneung],cost:6},{nodes:[Nn.Chuncheon,Nn.Wonju],cost:7},{nodes:[Nn.Sinuiju,Nn.Ganggye],cost:25},{nodes:[Nn.Ganggye,Nn.Hyesan],cost:20},{nodes:[Nn.Sinuiju,Nn.Anju],cost:13},{nodes:[Nn.Anju,Nn.Ganggye],cost:22},{nodes:[Nn.Ganggye,Nn.Hamheung],cost:19},{nodes:[Nn.Hamheung,Nn.Anju],cost:20},{nodes:[Nn.Anju,Nn.Nampo],cost:10},{nodes:[Nn.Anju,Nn.Pyeongyang],cost:7},{nodes:[Nn.Pyeongyang,Nn.Nampo],cost:5},{nodes:[Nn.Nampo,Nn.Hwangju],cost:4},{nodes:[Nn.Hwangju,Nn.Pyeongyang],cost:4},{nodes:[Nn.Pyeongyang,Nn.Wonsan],cost:18},{nodes:[Nn.Pyeongyang,Nn.Hamheung],cost:23},{nodes:[Nn.Hamheung,Nn.Wonsan],cost:11},{nodes:[Nn.Pyeongyang,Nn.Gaesung],cost:14},{nodes:[Nn.Gaesung,Nn.Haeju],cost:8},{nodes:[Nn.Haeju,Nn.Hwangju],cost:8},{nodes:[Nn.Gaesung,Nn.Goyang],cost:7},{nodes:[Nn.Anyang,Nn.Suwon],cost:3},{nodes:[Nn.Suwon,Nn.Yongin],cost:2},{nodes:[Nn.Goyang,Nn.Incheon],cost:0},{nodes:[Nn.Incheon,Nn.Anyang],cost:0},{nodes:[Nn.Goyang,Nn.Seoul],cost:0},{nodes:[Nn.Suwon,Nn.Cheongju],cost:10},{nodes:[Nn.Seoul,Nn.Yongin],cost:2},{nodes:[Nn.Gaesung,Nn.Chuncheon],cost:13},{nodes:[Nn.Gaesung,Nn.Wonsan],cost:18},{nodes:[Nn.Wonsan,Nn.Sokcho],cost:18},{nodes:[Nn.Wonsan,Nn.Chuncheon],cost:19},{nodes:[Nn.Sokcho,Nn.Chuncheon],cost:10},{nodes:[Nn.Chuncheon,Nn.Seoul],cost:8},{nodes:[Nn.Chuncheon,Nn.Yongin],cost:9},{nodes:[Nn.Yongin,Nn.Wonju],cost:8},{nodes:[Nn.Yongin,Nn.Chungju],cost:10},{nodes:[Nn.Yongin,Nn.Cheongju],cost:10},{nodes:[Nn.Rasun,Nn.Cheongjin],cost:8},{nodes:[Nn.Cheongjin,Nn.Gyeongseong],cost:4},{nodes:[Nn.Gyeongseong,Nn.Seongjin],cost:16},{nodes:[Nn.Hyesan,Nn.Gyeongseong],cost:18},{nodes:[Nn.Hyesan,Nn.Seongjin],cost:14},{nodes:[Nn.Seongjin,Nn.Hamheung],cost:17},{nodes:[Nn.Hamheung,Nn.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."};t("d4b6"),t("e08f");(function(e){e["Manhattan"]="manhattan"})(En||(En={}));var In,Un,Wn=[{name:"M1",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:236,y:129},{name:"M2",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:294,y:132},{name:"M3",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:456,y:135},{name:"M4",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:529,y:137},{name:"M5",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:234,y:236},{name:"M6",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:292,y:236},{name:"M7",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:456,y:238},{name:"M8",region:En.Manhattan,connectionCost:5,slotCosts:[40],x:532,y:239},{name:"M9",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:307,y:318},{name:"M10",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:235,y:340},{name:"M11",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:457,y:340},{name:"M12",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:529,y:344},{name:"M13",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:290,y:367},{name:"M14",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:241,y:420},{name:"M15",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:300,y:421},{name:"M16",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:389,y:422},{name:"M17",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:457,y:423},{name:"M18",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:523,y:423},{name:"M19",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:344,y:431},{name:"M20",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:243,y:480},{name:"M21",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:300,y:481},{name:"M22",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:348,y:482},{name:"M23",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:393,y:483},{name:"M24",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:455,y:484},{name:"M25",region:En.Manhattan,connectionCost:5,slotCosts:[35],x:521,y:485},{name:"M26",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:240,y:539},{name:"M27",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:301,y:540},{name:"M28",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:353,y:541},{name:"M29",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:400,y:541},{name:"M30",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:456,y:542},{name:"M31",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:522,y:543},{name:"M32",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:405,y:588},{name:"M33",region:En.Manhattan,connectionCost:5,slotCosts:[30],x:239,y:605},{name:"M34",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:303,y:605},{name:"M35",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:455,y:606},{name:"M36",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:528,y:607},{name:"M37",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:367,y:609},{name:"M38",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:289,y:680},{name:"M39",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:466,y:680},{name:"M40",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:512,y:680},{name:"M41",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:363,y:681},{name:"M42",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:571,y:681},{name:"M43",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:417,y:682},{name:"M44",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:427,y:740},{name:"M45",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:632,y:740},{name:"M46",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:505,y:741},{name:"M47",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:572,y:741},{name:"M48",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:378,y:745},{name:"M49",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:346,y:761},{name:"M50",region:En.Manhattan,connectionCost:5,slotCosts:[25],x:312,y:775},{name:"M51",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:640,y:784},{name:"M52",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:571,y:787},{name:"M53",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:427,y:790},{name:"M54",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:514,y:790},{name:"M55",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:473,y:794},{name:"M56",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:646,y:821},{name:"M57",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:585,y:827},{name:"M58",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:430,y:832},{name:"M59",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:533,y:833},{name:"M60",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:482,y:834},{name:"M61",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:389,y:851},{name:"M62",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:350,y:852},{name:"M63",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:613,y:859},{name:"M64",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:673,y:860},{name:"M65",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:433,y:871},{name:"M66",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:571,y:873},{name:"M67",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:482,y:874},{name:"M68",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:534,y:885},{name:"M69",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:636,y:892},{name:"M70",region:En.Manhattan,connectionCost:5,slotCosts:[20],x:371,y:895},{name:"M71",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:482,y:914},{name:"M72",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:593,y:915},{name:"M73",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:427,y:920},{name:"M74",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:389,y:934},{name:"M75",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:555,y:937},{name:"M76",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:466,y:950},{name:"M77",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:520,y:962},{name:"M78",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:379,y:983},{name:"M79",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:424,y:986},{name:"M80",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:484,y:993},{name:"M81",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:394,y:1038},{name:"M82",region:En.Manhattan,connectionCost:5,slotCosts:[15],x:429,y:1041},{name:"M83",region:En.Manhattan,connectionCost:5,slotCosts:[10],x:478,y:1041}],Hn=[{nodes:["M1","M2"],cost:0},{nodes:["M1","M5"],cost:0},{nodes:["M2","M6"],cost:0},{nodes:["M3","M4"],cost:0},{nodes:["M3","M7"],cost:0},{nodes:["M4","M8"],cost:0},{nodes:["M5","M6"],cost:0},{nodes:["M5","M10"],cost:0},{nodes:["M6","M9"],cost:0},{nodes:["M7","M8"],cost:0},{nodes:["M7","M11"],cost:0},{nodes:["M8","M12"],cost:0},{nodes:["M9","M13"],cost:0},{nodes:["M10","M13"],cost:0},{nodes:["M10","M14"],cost:0},{nodes:["M11","M12"],cost:0},{nodes:["M11","M17"],cost:0},{nodes:["M12","M18"],cost:0},{nodes:["M13","M15"],cost:0},{nodes:["M14","M15"],cost:0},{nodes:["M14","M20"],cost:0},{nodes:["M15","M19"],cost:0},{nodes:["M15","M21"],cost:0},{nodes:["M16","M17"],cost:0},{nodes:["M16","M19"],cost:0},{nodes:["M16","M23"],cost:0},{nodes:["M17","M18"],cost:0},{nodes:["M17","M24"],cost:0},{nodes:["M18","M25"],cost:0},{nodes:["M19","M22"],cost:0},{nodes:["M20","M21"],cost:0},{nodes:["M20","M26"],cost:0},{nodes:["M21","M22"],cost:0},{nodes:["M21","M27"],cost:0},{nodes:["M22","M23"],cost:0},{nodes:["M22","M28"],cost:0},{nodes:["M23","M24"],cost:0},{nodes:["M23","M29"],cost:0},{nodes:["M24","M25"],cost:0},{nodes:["M24","M30"],cost:0},{nodes:["M25","M31"],cost:0},{nodes:["M26","M27"],cost:0},{nodes:["M26","M33"],cost:0},{nodes:["M27","M28"],cost:0},{nodes:["M27","M34"],cost:0},{nodes:["M28","M29"],cost:0},{nodes:["M28","M37"],cost:0},{nodes:["M29","M30"],cost:0},{nodes:["M29","M32"],cost:0},{nodes:["M30","M31"],cost:0},{nodes:["M30","M35"],cost:0},{nodes:["M31","M36"],cost:0},{nodes:["M32","M35"],cost:0},{nodes:["M32","M37"],cost:0},{nodes:["M33","M34"],cost:0},{nodes:["M33","M38"],cost:0},{nodes:["M34","M37"],cost:0},{nodes:["M34","M38"],cost:0},{nodes:["M35","M36"],cost:0},{nodes:["M35","M39"],cost:0},{nodes:["M36","M40"],cost:0},{nodes:["M36","M42"],cost:0},{nodes:["M37","M41"],cost:0},{nodes:["M37","M43"],cost:0},{nodes:["M38","M41"],cost:0},{nodes:["M38","M50"],cost:0},{nodes:["M39","M40"],cost:0},{nodes:["M39","M43"],cost:0},{nodes:["M39","M46"],cost:0},{nodes:["M40","M42"],cost:0},{nodes:["M40","M46"],cost:0},{nodes:["M41","M43"],cost:0},{nodes:["M41","M48"],cost:0},{nodes:["M41","M49"],cost:0},{nodes:["M42","M45"],cost:0},{nodes:["M42","M47"],cost:0},{nodes:["M43","M44"],cost:0},{nodes:["M44","M48"],cost:0},{nodes:["M44","M53"],cost:0},{nodes:["M44","M55"],cost:0},{nodes:["M45","M47"],cost:0},{nodes:["M45","M51"],cost:0},{nodes:["M46","M47"],cost:0},{nodes:["M46","M54"],cost:0},{nodes:["M46","M55"],cost:0},{nodes:["M47","M52"],cost:0},{nodes:["M48","M49"],cost:0},{nodes:["M48","M53"],cost:0},{nodes:["M48","M61"],cost:0},{nodes:["M49","M50"],cost:0},{nodes:["M49","M61"],cost:0},{nodes:["M50","M62"],cost:0},{nodes:["M51","M52"],cost:0},{nodes:["M51","M56"],cost:0},{nodes:["M52","M54"],cost:0},{nodes:["M52","M57"],cost:0},{nodes:["M52","M59"],cost:0},{nodes:["M53","M55"],cost:0},{nodes:["M53","M58"],cost:0},{nodes:["M54","M55"],cost:0},{nodes:["M54","M59"],cost:0},{nodes:["M55","M60"],cost:0},{nodes:["M56","M57"],cost:0},{nodes:["M56","M63"],cost:0},{nodes:["M56","M64"],cost:0},{nodes:["M57","M59"],cost:0},{nodes:["M57","M63"],cost:0},{nodes:["M57","M66"],cost:0},{nodes:["M58","M60"],cost:0},{nodes:["M58","M61"],cost:0},{nodes:["M58","M65"],cost:0},{nodes:["M59","M60"],cost:0},{nodes:["M59","M66"],cost:0},{nodes:["M59","M68"],cost:0},{nodes:["M60","M67"],cost:0},{nodes:["M61","M62"],cost:0},{nodes:["M61","M65"],cost:0},{nodes:["M61","M73"],cost:0},{nodes:["M62","M70"],cost:0},{nodes:["M63","M64"],cost:0},{nodes:["M63","M66"],cost:0},{nodes:["M63","M69"],cost:0},{nodes:["M64","M69"],cost:0},{nodes:["M65","M67"],cost:0},{nodes:["M65","M73"],cost:0},{nodes:["M66","M68"],cost:0},{nodes:["M66","M72"],cost:0},{nodes:["M67","M68"],cost:0},{nodes:["M67","M71"],cost:0},{nodes:["M68","M71"],cost:0},{nodes:["M68","M75"],cost:0},{nodes:["M69","M72"],cost:0},{nodes:["M70","M73"],cost:0},{nodes:["M70","M74"],cost:0},{nodes:["M71","M73"],cost:0},{nodes:["M71","M76"],cost:0},{nodes:["M72","M75"],cost:0},{nodes:["M73","M74"],cost:0},{nodes:["M73","M76"],cost:0},{nodes:["M73","M79"],cost:0},{nodes:["M74","M78"],cost:0},{nodes:["M74","M79"],cost:0},{nodes:["M75","M77"],cost:0},{nodes:["M76","M77"],cost:0},{nodes:["M76","M79"],cost:0},{nodes:["M76","M80"],cost:0},{nodes:["M77","M80"],cost:0},{nodes:["M78","M79"],cost:0},{nodes:["M78","M81"],cost:0},{nodes:["M79","M80"],cost:0},{nodes:["M79","M82"],cost:0},{nodes:["M80","M83"],cost:0},{nodes:["M81","M82"],cost:0},{nodes:["M82","M83"],cost:0}],Fn={name:"Manhattan",cities:Wn,connections:Hn,layout:"Portrait",adjustRatio:[1.15,1.15],mapPosition:[30,10],mapRotation:0,viewBox:[1480,1400],supplyPosition:[675,1240],resupply:[[[4,4,4],[4,4,4],[5,5,5],[6,6,6],[7,7,7]],[[3,3,3],[3,3,3],[4,4,4],[5,5,5],[6,6,6]],[[2,2,2],[2,2,2],[3,3,3],[4,4,4],[5,5,5]],[[1,1,1],[1,1,1],[2,2,2],[2,2,2],[3,3,3]]],startingResources:[18,18,9,4],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r=new Set;e<=3&&(r.add(20),r.add(22),r.add(37));var o=Object(we["cloneDeep"])($e).filter((function(e){return!r.has(e.number)}));o.pop();var a=Ne(o.filter((function(e){return e.number<=15})),t()+""),i=Ne(o.filter((function(e){return e.number>15})),t()+"");a.splice(0,4);var s=a.splice(0,8).sort((function(e,n){return e.number-n.number})),c=s.slice(0,4),u=s.slice(4),l=[].concat(M(a),M(i));return{actualMarket:c,futureMarket:u,powerPlantsDeck:l}},blockSpaces:function(e,n,t){if(e>=5)return[];for(var r={10:3,15:3,20:2,25:2,30:2,35:2},o=4===e?1:2,a=[],i=function(){var e=b(c[s],2),r=e[0],i=e[1],u=Number(r),l=i*o,d=Ne(n.filter((function(e){return e.slotCosts&&e.slotCosts[0]===u})).map((function(e){return e.name})),t()+"");a.push.apply(a,M(d.slice(0,l)))},s=0,c=Object.entries(r);s<c.length;s++)i();return a},mapSpecificRules:"Single region, one house per space: every building space holds just one house at its printed building cost (10–40 Elektro). The game runs only in Step 1 until the end. Connections: your first house may be any empty space (pay only its building cost); a space directly adjacent to your network costs only its building cost; otherwise pay a flat 5 Elektro for each space you transit through (blocked spaces, or spaces you choose not to connect) plus the building cost of the target space. Uranium is used. With fewer players, some spaces are blocked at setup (4 players block 14 spaces; 2–3 players block 28). In the physical game the players mutually choose which spaces to block; here the system selects them automatically for your convenience. If you buy the discounted power plant you may purchase another power plant during the same phase. The game ends when a player has connected 18 spaces (17 for 3–4 players, 15 for 5, 14 for 6)."};(function(e){e["Pink"]="pink",e["Green"]="green",e["Orange"]="orange",e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown"})(In||(In={})),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"}(Un||(Un={}));var Yn,Vn,Jn={name:"Middle East",cities:[{name:Un.Mashhad,region:In.Pink,x:859,y:327},{name:Un.Corgan,region:In.Pink,x:734,y:287},{name:Un.Tehran,region:In.Pink,x:633,y:342},{name:Un.Tabriz,region:In.Pink,x:450,y:251},{name:Un.Mosul,region:In.Pink,x:352,y:307},{name:Un.Kermanshah,region:In.Pink,x:503,y:391},{name:Un.Baghdad,region:In.Pink,x:393,y:406},{name:Un.Isfahan,region:In.Green,x:621,y:436},{name:Un.Yazo,region:In.Green,x:720,y:472},{name:Un.Zahedan,region:In.Green,x:896,y:547},{name:Un.Kerman,region:In.Green,x:784,y:534},{name:Un.Shiraz,region:In.Green,x:651,y:557},{name:Un.Bandarabbas,region:In.Green,x:756,y:629},{name:Un.Chabahar,region:In.Green,x:898,y:687},{name:Un.Dubai,region:In.Orange,x:752,y:690},{name:Un.Muscat,region:In.Orange,x:828,y:773},{name:Un.Abudhari,region:In.Orange,x:692,y:747},{name:Un.Alain,region:In.Orange,x:715,y:812},{name:Un.Salalah,region:In.Orange,x:694,y:981},{name:Un.Doha,region:In.Orange,x:596,y:713},{name:Un.Manama,region:In.Orange,x:532,y:652},{name:Un.Ahvaz,region:In.Yellow,x:555,y:499},{name:Un.Basra,region:In.Yellow,x:452,y:519},{name:Un.Najaf,region:In.Yellow,x:356,y:478},{name:Un.Kuwaitcity,region:In.Yellow,x:500,y:580},{name:Un.Buraydah,region:In.Yellow,x:360,y:674},{name:Un.Riyadh,region:In.Yellow,x:443,y:741},{name:Un.Medina,region:In.Yellow,x:264,y:738},{name:Un.Alhasahah,region:In.Red,x:248,y:300},{name:Un.Aleppo,region:In.Red,x:132,y:315},{name:Un.Damascus,region:In.Red,x:186,y:433},{name:Un.Amman,region:In.Red,x:171,y:493},{name:Un.Beirut,region:In.Red,x:94,y:401},{name:Un.Jerusalem,region:In.Red,x:76,y:481},{name:Un.Aqaba,region:In.Red,x:103,y:563},{name:Un.Mukalla,region:In.Brown,x:555,y:1059},{name:Un.Sanaa,region:In.Brown,x:426,y:1018},{name:Un.Aden,region:In.Brown,x:431,y:1105},{name:Un.Alhudaydah,region:In.Brown,x:317,y:1057},{name:Un.Abha,region:In.Brown,x:306,y:938},{name:Un.Mecca,region:In.Brown,x:280,y:850},{name:Un.Jeddah,region:In.Brown,x:190,y:800}],connections:[{nodes:[Un.Tabriz,Un.Tehran],cost:13},{nodes:[Un.Tehran,Un.Corgan],cost:9},{nodes:[Un.Corgan,Un.Mashhad],cost:12},{nodes:[Un.Mashhad,Un.Zahedan],cost:20},{nodes:[Un.Zahedan,Un.Kerman],cost:10},{nodes:[Un.Kerman,Un.Yazo],cost:7},{nodes:[Un.Yazo,Un.Mashhad],cost:18},{nodes:[Un.Mashhad,Un.Tehran],cost:19},{nodes:[Un.Tehran,Un.Yazo],cost:12},{nodes:[Un.Yazo,Un.Shiraz],cost:9},{nodes:[Un.Shiraz,Un.Kerman],cost:11},{nodes:[Un.Yazo,Un.Isfahan],cost:7},{nodes:[Un.Isfahan,Un.Shiraz],cost:10},{nodes:[Un.Isfahan,Un.Tehran],cost:9},{nodes:[Un.Tehran,Un.Kermanshah],cost:13},{nodes:[Un.Kermanshah,Un.Isfahan],cost:13},{nodes:[Un.Isfahan,Un.Ahvaz],cost:11},{nodes:[Un.Ahvaz,Un.Shiraz],cost:11},{nodes:[Un.Ahvaz,Un.Kermanshah],cost:11},{nodes:[Un.Kermanshah,Un.Tabriz],cost:13},{nodes:[Un.Tabriz,Un.Mosul],cost:13},{nodes:[Un.Mosul,Un.Baghdad],cost:8},{nodes:[Un.Baghdad,Un.Kermanshah],cost:8},{nodes:[Un.Basra,Un.Ahvaz],cost:3},{nodes:[Un.Ahvaz,Un.Kuwaitcity],cost:7},{nodes:[Un.Kuwaitcity,Un.Basra],cost:5},{nodes:[Un.Basra,Un.Najaf],cost:10},{nodes:[Un.Najaf,Un.Baghdad],cost:4},{nodes:[Un.Baghdad,Un.Basra],cost:12},{nodes:[Un.Alhasahah,Un.Mosul],cost:4},{nodes:[Un.Alhasahah,Un.Baghdad],cost:11},{nodes:[Un.Baghdad,Un.Damascus],cost:16},{nodes:[Un.Damascus,Un.Najaf],cost:15},{nodes:[Un.Alhasahah,Un.Damascus],cost:14},{nodes:[Un.Damascus,Un.Amman],cost:4},{nodes:[Un.Amman,Un.Aqaba],cost:7},{nodes:[Un.Aqaba,Un.Jerusalem],cost:6},{nodes:[Un.Jerusalem,Un.Amman],cost:3},{nodes:[Un.Jerusalem,Un.Beirut],cost:6},{nodes:[Un.Beirut,Un.Damascus],cost:4},{nodes:[Un.Damascus,Un.Aleppo],cost:8},{nodes:[Un.Aleppo,Un.Beirut],cost:9},{nodes:[Un.Aleppo,Un.Alhasahah],cost:7},{nodes:[Un.Baghdad,Un.Tabriz],cost:18},{nodes:[Un.Zahedan,Un.Chabahar],cost:13},{nodes:[Un.Zahedan,Un.Bandarabbas],cost:14},{nodes:[Un.Bandarabbas,Un.Kerman],cost:13},{nodes:[Un.Shiraz,Un.Bandarabbas],cost:14},{nodes:[Un.Bandarabbas,Un.Chabahar],cost:15},{nodes:[Un.Kuwaitcity,Un.Manama],cost:12},{nodes:[Un.Manama,Un.Doha],cost:6},{nodes:[Un.Doha,Un.Abudhari],cost:9},{nodes:[Un.Abudhari,Un.Dubai],cost:2},{nodes:[Un.Dubai,Un.Muscat],cost:9},{nodes:[Un.Muscat,Un.Alain],cost:7},{nodes:[Un.Alain,Un.Abudhari],cost:3},{nodes:[Un.Alain,Un.Dubai],cost:3},{nodes:[Un.Riyadh,Un.Alain],cost:23},{nodes:[Un.Doha,Un.Riyadh],cost:12},{nodes:[Un.Riyadh,Un.Manama],cost:10},{nodes:[Un.Riyadh,Un.Kuwaitcity],cost:12},{nodes:[Un.Kuwaitcity,Un.Buraydah],cost:12},{nodes:[Un.Buraydah,Un.Riyadh],cost:7},{nodes:[Un.Buraydah,Un.Medina],cost:10},{nodes:[Un.Medina,Un.Riyadh],cost:15},{nodes:[Un.Buraydah,Un.Najaf],cost:14},{nodes:[Un.Aqaba,Un.Jeddah],cost:23},{nodes:[Un.Aqaba,Un.Medina],cost:17},{nodes:[Un.Medina,Un.Jeddah],cost:7},{nodes:[Un.Jeddah,Un.Mecca],cost:1},{nodes:[Un.Mecca,Un.Medina],cost:7},{nodes:[Un.Mecca,Un.Riyadh],cost:17},{nodes:[Un.Riyadh,Un.Abha],cost:19},{nodes:[Un.Abha,Un.Mecca],cost:12},{nodes:[Un.Salalah,Un.Muscat],cost:21},{nodes:[Un.Alain,Un.Salalah],cost:18},{nodes:[Un.Salalah,Un.Mukalla],cost:15},{nodes:[Un.Salalah,Un.Sanaa],cost:25},{nodes:[Un.Sanaa,Un.Mukalla],cost:14},{nodes:[Un.Mukalla,Un.Aden],cost:13},{nodes:[Un.Aden,Un.Alhudaydah],cost:9},{nodes:[Un.Alhudaydah,Un.Abha],cost:10},{nodes:[Un.Abha,Un.Sanaa],cost:11},{nodes:[Un.Sanaa,Un.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"})(Yn||(Yn={})),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"}(Vn||(Vn={}));var $n,qn,Zn,Xn={name:"North America",cities:[{name:Vn.Edmonton,region:Yn.Pink,x:325,y:71},{name:Vn.Calgary,region:Yn.Pink,x:250,y:190},{name:Vn.Vancouver,region:Yn.Pink,x:114,y:266},{name:Vn.Seattle,region:Yn.Pink,x:100,y:387},{name:Vn.Regina,region:Yn.Pink,x:536,y:277},{name:Vn.Winnipeg,region:Yn.Pink,x:830,y:272},{name:Vn.Minneapolis,region:Yn.Pink,x:907,y:486},{name:Vn.Portland,region:Yn.Brown,x:122,y:516},{name:Vn.SanFrancisco,region:Yn.Brown,x:123,y:697},{name:Vn.LosAngeles,region:Yn.Brown,x:160,y:911},{name:Vn.SanDiego,region:Yn.Brown,x:223,y:1007},{name:Vn.SaltLakeCity,region:Yn.Brown,x:380,y:555},{name:Vn.LasVegas,region:Yn.Brown,x:322,y:760},{name:Vn.Denver,region:Yn.Brown,x:569,y:694},{name:Vn.Albuquerque,region:Yn.Orange,x:539,y:941},{name:Vn.Juarez,region:Yn.Orange,x:558,y:1043},{name:Vn.Chihuahua,region:Yn.Orange,x:577,y:1183},{name:Vn.Monterrey,region:Yn.Orange,x:791,y:1292},{name:Vn.Guadalajara,region:Yn.Orange,x:715,y:1391},{name:Vn.MexicoCityN,region:Yn.Orange,x:913,y:1335},{name:Vn.MexicoCityS,region:Yn.Orange,x:913,y:1425},{name:Vn.SanAntonio,region:Yn.Green,x:767,y:1172},{name:Vn.DallasFortWorth,region:Yn.Green,x:850,y:1020},{name:Vn.Houston,region:Yn.Green,x:940,y:1145},{name:Vn.NewOrleans,region:Yn.Green,x:1126,y:1095},{name:Vn.Atlanta,region:Yn.Green,x:1318,y:1021},{name:Vn.Jacksonville,region:Yn.Green,x:1398,y:1109},{name:Vn.Miami,region:Yn.Green,x:1398,y:1235},{name:Vn.Milwaukee,region:Yn.Blue,x:1206,y:414},{name:Vn.Chicago,region:Yn.Blue,x:1121,y:531},{name:Vn.KansasCity,region:Yn.Blue,x:825,y:720},{name:Vn.StLouis,region:Yn.Blue,x:1047,y:768},{name:Vn.Indianapolis,region:Yn.Blue,x:1206,y:694},{name:Vn.OklahomaCity,region:Yn.Blue,x:800,y:870},{name:Vn.Memphis,region:Yn.Blue,x:1099,y:938},{name:Vn.Toronto,region:Yn.Yellow,x:1488,y:513},{name:Vn.Detroit,region:Yn.Yellow,x:1390,y:590},{name:Vn.Pittsburgh,region:Yn.Yellow,x:1524,y:659},{name:Vn.Columbus,region:Yn.Yellow,x:1398,y:733},{name:Vn.Nashville,region:Yn.Yellow,x:1233,y:826},{name:Vn.Washington,region:Yn.Yellow,x:1554,y:829},{name:Vn.Charlotte,region:Yn.Yellow,x:1480,y:965},{name:Vn.Quebec,region:Yn.Red,x:1911,y:354},{name:Vn.Ottawa,region:Yn.Red,x:1653,y:458},{name:Vn.Montreal,region:Yn.Red,x:1875,y:461},{name:Vn.NewYorkN,region:Yn.Red,x:1727,y:561},{name:Vn.NewYorkS,region:Yn.Red,x:1727,y:637},{name:Vn.Boston,region:Yn.Red,x:1928,y:579},{name:Vn.Philadelphia,region:Yn.Red,x:1724,y:755}],connections:[{nodes:[Vn.Edmonton,Vn.Calgary],cost:5},{nodes:[Vn.Calgary,Vn.Vancouver],cost:16},{nodes:[Vn.Vancouver,Vn.Seattle],cost:4},{nodes:[Vn.Edmonton,Vn.Regina],cost:15},{nodes:[Vn.Calgary,Vn.Regina],cost:14},{nodes:[Vn.Vancouver,Vn.Regina],cost:28},{nodes:[Vn.Regina,Vn.Winnipeg],cost:11},{nodes:[Vn.Winnipeg,Vn.Minneapolis],cost:13},{nodes:[Vn.Seattle,Vn.Portland],cost:5},{nodes:[Vn.Regina,Vn.SaltLakeCity],cost:29},{nodes:[Vn.Regina,Vn.Denver],cost:24},{nodes:[Vn.Winnipeg,Vn.Denver],cost:26},{nodes:[Vn.Minneapolis,Vn.Denver],cost:23},{nodes:[Vn.Portland,Vn.SanFrancisco],cost:20},{nodes:[Vn.SanFrancisco,Vn.LosAngeles],cost:12},{nodes:[Vn.LosAngeles,Vn.SanDiego],cost:3},{nodes:[Vn.Portland,Vn.SaltLakeCity],cost:22},{nodes:[Vn.SanFrancisco,Vn.SaltLakeCity],cost:22},{nodes:[Vn.SanFrancisco,Vn.LasVegas],cost:16},{nodes:[Vn.SaltLakeCity,Vn.LasVegas],cost:14},{nodes:[Vn.LasVegas,Vn.LosAngeles],cost:8},{nodes:[Vn.SaltLakeCity,Vn.Denver],cost:14},{nodes:[Vn.LasVegas,Vn.Denver],cost:25},{nodes:[Vn.LosAngeles,Vn.Albuquerque],cost:25},{nodes:[Vn.LasVegas,Vn.Albuquerque],cost:18},{nodes:[Vn.Denver,Vn.Albuquerque],cost:12},{nodes:[Vn.SanDiego,Vn.Juarez],cost:22},{nodes:[Vn.Albuquerque,Vn.Juarez],cost:9},{nodes:[Vn.Juarez,Vn.Chihuahua],cost:8},{nodes:[Vn.Chihuahua,Vn.Monterrey],cost:14},{nodes:[Vn.Chihuahua,Vn.Guadalajara],cost:23},{nodes:[Vn.Monterrey,Vn.Guadalajara],cost:16},{nodes:[Vn.Monterrey,Vn.MexicoCityS],cost:17},{nodes:[Vn.Guadalajara,Vn.MexicoCityS],cost:10},{nodes:[Vn.MexicoCityN,Vn.MexicoCityS],cost:0},{nodes:[Vn.Albuquerque,Vn.OklahomaCity],cost:18},{nodes:[Vn.Juarez,Vn.DallasFortWorth],cost:19},{nodes:[Vn.Juarez,Vn.SanAntonio],cost:18},{nodes:[Vn.Chihuahua,Vn.SanAntonio],cost:16},{nodes:[Vn.Monterrey,Vn.SanAntonio],cost:10},{nodes:[Vn.Milwaukee,Vn.Chicago],cost:3},{nodes:[Vn.Chicago,Vn.KansasCity],cost:16},{nodes:[Vn.Chicago,Vn.StLouis],cost:9},{nodes:[Vn.Chicago,Vn.Indianapolis],cost:6},{nodes:[Vn.KansasCity,Vn.StLouis],cost:8},{nodes:[Vn.StLouis,Vn.Indianapolis],cost:8},{nodes:[Vn.KansasCity,Vn.OklahomaCity],cost:10},{nodes:[Vn.KansasCity,Vn.Memphis],cost:14},{nodes:[Vn.StLouis,Vn.Memphis],cost:9},{nodes:[Vn.OklahomaCity,Vn.Memphis],cost:15},{nodes:[Vn.Milwaukee,Vn.Minneapolis],cost:10},{nodes:[Vn.KansasCity,Vn.Minneapolis],cost:14},{nodes:[Vn.KansasCity,Vn.Denver],cost:19},{nodes:[Vn.OklahomaCity,Vn.Denver],cost:17},{nodes:[Vn.OklahomaCity,Vn.DallasFortWorth],cost:7},{nodes:[Vn.Memphis,Vn.DallasFortWorth],cost:15},{nodes:[Vn.Memphis,Vn.NewOrleans],cost:14},{nodes:[Vn.Memphis,Vn.Atlanta],cost:12},{nodes:[Vn.DallasFortWorth,Vn.SanAntonio],cost:9},{nodes:[Vn.DallasFortWorth,Vn.Houston],cost:8},{nodes:[Vn.DallasFortWorth,Vn.NewOrleans],cost:16},{nodes:[Vn.SanAntonio,Vn.Houston],cost:6},{nodes:[Vn.Houston,Vn.NewOrleans],cost:12},{nodes:[Vn.NewOrleans,Vn.Atlanta],cost:16},{nodes:[Vn.NewOrleans,Vn.Jacksonville],cost:20},{nodes:[Vn.Atlanta,Vn.Jacksonville],cost:10},{nodes:[Vn.Jacksonville,Vn.Miami],cost:12},{nodes:[Vn.Atlanta,Vn.Nashville],cost:9},{nodes:[Vn.Atlanta,Vn.Charlotte],cost:8},{nodes:[Vn.Jacksonville,Vn.Charlotte],cost:12},{nodes:[Vn.Toronto,Vn.Detroit],cost:8},{nodes:[Vn.Toronto,Vn.Pittsburgh],cost:11},{nodes:[Vn.Detroit,Vn.Columbus],cost:7},{nodes:[Vn.Columbus,Vn.Pittsburgh],cost:6},{nodes:[Vn.Nashville,Vn.Columbus],cost:15},{nodes:[Vn.Nashville,Vn.Washington],cost:22},{nodes:[Vn.Nashville,Vn.Charlotte],cost:12},{nodes:[Vn.Columbus,Vn.Washington],cost:12},{nodes:[Vn.Washington,Vn.Pittsburgh],cost:7},{nodes:[Vn.Washington,Vn.Charlotte],cost:12},{nodes:[Vn.Detroit,Vn.Chicago],cost:10},{nodes:[Vn.Columbus,Vn.Chicago],cost:10},{nodes:[Vn.Columbus,Vn.Indianapolis],cost:7},{nodes:[Vn.Nashville,Vn.Indianapolis],cost:9},{nodes:[Vn.Nashville,Vn.StLouis],cost:9},{nodes:[Vn.Nashville,Vn.Memphis],cost:7},{nodes:[Vn.Toronto,Vn.Ottawa],cost:8},{nodes:[Vn.Toronto,Vn.NewYorkS],cost:14},{nodes:[Vn.Pittsburgh,Vn.NewYorkS],cost:11},{nodes:[Vn.Pittsburgh,Vn.Philadelphia],cost:9},{nodes:[Vn.Washington,Vn.Philadelphia],cost:5},{nodes:[Vn.Quebec,Vn.Montreal],cost:5},{nodes:[Vn.Montreal,Vn.Boston],cost:9},{nodes:[Vn.Ottawa,Vn.Montreal],cost:3},{nodes:[Vn.Ottawa,Vn.NewYorkS],cost:13},{nodes:[Vn.Montreal,Vn.NewYorkS],cost:12},{nodes:[Vn.NewYorkS,Vn.Boston],cost:7},{nodes:[Vn.NewYorkS,Vn.Philadelphia],cost:3},{nodes:[Vn.NewYorkN,Vn.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"})(qn||(qn={})),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["Riga"]="Riga",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"}(Zn||(Zn={}));var Qn,et,nt={name:"Northern Europe",cities:[{name:Zn.Oulu,region:qn.Brown,x:514,y:376},{name:Zn.Kuopid,region:qn.Brown,x:551,y:474},{name:Zn.Tampere,region:qn.Brown,x:492,y:544},{name:Zn.Helsinki,region:qn.Brown,x:530,y:602},{name:Zn.Espoo,region:qn.Brown,x:457,y:603},{name:Zn.Pori,region:qn.Brown,x:400,y:526},{name:Zn.Turku,region:qn.Brown,x:409,y:593},{name:Zn.Uppsala,region:qn.Yellow,x:350,y:585},{name:Zn.Stockholm,region:qn.Yellow,x:380,y:660},{name:Zn.Vasteras,region:qn.Yellow,x:295,y:576},{name:Zn.Drebro,region:qn.Yellow,x:295,y:628},{name:Zn.Sundsvall,region:qn.Yellow,x:332,y:506},{name:Zn.Lulea,region:qn.Yellow,x:423,y:345},{name:Zn.Ostersund,region:qn.Yellow,x:272,y:462},{name:Zn.Tallinn,region:qn.Pink,x:475,y:656},{name:Zn.Tartu,region:qn.Pink,x:544,y:689},{name:Zn.Daugavpils,region:qn.Pink,x:547,y:771},{name:Zn.Vilnius,region:qn.Pink,x:520,y:819},{name:Zn.Kaunas,region:qn.Pink,x:458,y:811},{name:Zn.Riga,region:qn.Pink,x:472,y:734},{name:Zn.Klaipeda,region:qn.Pink,x:411,y:784},{name:Zn.Karlstad,region:qn.Purple,x:246,y:629},{name:Zn.Linkopinc,region:qn.Purple,x:309,y:676},{name:Zn.Jonkoping,region:qn.Purple,x:285,y:712},{name:Zn.Visby,region:qn.Purple,x:364,y:717},{name:Zn.Kristianstad,region:qn.Purple,x:330,y:750},{name:Zn.Malmo,region:qn.Purple,x:287,y:787},{name:Zn.Goteborg,region:qn.Purple,x:231,y:700},{name:Zn.Aalborg,region:qn.Orange,x:177,y:717},{name:Zn.Aarhus,region:qn.Orange,x:195,y:758},{name:Zn.Kobenhavn,region:qn.Orange,x:228,y:792},{name:Zn.Nykobingfalster,region:qn.Orange,x:238,y:842},{name:Zn.Ringkobing,region:qn.Orange,x:120,y:733},{name:Zn.Esbjerg,region:qn.Orange,x:104,y:787},{name:Zn.Odense,region:qn.Orange,x:148,y:824},{name:Zn.Tromso,region:qn.Red,x:371,y:122},{name:Zn.Bood,region:qn.Red,x:276,y:254},{name:Zn.Trondheim,region:qn.Red,x:173,y:450},{name:Zn.Oslo,region:qn.Red,x:176,y:606},{name:Zn.Arendal,region:qn.Red,x:145,y:651},{name:Zn.Bergen,region:qn.Red,x:68,y:586},{name:Zn.Stavanger,region:qn.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:($n={},i($n,qn.Orange,[{number:19,type:ve.Oil,cost:2,citiesPowered:4},{number:26,type:ve.Oil,cost:3,citiesPowered:5}]),i($n,qn.Red,[{number:7,type:ve.Wind,cost:0,citiesPowered:1},{number:46,type:ve.Wind,cost:0,citiesPowered:6}]),i($n,qn.Purple,[{number:10,type:ve.Uranium,cost:2,citiesPowered:3},{number:39,type:ve.Wind,cost:0,citiesPowered:5}]),i($n,qn.Yellow,[{number:21,type:ve.Wind,cost:0,citiesPowered:2},{number:25,type:ve.Uranium,cost:1,citiesPowered:4}]),i($n,qn.Brown,[{number:32,type:ve.Garbage,cost:2,citiesPowered:6},{number:44,type:ve.Uranium,cost:1,citiesPowered:7}]),i($n,qn.Pink,[{number:18,type:ve.Oil,cost:1,citiesPowered:3},{number:22,type:ve.Wind,cost:0,citiesPowered:3}]),$n),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:[Zn.Bood,Zn.Tromso],cost:17},{nodes:[Zn.Tromso,Zn.Oulu],cost:25},{nodes:[Zn.Oulu,Zn.Kuopid],cost:10},{nodes:[Zn.Lulea,Zn.Tromso],cost:19},{nodes:[Zn.Lulea,Zn.Oulu],cost:13},{nodes:[Zn.Oulu,Zn.Pori],cost:15},{nodes:[Zn.Oulu,Zn.Tampere],cost:14},{nodes:[Zn.Sundsvall,Zn.Lulea],cost:16},{nodes:[Zn.Lulea,Zn.Bood],cost:16},{nodes:[Zn.Bood,Zn.Ostersund],cost:18},{nodes:[Zn.Ostersund,Zn.Lulea],cost:17},{nodes:[Zn.Lulea,Zn.Pori],cost:22},{nodes:[Zn.Pori,Zn.Sundsvall],cost:17},{nodes:[Zn.Bood,Zn.Trondheim],cost:21},{nodes:[Zn.Trondheim,Zn.Bergen],cost:17},{nodes:[Zn.Trondheim,Zn.Oslo],cost:17},{nodes:[Zn.Oslo,Zn.Ostersund],cost:18},{nodes:[Zn.Ostersund,Zn.Karlstad],cost:16},{nodes:[Zn.Bergen,Zn.Oslo],cost:15},{nodes:[Zn.Oslo,Zn.Stavanger],cost:11},{nodes:[Zn.Stavanger,Zn.Arendal],cost:8},{nodes:[Zn.Arendal,Zn.Oslo],cost:7},{nodes:[Zn.Bergen,Zn.Stavanger],cost:9},{nodes:[Zn.Arendal,Zn.Ringkobing],cost:19},{nodes:[Zn.Ringkobing,Zn.Esbjerg],cost:4},{nodes:[Zn.Esbjerg,Zn.Odense],cost:5},{nodes:[Zn.Odense,Zn.Nykobingfalster],cost:8},{nodes:[Zn.Arendal,Zn.Aalborg],cost:16},{nodes:[Zn.Arendal,Zn.Goteborg],cost:19},{nodes:[Zn.Goteborg,Zn.Oslo],cost:11},{nodes:[Zn.Oslo,Zn.Karlstad],cost:7},{nodes:[Zn.Karlstad,Zn.Goteborg],cost:9},{nodes:[Zn.Karlstad,Zn.Jonkoping],cost:9},{nodes:[Zn.Karlstad,Zn.Linkopinc],cost:7},{nodes:[Zn.Tampere,Zn.Kuopid],cost:10},{nodes:[Zn.Tampere,Zn.Pori],cost:4},{nodes:[Zn.Tampere,Zn.Turku],cost:5},{nodes:[Zn.Tampere,Zn.Espoo],cost:5},{nodes:[Zn.Tampere,Zn.Helsinki],cost:6},{nodes:[Zn.Helsinki,Zn.Espoo],cost:2},{nodes:[Zn.Espoo,Zn.Tallinn],cost:7},{nodes:[Zn.Tallinn,Zn.Helsinki],cost:7},{nodes:[Zn.Visby,Zn.Kristianstad],cost:13},{nodes:[Zn.Visby,Zn.Klaipeda],cost:19},{nodes:[Zn.Visby,Zn.Riga],cost:20},{nodes:[Zn.Riga,Zn.Tallinn],cost:11},{nodes:[Zn.Tallinn,Zn.Tartu],cost:5},{nodes:[Zn.Tartu,Zn.Daugavpils],cost:9},{nodes:[Zn.Riga,Zn.Tartu],cost:7},{nodes:[Zn.Daugavpils,Zn.Kaunas],cost:7},{nodes:[Zn.Kaunas,Zn.Vilnius],cost:3},{nodes:[Zn.Kaunas,Zn.Klaipeda],cost:7},{nodes:[Zn.Klaipeda,Zn.Riga],cost:8},{nodes:[Zn.Riga,Zn.Kaunas],cost:8},{nodes:[Zn.Riga,Zn.Daugavpils],cost:7},{nodes:[Zn.Daugavpils,Zn.Vilnius],cost:5},{nodes:[Zn.Vasteras,Zn.Sundsvall],cost:10},{nodes:[Zn.Sundsvall,Zn.Ostersund],cost:7},{nodes:[Zn.Uppsala,Zn.Stockholm],cost:2},{nodes:[Zn.Uppsala,Zn.Turku],cost:15},{nodes:[Zn.Uppsala,Zn.Pori],cost:17},{nodes:[Zn.Uppsala,Zn.Sundsvall],cost:11},{nodes:[Zn.Vasteras,Zn.Drebro],cost:5},{nodes:[Zn.Drebro,Zn.Linkopinc],cost:3},{nodes:[Zn.Linkopinc,Zn.Stockholm],cost:7},{nodes:[Zn.Visby,Zn.Stockholm],cost:12},{nodes:[Zn.Visby,Zn.Linkopinc],cost:9},{nodes:[Zn.Jonkoping,Zn.Malmo],cost:10},{nodes:[Zn.Jonkoping,Zn.Kristianstad],cost:8},{nodes:[Zn.Kristianstad,Zn.Malmo],cost:3},{nodes:[Zn.Malmo,Zn.Kobenhavn],cost:3},{nodes:[Zn.Kobenhavn,Zn.Nykobingfalster],cost:6},{nodes:[Zn.Odense,Zn.Aarhus],cost:7},{nodes:[Zn.Aarhus,Zn.Aalborg],cost:3},{nodes:[Zn.Aalborg,Zn.Goteborg],cost:11},{nodes:[Zn.Kobenhavn,Zn.Goteborg],cost:18},{nodes:[Zn.Goteborg,Zn.Jonkoping],cost:4},{nodes:[Zn.Trondheim,Zn.Ostersund],cost:9},{nodes:[Zn.Vasteras,Zn.Stockholm],cost:4},{nodes:[Zn.Esbjerg,Zn.Aarhus],cost:5},{nodes:[Zn.Jonkoping,Zn.Linkopinc],cost:5},{nodes:[Zn.Kobenhavn,Zn.Jonkoping],cost:12},{nodes:[Zn.Karlstad,Zn.Drebro],cost:4},{nodes:[Zn.Vasteras,Zn.Uppsala],cost:2},{nodes:[Zn.Odense,Zn.Kobenhavn],cost:7},{nodes:[Zn.Kobenhavn,Zn.Aarhus],cost:10},{nodes:[Zn.Ringkobing,Zn.Aalborg],cost:5},{nodes:[Zn.Linkopinc,Zn.Kristianstad],cost:9},{nodes:[Zn.Drebro,Zn.Stockholm],cost:7},{nodes:[Zn.Espoo,Zn.Turku],cost:4},{nodes:[Zn.Pori,Zn.Turku],cost:4}]};(function(e){e["Green"]="green",e["Brown"]="brown",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple"})(Qn||(Qn={})),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"}(et||(et={}));var tt,rt,ot={name:"Quebec",cities:[{name:et.Septiles,region:Qn.Green,x:3524,y:228},{name:et.Portcartier,region:Qn.Green,x:3328,y:370},{name:et.Baiecomeau,region:Qn.Green,x:3066,y:630},{name:et.Chicoutimi,region:Qn.Green,x:2392,y:898},{name:et.Alma,region:Qn.Green,x:2172,y:844},{name:et.Roberval,region:Qn.Green,x:1944,y:950},{name:et.Jonquiere,region:Qn.Green,x:2240,y:1052},{name:et.Gaspe,region:Qn.Brown,x:4014,y:808},{name:et.Steannedesmonts,region:Qn.Brown,x:3512,y:708},{name:et.Matane,region:Qn.Brown,x:3244,y:808},{name:et.Rimouski,region:Qn.Brown,x:2990,y:946},{name:et.Pointealacroix,region:Qn.Brown,x:3492,y:1094},{name:et.Riviereduloup,region:Qn.Brown,x:2780,y:1208},{name:et.Montmagny,region:Qn.Brown,x:2522,y:1534},{name:et.Stgeorges,region:Qn.Pink,x:2506,y:1836},{name:et.Sherbrooke,region:Qn.Pink,x:2242,y:2128},{name:et.Victoriaville,region:Qn.Pink,x:2178,y:1822},{name:et.Stsimeon,region:Qn.Pink,x:2576,y:1146},{name:et.Charlesbourg,region:Qn.Pink,x:2246,y:1434},{name:et.Quebec,region:Qn.Pink,x:2302,y:1536},{name:et.Beauport,region:Qn.Pink,x:2196,y:1524},{name:et.Granby,region:Qn.Red,x:1974,y:2160},{name:et.Sthyacinthe,region:Qn.Red,x:1796,y:2038},{name:et.Brossard,region:Qn.Red,x:1790,y:2296},{name:et.Valleyfield,region:Qn.Red,x:1576,y:2306},{name:et.Vaudreuildorion,region:Qn.Red,x:1414,y:2186},{name:et.Montreal,region:Qn.Red,x:1624,y:2052},{name:et.Pointeclaire,region:Qn.Red,x:1510,y:2060},{name:et.Shawinigan,region:Qn.Yellow,x:1864,y:1448},{name:et.Troisrivieres,region:Qn.Yellow,x:1918,y:1650},{name:et.Drummondville,region:Qn.Yellow,x:1984,y:1886},{name:et.Repentigny,region:Qn.Yellow,x:1696,y:1820},{name:et.Longueuil,region:Qn.Yellow,x:1598,y:1964},{name:et.Laval,region:Qn.Yellow,x:1512,y:1990},{name:et.Lachute,region:Qn.Yellow,x:1364,y:1944},{name:et.Amos,region:Qn.Purple,x:492,y:868},{name:et.Valdor,region:Qn.Purple,x:570,y:1098},{name:et.Rouynnoranda,region:Qn.Purple,x:236,y:1028},{name:et.Montlaurier,region:Qn.Purple,x:1180,y:1630},{name:et.Maniwaki,region:Qn.Purple,x:964,y:1760},{name:et.Gatineau,region:Qn.Purple,x:1076,y:2096},{name:et.Hull,region:Qn.Purple,x:862,y:2104}],connections:[{nodes:[et.Maniwaki,et.Montlaurier],cost:5},{nodes:[et.Maniwaki,et.Valdor],cost:24},{nodes:[et.Valdor,et.Amos],cost:8},{nodes:[et.Amos,et.Rouynnoranda],cost:9},{nodes:[et.Rouynnoranda,et.Valdor],cost:12},{nodes:[et.Hull,et.Maniwaki],cost:15},{nodes:[et.Hull,et.Gatineau],cost:0},{nodes:[et.Gatineau,et.Montlaurier],cost:16},{nodes:[et.Montlaurier,et.Lachute],cost:18},{nodes:[et.Shawinigan,et.Troisrivieres],cost:3},{nodes:[et.Troisrivieres,et.Drummondville],cost:9},{nodes:[et.Drummondville,et.Victoriaville],cost:6},{nodes:[et.Victoriaville,et.Stgeorges],cost:10},{nodes:[et.Stgeorges,et.Sherbrooke],cost:15},{nodes:[et.Sherbrooke,et.Granby],cost:8},{nodes:[et.Granby,et.Sthyacinthe],cost:4},{nodes:[et.Sthyacinthe,et.Drummondville],cost:6},{nodes:[et.Troisrivieres,et.Victoriaville],cost:9},{nodes:[et.Victoriaville,et.Sherbrooke],cost:9},{nodes:[et.Sherbrooke,et.Drummondville],cost:9},{nodes:[et.Sthyacinthe,et.Repentigny],cost:7},{nodes:[et.Sthyacinthe,et.Brossard],cost:5},{nodes:[et.Brossard,et.Valleyfield],cost:8},{nodes:[et.Valleyfield,et.Vaudreuildorion],cost:4},{nodes:[et.Gatineau,et.Lachute],cost:14},{nodes:[et.Montlaurier,et.Shawinigan],cost:28},{nodes:[et.Shawinigan,et.Beauport],cost:14},{nodes:[et.Beauport,et.Troisrivieres],cost:15},{nodes:[et.Troisrivieres,et.Repentigny],cost:13},{nodes:[et.Repentigny,et.Longueuil],cost:3},{nodes:[et.Laval,et.Lachute],cost:6},{nodes:[et.Vaudreuildorion,et.Pointeclaire],cost:3},{nodes:[et.Montreal,et.Brossard],cost:4},{nodes:[et.Laval,et.Longueuil],cost:0},{nodes:[et.Pointeclaire,et.Montreal],cost:0},{nodes:[et.Montreal,et.Longueuil],cost:0},{nodes:[et.Pointeclaire,et.Laval],cost:0},{nodes:[et.Beauport,et.Charlesbourg],cost:0},{nodes:[et.Charlesbourg,et.Quebec],cost:0},{nodes:[et.Quebec,et.Beauport],cost:0},{nodes:[et.Victoriaville,et.Beauport],cost:12},{nodes:[et.Quebec,et.Stgeorges],cost:12},{nodes:[et.Stgeorges,et.Montmagny],cost:12},{nodes:[et.Montmagny,et.Riviereduloup],cost:16},{nodes:[et.Jonquiere,et.Charlesbourg],cost:21},{nodes:[et.Montmagny,et.Quebec],cost:5},{nodes:[et.Stsimeon,et.Charlesbourg],cost:18},{nodes:[et.Drummondville,et.Granby],cost:4},{nodes:[et.Roberval,et.Shawinigan],cost:25},{nodes:[et.Jonquiere,et.Stsimeon],cost:16},{nodes:[et.Roberval,et.Jonquiere],cost:10},{nodes:[et.Jonquiere,et.Alma],cost:4},{nodes:[et.Alma,et.Chicoutimi],cost:4},{nodes:[et.Jonquiere,et.Chicoutimi],cost:0},{nodes:[et.Chicoutimi,et.Baiecomeau],cost:23},{nodes:[et.Stsimeon,et.Baiecomeau],cost:23},{nodes:[et.Baiecomeau,et.Portcartier],cost:16},{nodes:[et.Septiles,et.Portcartier],cost:6},{nodes:[et.Riviereduloup,et.Rimouski],cost:12},{nodes:[et.Rimouski,et.Matane],cost:11},{nodes:[et.Matane,et.Pointealacroix],cost:15},{nodes:[et.Matane,et.Steannedesmonts],cost:10},{nodes:[et.Pointealacroix,et.Steannedesmonts],cost:16},{nodes:[et.Steannedesmonts,et.Gaspe],cost:21},{nodes:[et.Gaspe,et.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"])($e);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=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)];var u=a.pop();a=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(s),a=Ne(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})),h=a.filter((function(e){return 18==e.number||22==e.number})),p=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=Ne(g,t()+"").slice(1),y=Ne(y,t()+"").slice(5)):3==e?(g=Ne(g,t()+"").slice(2),y=Ne(y,t()+"").slice(6)):4==e&&(g=Ne(g,t()+"").slice(1),y=Ne(y,t()+"").slice(3));var m=Ne(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(p).concat(y),a=Ne(a,t()+""),a=b.concat(h).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"})(tt||(tt={})),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"}(rt||(rt={}));var at,it,st={name:"Russia",cities:[{name:rt.Murmansk,region:tt.Green,x:1574,y:351},{name:rt.Arkhangelsk,region:tt.Green,x:1456,y:695},{name:rt.Syktyvkar,region:tt.Green,x:1669,y:1005},{name:rt.Kirov,region:tt.Green,x:1457,y:1172},{name:rt.Kazan,region:tt.Green,x:1378,y:1478},{name:rt.Cheboksary,region:tt.Green,x:1200,y:1328},{name:rt.Ulyanovsk,region:tt.Green,x:884,y:1448},{name:rt.Tula,region:tt.Pink,x:485,y:1077},{name:rt.Kaliningrad,region:tt.Pink,x:394,y:606},{name:rt.Ryazan,region:tt.Pink,x:793,y:1193},{name:rt.Nizhnynovgorod,region:tt.Pink,x:1129,y:1116},{name:rt.Moscow,region:tt.Pink,x:763,y:961},{name:rt.Stpetersburg,region:tt.Pink,x:883,y:597},{name:rt.Yaroslavl,region:tt.Pink,x:1018,y:915},{name:rt.Chita,region:tt.Red,x:4168,y:2048},{name:rt.Bratsk,region:tt.Red,x:3599,y:1808},{name:rt.Krasnoyarsk,region:tt.Red,x:3230,y:1930},{name:rt.Kemerovd,region:tt.Red,x:2953,y:1987},{name:rt.Novokuznetsk,region:tt.Red,x:3041,y:2159},{name:rt.Irkutsk,region:tt.Red,x:3721,y:2162},{name:rt.Ulanude,region:tt.Red,x:4030,y:2228},{name:rt.Norilsk,region:tt.Yellow,x:3001,y:856},{name:rt.Surgut,region:tt.Yellow,x:2348,y:1411},{name:rt.Tyumen,region:tt.Yellow,x:2060,y:1627},{name:rt.Tomsk,region:tt.Yellow,x:2773,y:1835},{name:rt.Novosibirsk,region:tt.Yellow,x:2647,y:2005},{name:rt.Barnaul,region:tt.Yellow,x:2662,y:2191},{name:rt.Omsk,region:tt.Yellow,x:2195,y:1957},{name:rt.Chelyabinsk,region:tt.Purple,x:1768,y:1865},{name:rt.Ufa,region:tt.Purple,x:1472,y:1907},{name:rt.Perm,region:tt.Purple,x:1688,y:1388},{name:rt.Yekaterinburg,region:tt.Purple,x:1757,y:1620},{name:rt.Orenburg,region:tt.Purple,x:1250,y:1997},{name:rt.Naberezhnyechelny,region:tt.Purple,x:1427,y:1709},{name:rt.Samara,region:tt.Purple,x:1132,y:1701},{name:rt.Astrakhan,region:tt.Brown,x:619,y:2092},{name:rt.Makhachkala,region:tt.Brown,x:317,y:2262},{name:rt.Saratov,region:tt.Brown,x:808,y:1661},{name:rt.Volgograd,region:tt.Brown,x:589,y:1795},{name:rt.Krasnodar,region:tt.Brown,x:260,y:1865},{name:rt.Rostov,region:tt.Brown,x:311,y:1658},{name:rt.Voronezh,region:tt.Brown,x:485,y:1409}],connections:[{nodes:[rt.Kaliningrad,rt.Stpetersburg],cost:15},{nodes:[rt.Stpetersburg,rt.Murmansk],cost:19},{nodes:[rt.Murmansk,rt.Arkhangelsk],cost:15},{nodes:[rt.Arkhangelsk,rt.Stpetersburg],cost:14},{nodes:[rt.Tula,rt.Kaliningrad],cost:20},{nodes:[rt.Tula,rt.Moscow],cost:3},{nodes:[rt.Moscow,rt.Ryazan],cost:3},{nodes:[rt.Ryazan,rt.Voronezh],cost:5},{nodes:[rt.Voronezh,rt.Tula],cost:5},{nodes:[rt.Tula,rt.Stpetersburg],cost:13},{nodes:[rt.Tula,rt.Ryazan],cost:0},{nodes:[rt.Stpetersburg,rt.Moscow],cost:10},{nodes:[rt.Moscow,rt.Yaroslavl],cost:3},{nodes:[rt.Yaroslavl,rt.Nizhnynovgorod],cost:4},{nodes:[rt.Nizhnynovgorod,rt.Moscow],cost:7},{nodes:[rt.Yaroslavl,rt.Stpetersburg],cost:9},{nodes:[rt.Yaroslavl,rt.Arkhangelsk],cost:12},{nodes:[rt.Arkhangelsk,rt.Syktyvkar],cost:10},{nodes:[rt.Syktyvkar,rt.Surgut],cost:21},{nodes:[rt.Perm,rt.Syktyvkar],cost:8},{nodes:[rt.Syktyvkar,rt.Kirov],cost:6},{nodes:[rt.Syktyvkar,rt.Nizhnynovgorod],cost:11},{nodes:[rt.Nizhnynovgorod,rt.Arkhangelsk],cost:15},{nodes:[rt.Nizhnynovgorod,rt.Cheboksary],cost:3},{nodes:[rt.Cheboksary,rt.Ulyanovsk],cost:4},{nodes:[rt.Ulyanovsk,rt.Voronezh],cost:11},{nodes:[rt.Voronezh,rt.Volgograd],cost:8},{nodes:[rt.Volgograd,rt.Saratov],cost:6},{nodes:[rt.Saratov,rt.Samara],cost:5},{nodes:[rt.Samara,rt.Ulyanovsk],cost:3},{nodes:[rt.Ulyanovsk,rt.Kazan],cost:3},{nodes:[rt.Kazan,rt.Samara],cost:4},{nodes:[rt.Samara,rt.Naberezhnyechelny],cost:5},{nodes:[rt.Cheboksary,rt.Kazan],cost:2},{nodes:[rt.Cheboksary,rt.Kirov],cost:5},{nodes:[rt.Kirov,rt.Kazan],cost:5},{nodes:[rt.Kazan,rt.Perm],cost:8},{nodes:[rt.Kazan,rt.Naberezhnyechelny],cost:3},{nodes:[rt.Naberezhnyechelny,rt.Ufa],cost:4},{nodes:[rt.Ufa,rt.Orenburg],cost:6},{nodes:[rt.Orenburg,rt.Samara],cost:6},{nodes:[rt.Orenburg,rt.Naberezhnyechelny],cost:7},{nodes:[rt.Ufa,rt.Chelyabinsk],cost:8},{nodes:[rt.Chelyabinsk,rt.Yekaterinburg],cost:3},{nodes:[rt.Yekaterinburg,rt.Perm],cost:5},{nodes:[rt.Perm,rt.Kirov],cost:6},{nodes:[rt.Chelyabinsk,rt.Tyumen],cost:5},{nodes:[rt.Tyumen,rt.Surgut],cost:10},{nodes:[rt.Syktyvkar,rt.Tyumen],cost:17},{nodes:[rt.Tyumen,rt.Yekaterinburg],cost:5},{nodes:[rt.Chelyabinsk,rt.Omsk],cost:13},{nodes:[rt.Omsk,rt.Tyumen],cost:9},{nodes:[rt.Tyumen,rt.Tomsk],cost:19},{nodes:[rt.Tomsk,rt.Surgut],cost:15},{nodes:[rt.Tomsk,rt.Novosibirsk],cost:4},{nodes:[rt.Novosibirsk,rt.Barnaul],cost:4},{nodes:[rt.Barnaul,rt.Omsk],cost:11},{nodes:[rt.Omsk,rt.Novosibirsk],cost:10},{nodes:[rt.Omsk,rt.Tomsk],cost:12},{nodes:[rt.Rostov,rt.Krasnodar],cost:4},{nodes:[rt.Krasnodar,rt.Volgograd],cost:9},{nodes:[rt.Volgograd,rt.Astrakhan],cost:6},{nodes:[rt.Krasnodar,rt.Makhachkala],cost:14},{nodes:[rt.Makhachkala,rt.Astrakhan],cost:8},{nodes:[rt.Makhachkala,rt.Volgograd],cost:11},{nodes:[rt.Rostov,rt.Volgograd],cost:7},{nodes:[rt.Ryazan,rt.Ulyanovsk],cost:9},{nodes:[rt.Ulyanovsk,rt.Saratov],cost:6},{nodes:[rt.Saratov,rt.Voronezh],cost:8},{nodes:[rt.Rostov,rt.Voronezh],cost:9},{nodes:[rt.Naberezhnyechelny,rt.Perm],cost:6},{nodes:[rt.Naberezhnyechelny,rt.Yekaterinburg],cost:8},{nodes:[rt.Ufa,rt.Yekaterinburg],cost:6},{nodes:[rt.Chita,rt.Ulanude],cost:6},{nodes:[rt.Ulanude,rt.Irkutsk],cost:6},{nodes:[rt.Irkutsk,rt.Novokuznetsk],cost:21},{nodes:[rt.Novokuznetsk,rt.Kemerovd],cost:3},{nodes:[rt.Kemerovd,rt.Tomsk],cost:3},{nodes:[rt.Novosibirsk,rt.Novokuznetsk],cost:5},{nodes:[rt.Novosibirsk,rt.Kemerovd],cost:4},{nodes:[rt.Novokuznetsk,rt.Barnaul],cost:6},{nodes:[rt.Kemerovd,rt.Krasnoyarsk],cost:7},{nodes:[rt.Krasnoyarsk,rt.Novokuznetsk],cost:7},{nodes:[rt.Krasnoyarsk,rt.Irkutsk],cost:17},{nodes:[rt.Krasnoyarsk,rt.Bratsk],cost:10},{nodes:[rt.Bratsk,rt.Tomsk],cost:17},{nodes:[rt.Bratsk,rt.Irkutsk],cost:10},{nodes:[rt.Bratsk,rt.Ulanude],cost:14},{nodes:[rt.Tomsk,rt.Norilsk],cost:24},{nodes:[rt.Norilsk,rt.Bratsk],cost:29},{nodes:[rt.Norilsk,rt.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"])($e),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=sr(10),c=sr(11),u=sr(13),l=r.filter((function(e){return 12==e.number||e.number>=15})),d=Ne(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=Ne(f,t()+""),r=[u].concat(f,d.slice(3),i)}else{var h=r.filter((function(e){return e.number<=15&&6!=e.number&&14!=e.number})),p=Ne(h,t()+""),g=r.filter((function(e){return e.number>=16})),y=Ne(g,t()+"");2==e?y=y.slice(6):3==e?y=y.slice(8):4==e&&(y=y.slice(4));var m=p.slice(0,6),v=p.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"})(at||(at={})),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"}(it||(it={}));var ct,ut,lt={name:"South Africa",cities:[{name:it.Zimbabwe,region:at.Orange,x:903,y:50,singleOccupancy:!0},{name:it.Musina,region:at.Orange,x:874,y:134},{name:it.Botswana,region:at.Orange,x:560,y:187,singleOccupancy:!0},{name:it.Polokwane,region:at.Orange,x:802,y:189},{name:it.PretoriaN,region:at.Orange,x:759,y:261},{name:it.PretoriaS,region:at.Orange,x:759,y:291},{name:it.Rustenburg,region:at.Orange,x:632,y:232},{name:it.Mozambique,region:at.Green,x:1011,y:170,singleOccupancy:!0},{name:it.Mbombela,region:at.Green,x:891,y:275},{name:it.Eswatini,region:at.Green,x:926,y:351,singleOccupancy:!0},{name:it.Germiston,region:at.Green,x:836,y:351},{name:it.JohannesburgN,region:at.Green,x:753,y:343},{name:it.JohannesburgS,region:at.Green,x:754,y:371},{name:it.Ladysmith,region:at.Green,x:823,y:456},{name:it.Newcastle,region:at.Yellow,x:957,y:478},{name:it.Pietermaritzburg,region:at.Yellow,x:851,y:511},{name:it.DurbanN,region:at.Yellow,x:894,y:563},{name:it.DurbanS,region:at.Yellow,x:893,y:592},{name:it.Mthatha,region:at.Yellow,x:791,y:663},{name:it.Lesotho,region:at.Yellow,x:759,y:523,singleOccupancy:!0},{name:it.Bloemfontein,region:at.Yellow,x:656,y:509},{name:it.Klerksdorp,region:at.Brown,x:660,y:362},{name:it.Welkom,region:at.Brown,x:652,y:431},{name:it.Kuruman,region:at.Brown,x:499,y:386},{name:it.Kimberly,region:at.Brown,x:564,y:496},{name:it.Upington,region:at.Brown,x:378,y:453},{name:it.Springbok,region:at.Brown,x:211,y:530},{name:it.Namibia,region:at.Brown,x:189,y:311,singleOccupancy:!0},{name:it.DeAar,region:at.Red,x:539,y:665},{name:it.BeaufortWest,region:at.Red,x:427,y:705},{name:it.EastLondon,region:at.Red,x:722,y:750},{name:it.PortElizabeth,region:at.Red,x:600,y:811},{name:it.George,region:at.Red,x:439,y:811},{name:it.CapeTownN,region:at.Red,x:233,y:783},{name:it.CapeTownS,region:at.Red,x:231,y:812}],connections:[{nodes:[it.Springbok,it.Namibia],cost:30},{nodes:[it.Bloemfontein,it.Lesotho],cost:30},{nodes:[it.Germiston,it.Eswatini],cost:30},{nodes:[it.Mbombela,it.Mozambique],cost:30},{nodes:[it.Botswana,it.Rustenburg],cost:30},{nodes:[it.Zimbabwe,it.Musina],cost:30},{nodes:[it.CapeTownS,it.CapeTownN],cost:0},{nodes:[it.CapeTownS,it.George],cost:16},{nodes:[it.George,it.PortElizabeth],cost:12},{nodes:[it.PortElizabeth,it.EastLondon],cost:13},{nodes:[it.EastLondon,it.Mthatha],cost:8},{nodes:[it.Mthatha,it.DurbanS],cost:13},{nodes:[it.DurbanS,it.DurbanN],cost:0},{nodes:[it.DurbanN,it.Pietermaritzburg],cost:3},{nodes:[it.DurbanN,it.Newcastle],cost:9},{nodes:[it.Newcastle,it.Pietermaritzburg],cost:9},{nodes:[it.Pietermaritzburg,it.Ladysmith],cost:5},{nodes:[it.Ladysmith,it.Newcastle],cost:10},{nodes:[it.Bloemfontein,it.Mthatha],cost:18},{nodes:[it.Bloemfontein,it.EastLondon],cost:22},{nodes:[it.EastLondon,it.DeAar],cost:22},{nodes:[it.DeAar,it.PortElizabeth],cost:18},{nodes:[it.George,it.DeAar],cost:17},{nodes:[it.DeAar,it.BeaufortWest],cost:10},{nodes:[it.BeaufortWest,it.George],cost:8},{nodes:[it.BeaufortWest,it.CapeTownN],cost:22},{nodes:[it.CapeTownN,it.Springbok],cost:22},{nodes:[it.Springbok,it.BeaufortWest],cost:24},{nodes:[it.DeAar,it.Springbok],cost:26},{nodes:[it.Springbok,it.Upington],cost:16},{nodes:[it.Upington,it.DeAar],cost:16},{nodes:[it.DeAar,it.Bloemfontein],cost:13},{nodes:[it.Bloemfontein,it.Kimberly],cost:6},{nodes:[it.Kimberly,it.DeAar],cost:10},{nodes:[it.Kimberly,it.Upington],cost:14},{nodes:[it.Kimberly,it.Welkom],cost:9},{nodes:[it.Welkom,it.Bloemfontein],cost:6},{nodes:[it.Bloemfontein,it.Ladysmith],cost:19},{nodes:[it.Mthatha,it.Pietermaritzburg],cost:12},{nodes:[it.Upington,it.Kuruman],cost:11},{nodes:[it.Musina,it.Polokwane],cost:8},{nodes:[it.Polokwane,it.PretoriaN],cost:11},{nodes:[it.PretoriaN,it.PretoriaS],cost:0},{nodes:[it.PretoriaS,it.JohannesburgN],cost:2},{nodes:[it.JohannesburgN,it.JohannesburgS],cost:0},{nodes:[it.JohannesburgS,it.Germiston],cost:1},{nodes:[it.JohannesburgN,it.Mbombela],cost:13},{nodes:[it.Mbombela,it.Germiston],cost:13},{nodes:[it.PretoriaN,it.Mbombela],cost:13},{nodes:[it.Mbombela,it.Polokwane],cost:10},{nodes:[it.Musina,it.Mbombela],cost:15},{nodes:[it.PretoriaN,it.Rustenburg],cost:4},{nodes:[it.Rustenburg,it.JohannesburgN],cost:4},{nodes:[it.JohannesburgN,it.Klerksdorp],cost:7},{nodes:[it.Klerksdorp,it.Welkom],cost:5},{nodes:[it.Bloemfontein,it.JohannesburgS],cost:16},{nodes:[it.Kuruman,it.Rustenburg],cost:18},{nodes:[it.Klerksdorp,it.Kuruman],cost:12},{nodes:[it.Kuruman,it.Kimberly],cost:8},{nodes:[it.JohannesburgS,it.Ladysmith],cost:13},{nodes:[it.Ladysmith,it.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"])($e).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=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(8),sr(9),sr(10),sr(11)]}else{var u=Ne(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=Ne(a,t()+""),2==e?(u=u.slice(1),a=Ne(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=Ne(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=Ne(a.slice(3).concat(u),t()+"")):a=Ne(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"})(ct||(ct={})),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"}(ut||(ut={}));var dt,ft,ht={name:"Spain & Portugal",cities:[{name:ut.Evora,region:ct.Yellow,x:890,y:1780},{name:ut.Faro,region:ct.Yellow,x:822,y:2348},{name:ut.Portimao,region:ct.Yellow,x:592,y:2218},{name:ut.Setubal,region:ct.Yellow,x:578,y:1864},{name:ut.Lisboa,region:ct.Yellow,x:572,y:1586},{name:ut.Porto,region:ct.Yellow,x:736,y:1052},{name:ut.Braga,region:ct.Yellow,x:990,y:828},{name:ut.Gerona,region:ct.Pink,x:3728,y:666},{name:ut.Barcelona,region:ct.Pink,x:3538,y:848},{name:ut.Tarragona,region:ct.Pink,x:3312,y:970},{name:ut.Lerida,region:ct.Pink,x:3166,y:752},{name:ut.Castellondelaplana,region:ct.Pink,x:3010,y:1284},{name:ut.Valencia,region:ct.Pink,x:2938,y:1580},{name:ut.Alicante,region:ct.Pink,x:2936,y:1922},{name:ut.Sansebastian,region:ct.Brown,x:2498,y:278},{name:ut.Pamplona,region:ct.Brown,x:2648,y:484},{name:ut.Zaragoza,region:ct.Brown,x:2760,y:810},{name:ut.Madrid,region:ct.Brown,x:2088,y:1170},{name:ut.Logrono,region:ct.Brown,x:2310,y:622},{name:ut.Bilbao,region:ct.Brown,x:2264,y:226},{name:ut.Santander,region:ct.Brown,x:2022,y:252},{name:ut.Gijon,region:ct.Green,x:1672,y:190},{name:ut.Leon,region:ct.Green,x:1604,y:518},{name:ut.Valladolid,region:ct.Green,x:1850,y:782},{name:ut.Salamanca,region:ct.Green,x:1564,y:1032},{name:ut.Orense,region:ct.Green,x:1072,y:532},{name:ut.Lacoruna,region:ct.Green,x:982,y:184},{name:ut.Santiagodecompostela,region:ct.Green,x:772,y:394},{name:ut.Cuenca,region:ct.Purple,x:2464,y:1300},{name:ut.Albacete,region:ct.Purple,x:2532,y:1684},{name:ut.Murcia,region:ct.Purple,x:2678,y:2056},{name:ut.Toledo,region:ct.Purple,x:1920,y:1400},{name:ut.Ciudadreal,region:ct.Purple,x:1982,y:1714},{name:ut.Caceres,region:ct.Purple,x:1354,y:1432},{name:ut.Merida,region:ct.Purple,x:1318,y:1764},{name:ut.Almeria,region:ct.Red,x:2402,y:2440},{name:ut.Granada,region:ct.Red,x:2044,y:2272},{name:ut.Cordoba,region:ct.Red,x:1728,y:2074},{name:ut.Malaga,region:ct.Red,x:1782,y:2484},{name:ut.Cadiz,region:ct.Red,x:1290,y:2552},{name:ut.Sevilla,region:ct.Red,x:1390,y:2168},{name:ut.Huelva,region:ct.Red,x:1082,y:2196}],connections:[{nodes:[ut.Huelva,ut.Faro],cost:6},{nodes:[ut.Faro,ut.Portimao],cost:4},{nodes:[ut.Portimao,ut.Setubal],cost:12},{nodes:[ut.Setubal,ut.Evora],cost:6},{nodes:[ut.Evora,ut.Merida],cost:9},{nodes:[ut.Merida,ut.Sevilla],cost:14},{nodes:[ut.Sevilla,ut.Cadiz],cost:8},{nodes:[ut.Cadiz,ut.Malaga],cost:12},{nodes:[ut.Malaga,ut.Granada],cost:7},{nodes:[ut.Granada,ut.Almeria],cost:9},{nodes:[ut.Almeria,ut.Murcia],cost:13},{nodes:[ut.Murcia,ut.Alicante],cost:4},{nodes:[ut.Alicante,ut.Valencia],cost:9},{nodes:[ut.Valencia,ut.Castellondelaplana],cost:4},{nodes:[ut.Albacete,ut.Almeria],cost:19},{nodes:[ut.Albacete,ut.Murcia],cost:10},{nodes:[ut.Albacete,ut.Alicante],cost:11},{nodes:[ut.Albacete,ut.Valencia],cost:11},{nodes:[ut.Albacete,ut.Cuenca],cost:8},{nodes:[ut.Albacete,ut.Ciudadreal],cost:13},{nodes:[ut.Albacete,ut.Granada],cost:19},{nodes:[ut.Albacete,ut.Toledo],cost:14},{nodes:[ut.Toledo,ut.Madrid],cost:6},{nodes:[ut.Madrid,ut.Cuenca],cost:11},{nodes:[ut.Cuenca,ut.Valencia],cost:13},{nodes:[ut.Cuenca,ut.Castellondelaplana],cost:14},{nodes:[ut.Castellondelaplana,ut.Tarragona],cost:12},{nodes:[ut.Toledo,ut.Caceres],cost:16},{nodes:[ut.Caceres,ut.Merida],cost:4},{nodes:[ut.Merida,ut.Ciudadreal],cost:16},{nodes:[ut.Ciudadreal,ut.Granada],cost:16},{nodes:[ut.Granada,ut.Cordoba],cost:11},{nodes:[ut.Cordoba,ut.Malaga],cost:11},{nodes:[ut.Malaga,ut.Sevilla],cost:12},{nodes:[ut.Sevilla,ut.Cordoba],cost:8},{nodes:[ut.Cordoba,ut.Ciudadreal],cost:10},{nodes:[ut.Merida,ut.Cordoba],cost:14},{nodes:[ut.Huelva,ut.Cadiz],cost:9},{nodes:[ut.Huelva,ut.Sevilla],cost:6},{nodes:[ut.Merida,ut.Huelva],cost:15},{nodes:[ut.Huelva,ut.Evora],cost:12},{nodes:[ut.Evora,ut.Faro],cost:13},{nodes:[ut.Faro,ut.Setubal],cost:14},{nodes:[ut.Setubal,ut.Lisboa],cost:4},{nodes:[ut.Lisboa,ut.Evora],cost:9},{nodes:[ut.Lisboa,ut.Merida],cost:16},{nodes:[ut.Caceres,ut.Ciudadreal],cost:16},{nodes:[ut.Toledo,ut.Cuenca],cost:13},{nodes:[ut.Salamanca,ut.Toledo],cost:14},{nodes:[ut.Salamanca,ut.Madrid],cost:14},{nodes:[ut.Salamanca,ut.Caceres],cost:13},{nodes:[ut.Porto,ut.Lisboa],cost:18},{nodes:[ut.Porto,ut.Salamanca],cost:19},{nodes:[ut.Porto,ut.Caceres],cost:21},{nodes:[ut.Caceres,ut.Lisboa],cost:19},{nodes:[ut.Ciudadreal,ut.Toledo],cost:7},{nodes:[ut.Braga,ut.Porto],cost:3},{nodes:[ut.Braga,ut.Salamanca],cost:19},{nodes:[ut.Salamanca,ut.Valladolid],cost:7},{nodes:[ut.Valladolid,ut.Madrid],cost:13},{nodes:[ut.Madrid,ut.Zaragoza],cost:19},{nodes:[ut.Zaragoza,ut.Lerida],cost:8},{nodes:[ut.Lerida,ut.Tarragona],cost:6},{nodes:[ut.Tarragona,ut.Barcelona],cost:6},{nodes:[ut.Lerida,ut.Castellondelaplana],cost:13},{nodes:[ut.Castellondelaplana,ut.Zaragoza],cost:15},{nodes:[ut.Zaragoza,ut.Cuenca],cost:16},{nodes:[ut.Braga,ut.Valladolid],cost:24},{nodes:[ut.Lerida,ut.Barcelona],cost:10},{nodes:[ut.Barcelona,ut.Gerona],cost:6},{nodes:[ut.Gerona,ut.Lerida],cost:13},{nodes:[ut.Lerida,ut.Pamplona],cost:17},{nodes:[ut.Pamplona,ut.Zaragoza],cost:11},{nodes:[ut.Zaragoza,ut.Logrono],cost:11},{nodes:[ut.Logrono,ut.Madrid],cost:18},{nodes:[ut.Santiagodecompostela,ut.Braga],cost:11},{nodes:[ut.Braga,ut.Orense],cost:9},{nodes:[ut.Orense,ut.Santiagodecompostela],cost:7},{nodes:[ut.Santiagodecompostela,ut.Lacoruna],cost:4},{nodes:[ut.Lacoruna,ut.Gijon],cost:9},{nodes:[ut.Gijon,ut.Santander],cost:11},{nodes:[ut.Santander,ut.Bilbao],cost:6},{nodes:[ut.Bilbao,ut.Sansebastian],cost:5},{nodes:[ut.Sansebastian,ut.Pamplona],cost:6},{nodes:[ut.Pamplona,ut.Logrono],cost:7},{nodes:[ut.Logrono,ut.Sansebastian],cost:9},{nodes:[ut.Bilbao,ut.Logrono],cost:9},{nodes:[ut.Logrono,ut.Santander],cost:13},{nodes:[ut.Santander,ut.Valladolid],cost:16},{nodes:[ut.Valladolid,ut.Logrono],cost:15},{nodes:[ut.Leon,ut.Santander],cost:13},{nodes:[ut.Gijon,ut.Leon],cost:9},{nodes:[ut.Leon,ut.Valladolid],cost:9},{nodes:[ut.Valladolid,ut.Orense],cost:22},{nodes:[ut.Orense,ut.Leon],cost:14},{nodes:[ut.Gijon,ut.Orense],cost:10},{nodes:[ut.Orense,ut.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"])($e);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=Ne(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{var c=Ne(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=Ne(a,t()+""),2==e?(c=c.slice(1),a=Ne(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=Ne(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=Ne(a.slice(3).concat(c),t()+"")):a=Ne(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"})(dt||(dt={})),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"}(ft||(ft={}));var pt={name:"UK & Ireland",cities:[{name:ft.Norwich,region:dt.Red,island:"gb",x:646,y:702},{name:ft.London1,region:dt.Red,island:"gb",x:554,y:756},{name:ft.London2,region:dt.Red,island:"gb",x:550,y:780},{name:ft.Brighton,region:dt.Red,island:"gb",x:537,y:837},{name:ft.Southampton,region:dt.Red,island:"gb",x:451,y:805},{name:ft.Plymouth,region:dt.Red,island:"gb",x:312,y:814},{name:ft.Leicester,region:dt.Red,island:"gb",x:540,y:680},{name:ft.Bristol,region:dt.Red,island:"gb",x:425,y:762},{name:ft.Newcastleupontyne,region:dt.Pink,island:"gb",x:550,y:414},{name:ft.Leeds,region:dt.Pink,island:"gb",x:559,y:541},{name:ft.Sheffield,region:dt.Pink,island:"gb",x:530,y:590},{name:ft.Nottingham,region:dt.Pink,island:"gb",x:531,y:632},{name:ft.Birmingham,region:dt.Pink,island:"gb",x:465,y:663},{name:ft.Manchester,region:dt.Pink,island:"gb",x:479,y:543},{name:ft.Liverpool,region:dt.Pink,island:"gb",x:433,y:576},{name:ft.Newportcasnewydd,region:dt.Yellow,island:"gb",x:425,y:722},{name:ft.Bangor,region:dt.Yellow,island:"gb",x:348,y:574},{name:ft.Aberystwyth,region:dt.Yellow,island:"gb",x:357,y:639},{name:ft.Swanseaabertawe,region:dt.Yellow,island:"gb",x:346,y:706},{name:ft.Cardiffcaerdydd,region:dt.Yellow,island:"gb",x:357,y:761},{name:ft.Haverfordwesthwlffordd,region:dt.Yellow,island:"gb",x:303,y:673},{name:ft.Invernessinbhirnis,region:dt.Brown,island:"gb",x:479,y:208},{name:ft.Aberdeenobardheathain,region:dt.Brown,island:"gb",x:588,y:245},{name:ft.Dundeedundeach,region:dt.Brown,island:"gb",x:552,y:286},{name:ft.Perthpeairt,region:dt.Brown,island:"gb",x:489,y:307},{name:ft.Edinburgh,region:dt.Brown,island:"gb",x:494,y:375},{name:ft.Dumfries,region:dt.Brown,island:"gb",x:441,y:417},{name:ft.Glasgow,region:dt.Brown,island:"gb",x:422,y:335},{name:ft.Coleraine,region:dt.Orange,island:"ie",x:330,y:367},{name:ft.Derry,region:dt.Orange,island:"ie",x:256,y:362},{name:ft.Belfast,region:dt.Orange,island:"ie",x:342,y:421},{name:ft.Newry,region:dt.Orange,island:"ie",x:298,y:462},{name:ft.Omagh,region:dt.Orange,island:"ie",x:260,y:403},{name:ft.Sligo,region:dt.Green,island:"ie",x:181,y:411},{name:ft.Dublin,region:dt.Green,island:"ie",x:274,y:530},{name:ft.Waterford,region:dt.Green,island:"ie",x:210,y:611},{name:ft.Cork,region:dt.Green,island:"ie",x:114,y:626},{name:ft.Athlone,region:dt.Green,island:"ie",x:200,y:489},{name:ft.Galway,region:dt.Green,island:"ie",x:112,y:486},{name:ft.Limerick,region:dt.Green,island:"ie",x:122,y:546}],connections:[{nodes:[ft.Nottingham,ft.Leicester],cost:4},{nodes:[ft.London1,ft.London2],cost:0},{nodes:[ft.London2,ft.Brighton],cost:6},{nodes:[ft.Brighton,ft.Southampton],cost:7},{nodes:[ft.Southampton,ft.Plymouth],cost:19},{nodes:[ft.Plymouth,ft.Bristol],cost:14},{nodes:[ft.Bristol,ft.Newportcasnewydd],cost:7},{nodes:[ft.Cardiffcaerdydd,ft.Swanseaabertawe],cost:7},{nodes:[ft.Swanseaabertawe,ft.Newportcasnewydd],cost:8},{nodes:[ft.Newportcasnewydd,ft.Cardiffcaerdydd],cost:3},{nodes:[ft.Bristol,ft.Southampton],cost:11},{nodes:[ft.Southampton,ft.London2],cost:9},{nodes:[ft.London2,ft.Bristol],cost:14},{nodes:[ft.London1,ft.Newportcasnewydd],cost:16},{nodes:[ft.Haverfordwesthwlffordd,ft.Aberystwyth],cost:9},{nodes:[ft.Haverfordwesthwlffordd,ft.Swanseaabertawe],cost:8},{nodes:[ft.Swanseaabertawe,ft.Aberystwyth],cost:11},{nodes:[ft.Aberystwyth,ft.Bangor],cost:11},{nodes:[ft.Bangor,ft.Liverpool],cost:9},{nodes:[ft.Liverpool,ft.Aberystwyth],cost:16},{nodes:[ft.Aberystwyth,ft.Newportcasnewydd],cost:14},{nodes:[ft.Aberystwyth,ft.Birmingham],cost:16},{nodes:[ft.Birmingham,ft.Liverpool],cost:12},{nodes:[ft.Birmingham,ft.Newportcasnewydd],cost:9},{nodes:[ft.London1,ft.Norwich],cost:11},{nodes:[ft.Norwich,ft.Leicester],cost:12},{nodes:[ft.Leicester,ft.London1],cost:10},{nodes:[ft.London1,ft.Birmingham],cost:13},{nodes:[ft.Birmingham,ft.Leicester],cost:6},{nodes:[ft.Birmingham,ft.Nottingham],cost:7},{nodes:[ft.Nottingham,ft.Sheffield],cost:6},{nodes:[ft.Sheffield,ft.Leeds],cost:5},{nodes:[ft.Leeds,ft.Manchester],cost:8},{nodes:[ft.Manchester,ft.Sheffield],cost:8},{nodes:[ft.Sheffield,ft.Liverpool],cost:12},{nodes:[ft.Liverpool,ft.Nottingham],cost:15},{nodes:[ft.Manchester,ft.Dumfries],cost:18},{nodes:[ft.Manchester,ft.Newcastleupontyne],cost:15},{nodes:[ft.Newcastleupontyne,ft.Dumfries],cost:12},{nodes:[ft.Dumfries,ft.Edinburgh],cost:12},{nodes:[ft.Edinburgh,ft.Newcastleupontyne],cost:13},{nodes:[ft.Newcastleupontyne,ft.Leeds],cost:13},{nodes:[ft.Dumfries,ft.Glasgow],cost:11},{nodes:[ft.Glasgow,ft.Edinburgh],cost:7},{nodes:[ft.Glasgow,ft.Perthpeairt],cost:10},{nodes:[ft.Perthpeairt,ft.Dundeedundeach],cost:3},{nodes:[ft.Glasgow,ft.Invernessinbhirnis],cost:20},{nodes:[ft.Invernessinbhirnis,ft.Perthpeairt],cost:14},{nodes:[ft.Invernessinbhirnis,ft.Dundeedundeach],cost:14},{nodes:[ft.Invernessinbhirnis,ft.Aberdeenobardheathain],cost:15},{nodes:[ft.Aberdeenobardheathain,ft.Dundeedundeach],cost:10},{nodes:[ft.Limerick,ft.Cork],cost:12},{nodes:[ft.Cork,ft.Waterford],cost:8},{nodes:[ft.Waterford,ft.Limerick],cost:11},{nodes:[ft.Limerick,ft.Galway],cost:10},{nodes:[ft.Galway,ft.Sligo],cost:10},{nodes:[ft.Sligo,ft.Derry],cost:10},{nodes:[ft.Derry,ft.Coleraine],cost:6},{nodes:[ft.Coleraine,ft.Belfast],cost:8},{nodes:[ft.Belfast,ft.Newry],cost:6},{nodes:[ft.Newry,ft.Dublin],cost:10},{nodes:[ft.Dublin,ft.Waterford],cost:13},{nodes:[ft.Galway,ft.Athlone],cost:8},{nodes:[ft.Athlone,ft.Sligo],cost:9},{nodes:[ft.Athlone,ft.Limerick],cost:9},{nodes:[ft.Limerick,ft.Dublin],cost:16},{nodes:[ft.Dublin,ft.Athlone],cost:9},{nodes:[ft.Athlone,ft.Newry],cost:12},{nodes:[ft.Athlone,ft.Omagh],cost:14},{nodes:[ft.Omagh,ft.Newry],cost:8},{nodes:[ft.Omagh,ft.Belfast],cost:10},{nodes:[ft.Belfast,ft.Derry],cost:10},{nodes:[ft.Omagh,ft.Derry],cost:5},{nodes:[ft.Omagh,ft.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"])($e);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=Ne(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=[sr(3),sr(4),sr(5),sr(6)],o=[sr(7),sr(8),sr(9),sr(10)]}else{var u=Ne(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=Ne(a,t()+""),2==e?(u=u.slice(1),a=Ne(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=Ne(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=Ne(a.slice(3).concat(u),t()+"")):a=Ne(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)."},gt=[Ve,Cn,un,ht,Mn,On,jn,ot,Jn,vn,an,st,gn,tn,nt,Kn,xn,Xn,lt,pt,Qe,fn,Fn,zn],yt=[Je,Bn,un,ht,Mn,On,jn,ot,Jn,vn,an,st,gn,tn,nt,Kn,xn,Xn,lt,pt,Qe,fn,Fn,Tn];const mt=Math.pow(2,-52),vt=new Uint32Array(512);class bt{static from(e,n=Rt,t=At){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 bt(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 _=0;_<a;_++){const n=e[2*_],t=e[2*_+1];n<i&&(i=n),t<s&&(s=t),n>c&&(c=n),t>u&&(u=t),this._ids[_]=_}const l=(i+c)/2,d=(s+u)/2;let f,h,p,g=1/0;for(let _=0;_<a;_++){const n=xt(l,d,e[2*_],e[2*_+1]);n<g&&(f=_,g=n)}const y=e[2*f],m=e[2*f+1];g=1/0;for(let _=0;_<a;_++){if(_===f)continue;const n=xt(y,m,e[2*_],e[2*_+1]);n<g&&n>0&&(h=_,g=n)}let v=e[2*h],b=e[2*h+1],w=1/0;for(let _=0;_<a;_++){if(_===f||_===h)continue;const n=_t(y,m,v,b,e[2*_],e[2*_+1]);n<w&&(p=_,w=n)}let x=e[2*p],k=e[2*p+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];Ct(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(Pt(y,m,v,b,x,k)){const e=h,n=v,t=b;h=p,v=x,b=k,p=e,x=n,k=t}const P=St(y,m,v,b,x,k);this._cx=P.x,this._cy=P.y;for(let _=0;_<a;_++)this._dists[_]=xt(e[2*_],e[2*_+1],P.x,P.y);Ct(this._ids,this._dists,0,a-1),this._hullStart=f;let M=3;t[f]=n[p]=h,t[h]=n[f]=p,t[p]=n[h]=f,r[f]=0,r[h]=1,r[p]=2,o.fill(-1),o[this._hashKey(y,m)]=f,o[this._hashKey(v,b)]=h,o[this._hashKey(x,k)]=p,this.trianglesLen=0,this._addTriangle(f,h,p,-1,-1,-1);for(let _,S,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-_)<=mt&&Math.abs(s-S)<=mt)continue;if(_=i,S=s,a===f||a===h||a===p)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],!Pt(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,M++;let g=t[l];while(u=t[g],Pt(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,M--,g=u;if(l===c)while(u=n[l],Pt(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,M--,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(M);for(let _=0,S=this._hullStart;_<M;_++)this.hull[_]=S,S=t[S];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(e,n){return Math.floor(wt(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=vt[--o];continue}const c=i-i%3,u=s+(e+1)%3,l=c+(i+2)%3,d=n[a],f=n[e],h=n[u],p=n[l],g=Mt(r[2*d],r[2*d+1],r[2*f],r[2*f+1],r[2*h],r[2*h+1],r[2*p],r[2*p+1]);if(g){n[e]=p,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<vt.length&&(vt[o++]=s)}else{if(0===o)break;e=vt[--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 wt(e,n){const t=e/(Math.abs(e)+Math.abs(n));return(n>0?3-t:1+t)/4}function xt(e,n,t,r){const o=e-t,a=n-r;return o*o+a*a}function kt(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 Pt(e,n,t,r,o,a){const i=kt(o,a,e,n,t,r)||kt(e,n,t,r,o,a)||kt(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,h=a-s,p=c*c+u*u,g=l*l+d*d,y=f*f+h*h;return c*(d*y-g*h)-u*(l*y-g*f)+p*(l*h-d*f)<0}function _t(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),h=(u*l-s*d)*f,p=(i*d-c*l)*f;return h*h+p*p}function St(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),h=e+(u*l-s*d)*f,p=n+(i*d-c*l)*f;return{x:h,y:p}}function Ct(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;Bt(e,o,a),n[e[t]]>n[e[r]]&&Bt(e,t,r),n[e[a]]>n[e[r]]&&Bt(e,a,r),n[e[t]]>n[e[a]]&&Bt(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;Bt(e,a,i)}e[t+1]=e[i],e[i]=s,r-a+1>=i-t?(Ct(e,n,a,r),Ct(e,n,t,i-1)):(Ct(e,n,t,i-1),Ct(e,n,a,r))}}function Bt(e,n,t){const r=e[n];e[n]=e[t],e[t]=r}function Rt(e){return e[0]}function At(e){return e[1]}function Ot(e,n,t){var r=M(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,h=Array(f).fill(-1);e.mapPosition=[100,200],e.layout="Portrait";var p=Array(f).fill(0).map((function(e,n){return n}));o.forEach((function(e,n){var r=p[Math.floor(t()*p.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),p=p.filter((function(e){return e!==r})),h[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=bt.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),_=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 S=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(S));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+S-B)/(2*_*C)),O=Math.acos((P+B-S)/(2*_*R)),L=Math.PI-A-O,G=105*Math.PI/180;!1!==y[m.triangles[v]][m.triangles[v+1]]&&L<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]]&&O<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=Lt(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 Lt(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=Gt(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=Gt(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 Gt(e,n){return(e[0]-n[0])*(e[0]-n[0])+(e[1]-n[1])*(e[1]-n[1])}var jt=[10,7,7,7,6],Dt=[9,6,6,6,5],Nt=[10,7,7,7,6],zt=[21,17,17,15,14],Tt=[18,17,17,15,14],Et=[5,5,5,5,4],Kt=[13,13,13,12,11],It=[18,17,17,15,14],Ut=[10,22,33,44,54,64,73,82,90,98,105,112,118,124,129,134,138,142,145,148,150,150],Wt=[3,3,4,5,5];function Ht(e,n,t,r){var o,a,i=Object(we["cloneDeep"])($e);if("original"==n){i=i.slice(8);var s=i.splice(2,1)[0],c=i.pop();i=Ne(i,t()+""),2==e||3==e?i=i.slice(8):4==e&&(i=i.slice(4)),i.unshift(s),i.push(c),o=[sr(3),sr(4),sr(5),sr(6)],a=[sr(7),sr(8),sr(9),sr(10)]}else{var u=Ne(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=Ne(i,t()+""),2==e?(u=u.slice(1),i=Ne(i.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),i=Ne(i.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),i=Ne(i.slice(3).concat(u),t()+"")):r&&(i=Ne(i.concat(u),t()+"")),i.unshift(d),i.push(f)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:i}}function Ft(e,n,t,r,o){var a,i,s,u,l,d,f,h,p=n.fastBid,g=void 0!==p&&p,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,P=void 0===k||k,_=n.trackTotalSpent,S=void 0===_||_,C=n.randomizeMap,B=void 0!==C&&C,R=n.chooseRegions,A=void 0!==R&&R,O=n.chooseColors,L=void 0!==O&&O;t=null!==(a=t)&&void 0!==a?a:Math.random().toString();var G=Ge()(t),j="original"==b?gt.find((function(e){return e.name==m})):yt.find((function(e){return e.name==m}));if(!j)throw new Error('Map "'.concat(m,'" not found for variant "').concat(b,'"'));var D,N,z,T=Object(we["cloneDeep"])(j);if(r)z=r,D=z.splice(0,4),N=z.splice(0,4);else if(T.setupDeck){var E=T.setupDeck(e,b,G);D=E.actualMarket,N=E.futureMarket,z=E.powerPlantsDeck}else{var K=Ht(e,b,G,P);D=K.actualMarket,N=K.futureMarket,z=K.powerPlantsDeck}var I,U,W,H,F,Y,V,J,$,q=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}})),Z=q.length-2,X=Object(we["range"])(e),Q=X[0];if(T.resupplyNorth&&(F=T.resupplyNorth[0],Y=T.resupplyNorth[1],V=T.resupplyNorth[2]),T.resupply?(I=T.resupply[0],U=T.resupply[1],W=T.resupply[2],H=T.resupply[3]):(I=[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],U=[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],W=[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],H=[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]),"Portrait"==T.layout||B){var ee="USA"===T.name&&"recharged"===b;T.viewBox=T.viewBox||[1480,1060],T.adjustRatio=T.adjustRatio||[1,1],T.playerOrderPosition=T.playerOrderPosition||[1160,160],T.cityCountPosition=T.cityCountPosition||[0,0],T.powerPlantMarketPosition=T.powerPlantMarketPosition||[745,0],T.actualMarketWidth=T.actualMarketWidth||430,T.mapPosition=T.mapPosition||[0,0],T.buttonsPosition=T.buttonsPosition||[1305,0],T.playerBoardsPosition=T.playerBoardsPosition||[1105,240],T.roundInfoPosition=T.roundInfoPosition||[20,920],T.supplyPosition=T.supplyPosition||[ee?480:675,920]}else T.viewBox=T.viewBox||[1465,860],T.adjustRatio=T.adjustRatio||[1,1],T.playerOrderPosition=T.playerOrderPosition||[1160,140],T.cityCountPosition=T.cityCountPosition||[0,0],T.powerPlantMarketPosition=T.powerPlantMarketPosition||[745,0],T.actualMarketWidth=T.actualMarketWidth||430,T.mapPosition=T.mapPosition||[-10,0],T.buttonsPosition=T.buttonsPosition||[1305,0],T.playerBoardsPosition=T.playerBoardsPosition||[1105,200],T.roundInfoPosition=T.roundInfoPosition||[20,590],T.supplyPosition=T.supplyPosition||[0,720];if(B)J=Ot(T,Wt[Z],G);else{T.cities=T.cities.map((function(e){return c(c({},e),{},{x:e.x*T.adjustRatio[0],y:e.y*T.adjustRatio[1]})}));var ne=Te(T),te=ne.regions,re=Math.min(Wt[Z],te.length);if(A&&te.length>re)J=T,$={regionsNeeded:re,picked:[]};else{var oe=new Set;while(oe.size!=re){var ae=te[Math.floor(G()*te.length)];Ee(T.name,ne,M(oe),ae)&&(oe.add(ae),"Italy"===T.name&&oe.has("red")&&oe.has("green")&&oe.has("blue")&&oe.clear())}J=Yt(T,oe),Vt(T,oe,D,N,z)}}var ie=T.startingResources?T.startingResources[0]:24,se=T.startingResources?T.startingResources[1]:18,ce=T.startingResources?T.startingResources[2]:"original"==b?6:9,ue=T.startingResources?T.startingResources[3]:2,le=T.startingSupply?T.startingSupply[0]:24,de=T.startingSupply?T.startingSupply[1]:24,fe=T.startingSupply?T.startingSupply[2]:24,he=T.startingSupply?T.startingSupply[3]:12,pe=null===(i=T.startingResourcesNorth)||void 0===i?void 0:i[0],ge=null===(s=T.startingResourcesNorth)||void 0===s?void 0:s[1],ye=null===(u=T.startingResourcesNorth)||void 0===u?void 0:u[2],me=le-ie-(null!==pe&&void 0!==pe?pe:0),ve=de-se-(null!==ge&&void 0!==ge?ge:0),xe=fe-ce-(null!==ye&&void 0!==ye?ye:0),ke=he-ue,Pe=Object(we["cloneDeep"])(null!==(l=T.coalPrices)&&void 0!==l?l:Oe.coal),Me=Object(we["cloneDeep"])(null!==(d=T.oilPrices)&&void 0!==d?d:Oe.oil),_e=Object(we["cloneDeep"])(null!==(f=T.garbagePrices)&&void 0!==f?f:Oe.garbage),Se=Object(we["cloneDeep"])(null!==(h=T.uraniumPrices)&&void 0!==h?h:Oe.uranium),Ce=T.coalPricesNorth?Object(we["cloneDeep"])(T.coalPricesNorth):void 0,Be=T.oilPricesNorth?Object(we["cloneDeep"])(T.oilPricesNorth):void 0,Re=T.garbagePricesNorth?Object(we["cloneDeep"])(T.garbagePricesNorth):void 0,Ae="South Africa"==(o||J).name,Le={map:o||J,players:q,playerOrder:X,currentPlayers:[Q],powerPlantsDeck:z,coalSupply:me,oilSupply:ve,garbageSupply:xe,uraniumSupply:ke,coalStorage:Ae?0:void 0,coalResupply:I,oilResupply:U,garbageResupply:W,uraniumResupply:H,coalMarket:ie,oilMarket:se,garbageMarket:ce,uraniumMarket:ue,uraniumMineMarket:"Australia"==(o||J).name?[2,2,2,2,2,2]:void 0,coalPrices:Pe,oilPrices:Me,garbagePrices:_e,uraniumPrices:Se,coalMarketNorth:pe,oilMarketNorth:ge,garbageMarketNorth:ye,coalResupplyNorth:F,oilResupplyNorth:Y,garbageResupplyNorth:V,coalPricesNorth:Ce,oilPricesNorth:Be,garbagePricesNorth:Re,actualMarket:D,futureMarket:N,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:P,trackTotalSpent:S,chooseRegions:A,chooseColors:L},log:[],hiddenLog:[],seed:t,round:1,auctionSkips:0,citiesToStep2:"Baden-Württemberg"==(o||J).name?Dt[e-2]:"UK & Ireland"==(o||J).name?Nt[e-2]:"Bremen"==(o||J).name?Et[e-2]:jt[e-2],citiesToEndGame:"South Africa"==(o||J).name?Tt[e-2]:"UK & Ireland"==(o||J).name&&2==e?Math.min(zt[e-2],(o||J).cities.length):"Bremen"==(o||J).name?Kt[e-2]:"Manhattan"==(o||J).name?It[e-2]:zt[e-2],resourceResupply:["[".concat(I[Z][0],", ").concat(U[Z][0],", ").concat(W[Z][0],", ").concat(H[Z][0],"]"),"[".concat(I[Z][1],", ").concat(U[Z][1],", ").concat(W[Z][1],", ").concat(H[Z][1],"]"),"[".concat(I[Z][2],", ").concat(U[Z][2],", ").concat(W[Z][2],", ").concat(H[Z][2],"]")],resourceResupplyNorth:F&&Y&&V?["[".concat(F[Z][0],", ").concat(Y[Z][0],", ").concat(V[Z][0],"]"),"[".concat(F[Z][1],", ").concat(Y[Z][1],", ").concat(V[Z][1],"]"),"[".concat(F[Z][2],", ").concat(Y[Z][2],", ").concat(V[Z][2],"]")]:void 0,paymentTable:Ut,variant:b,minimunBid:0,plantDiscountActive:"recharged"==b&&"China"!=(o||J).name&&"Russia"!=(o||J).name&&"Baden-Württemberg"!=(o||J).name,discardSmallestPlant:!1,cardsLeft:z.length,nextCardWeak:"recharged"==b,card39Bought:!1,knownPowerPlantDeck:D.concat(N),knownPowerPlantDeckStep3:[],powerPlantDeckAfterStep3:void 0};return Le.log.push({type:"event",event:"Game Start!"}),"Middle East"==Le.map.name&&tr(Le),$&&(Le.phase=be.RegionSelection,Le.regionDraft=$),L&&(Le.phase=be.ColorSelection,Le.colorDraft={picked:[]}),Le.map.blockSpaces&&(Le.blockedCities=Le.map.blockSpaces(e,Le.map.cities,G),Le.blockedCities.length>0&&Le.log.push({type:"event",event:"".concat(Le.blockedCities.length," building spaces are blocked for ").concat(e," players.")})),Le.players[Q].availableMoves=ze(Le,Le.players[Q]),Le}function Yt(e,n){var t=Object(we["cloneDeep"])(e);return t.cities=t.cities.filter((function(e){return n.has(e.region)})),t.connections=t.connections.filter((function(t){return t.nodes.map((function(n){return e.cities.find((function(e){return e.name==n})).region})).every((function(e){return n.has(e)}))})),t}function Vt(e,n,t,r,o){if(e.regionalPowerPlants){var a,i=w(n);try{for(i.s();!(a=i.n()).done;){var s=a.value,u=e.regionalPowerPlants[s];if(u){var l,d=w(u);try{var f=function(){var e=l.value,n=function(n){var t=n.findIndex((function(n){return n.number===e.number}));-1!==t&&(n[t]=c({},e))};n(t),n(r),n(o)};for(d.s();!(l=d.n()).done;)f()}catch(h){d.e(h)}finally{d.f()}}}}catch(h){i.e(h)}finally{i.f()}}}function Jt(e){var n=new Set(e.regionDraft.picked),t=e.map;e.map=Yt(t,n),Vt(t,n,e.actualMarket,e.futureMarket,e.powerPlantsDeck),e.knownPowerPlantDeck=e.actualMarket.concat(e.futureMarket),"UK & Ireland"==e.map.name&&2==e.players.length&&(e.citiesToEndGame=Math.min(zt[e.players.length-2],e.map.cities.length)),e.regionDraft=void 0,e.phase=be.Auction,e.currentPlayers=[e.playerOrder[0]]}function $t(e){e.colorDraft=void 0,e.currentPlayers=[e.playerOrder[0]],e.regionDraft?e.phase=be.RegionSelection:e.phase=be.Auction}function qt(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(kr(e),He()(e.currentPlayers.includes(t),"It is not your turn!"),He()(i,"You are not allowed to run the command "+n.name),o&&n.name==Me.DiscardPowerPlant&&a.powerPlants[a.powerPlants.length-1].number==n.data||He()(i.some((function(e){return Object(we["isEqual"])(e,n.data)})),"Wrong argument for the command "+n.name),n.name){case Me.ChoosePowerPlant:je(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(ur(a)," chooses Power Plant <b>").concat(n.data,"</b>.")});var c=s[0];if(gr(e,c,e.minimunBid),void 0!=e.discountBonusPlayer){var u=Pe(e,c)>4||e.players.length>2&&Pe(e,c)>3;u||er(e),mr(e,e.discountBonusPlayer)}else(Pe(e,c)<=3||2==e.players.length&&4==Pe(e,c))&&("China"==e.map.name&&3!=e.step||er(e),pr(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(ur(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 Me.Bid:je(n),e.options.fastBid?(e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," bids $").concat(n.data,"."),pretty:"".concat(ur(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),Pr(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(ur(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),br(e));break;case Me.ChooseRegion:if(je(n),e.regionDraft.picked.push(n.data),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," chooses region ").concat(n.data,"."),pretty:"".concat(ur(a)," chooses region <b>").concat(n.data,"</b>.")}),e.regionDraft.picked.length>=e.regionDraft.regionsNeeded)Jt(e);else{var l=e.playerOrder;e.currentPlayers=[l[(l.indexOf(t)+1)%l.length]]}break;case Me.ChooseColor:je(n),a.color=n.data,e.colorDraft.picked.push(n.data),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," chooses ").concat(n.data,"."),pretty:"".concat(ur(a)," chooses <b>").concat(n.data,"</b>.")}),e.colorDraft.picked.length>=e.players.length?$t(e):e.currentPlayers=[e.playerOrder[e.colorDraft.picked.length]];break;case Me.Pass:switch(je(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(ur(a)," passes.")}),e.phase){case be.Auction:var d;if(void 0==e.chosenPowerPlant)if(a.skipAuction=!0,e.discountBonusPlayer==a.id&&(e.discountBonusPlayer=void 0),e.auctionSkips++,1==e.auctionSkips&&"Russia"==e.map.name&&(null===(d=e.actualMarket)||void 0===d?void 0:d.length)>0&&(e.log.push({type:"event",event:"First pass, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),er(e)),e.players.some((function(e){return!e.skipAuction&&!e.isDropped})))xr(e);else{if(e.auctionSkips==e.players.length&&"Baden-Württemberg"==e.map.name){for(var f=[],h=0;h<2&&e.actualMarket.length>0;h++)f.push(e.actualMarket[0].number),e.actualMarket.shift(),er(e);e.log.push({type:"event",event:"Everyone passed, removing the two lowest numbered Power Plants (".concat(f.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(),er(e));pr(e)}else if(e.options.fastBid)e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," passes."),pretty:"".concat(ur(a)," passes.")}),Pr(e,a,0);else{a.passed=!0;var p=e.players.filter((function(e){return!e.passed&&!e.skipAuction&&!e.isDropped}));if(1==p.length){var g=p[0];gr(e,g,g.bid),(Pe(e,g)>4||e.players.length>2&&Pe(e,g)>3)&&!g.isDropped?mr(e,g.id):("China"==e.map.name&&3!=e.step||er(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),xr(e,!0)):pr(e))}else br(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),mr(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,wr(e))):wr(e),"India"==e.map.name)while(e.players[e.currentPlayers[0]].passed)wr(e);break;case be.Building:if(a.passed=!0,0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var y=Math.max.apply(Math,M(e.players.map((function(e){return e.cities.length}))));if(1==e.step){var m=e.players.reduce((function(e,n){return e+n.cities.length}),0),v=m>=e.map.cities.length;if((y>=e.citiesToStep2||v)&&"Middle East"!=e.map.name&&"Manhattan"!=e.map.name){var b=e.actualMarket.shift();if(e.log.push({type:"event",event:"Starting Step 2, Power Plant ".concat(null===b||void 0===b?void 0:b.number," discarded.")}),e.step=2,"Spain & Portugal"==e.map.name&&(e.powerPlantsDeck.find((function(e){return 18==e.number}))||(e.powerPlantsDeck.unshift(sr(27)),e.powerPlantsDeck.unshift(sr(22)),e.powerPlantsDeck.unshift(sr(18)))),"Europe"==e.map.name){var w=[].concat(M(e.actualMarket),M(e.futureMarket));w.sort((function(e,n){return e.number-n.number})),e.actualMarket=w.slice(0,4),e.futureMarket=w.slice(4)}else er(e)}}y>=e.citiesToEndGame?(e.phase=be.GameEnd,e.currentPlayers=[],dr(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&&M(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Be(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=fr(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?ar(e):0==e.futureMarket.length&&"Manhattan"!=e.map.name&&(e.step=3,or(e)))}else wr(e);break;case be.Bureaucracy:a.passed=!0;var x=Math.min(a.cities.length,a.citiesPowered),k=e.paymentTable[x];if("India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&(k-=3*a.cities.length,k=Math.max(k,0)),a.money+=k,e.options.trackTotalSpent&&(a.totalIncome+=k),a.citiesPowered=0,"India"==e.map.name&&(a.targetCitiesPowered=0),0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var P,_,S,C,B,R,A,O;if(e.uraniumMineMarket){M(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Be(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 L=Re(e,e.map.uraniumMineResupply[e.players.length-2][e.step-1]);L>0&&e.log.push({type:"event",event:"Removing ".concat(L," uranium from the mine market (cheapest slots).")})}var G,j,D=(null!==(P=null===(_=e.coalPrices)||void 0===_?void 0:_.length)&&void 0!==P?P:Oe[me.Coal].length)-e.coalMarket,N=(null!==(S=null===(C=e.oilPrices)||void 0===C?void 0:C.length)&&void 0!==S?S:Oe[me.Oil].length)-e.oilMarket,z=(null!==(B=null===(R=e.garbagePrices)||void 0===R?void 0:R.length)&&void 0!==B?B:Oe[me.Garbage].length)-e.garbageMarket,T=(null!==(A=null===(O=e.uraniumPrices)||void 0===O?void 0:O.length)&&void 0!==A?A:Oe[me.Uranium].length)-e.uraniumMarket,E=0,K=0,I=0;if(e.coalResupplyNorth){var U=e.coalPricesNorth.length-e.coalMarketNorth,W=e.oilPricesNorth.length-e.oilMarketNorth,H=e.garbagePricesNorth.length-e.garbageMarketNorth;E=Math.min(e.coalSupply,e.coalResupplyNorth[e.players.length-2][e.step-1],U),e.coalMarketNorth+=E,e.coalSupply-=E,K=Math.min(e.oilSupply,e.oilResupplyNorth[e.players.length-2][e.step-1],W),e.oilMarketNorth+=K,e.oilSupply-=K,I=Math.min(e.garbageSupply,e.garbageResupplyNorth[e.players.length-2][e.step-1],H),e.garbageMarketNorth+=I,e.garbageSupply-=I}if(void 0!==e.coalStorage){var F=Math.min(e.coalResupply[e.players.length-2][e.step-1],D),Y=Math.min(e.coalStorage,F),V=Math.min(e.coalSupply,F-Y);G=Y+V,e.coalMarket+=G,e.coalStorage-=Y,e.coalSupply-=V}else G=Math.min(e.coalSupply,e.coalResupply[e.players.length-2][e.step-1],D),e.coalMarket+=G,e.coalSupply-=G;if("Middle East"==e.map.name){0==e.oilMarket&&(e.oilPrices=Oe[me.Oil]),j=e.oilResupply[e.players.length-2][e.step-1];for(var J=0;J<j;J++)e.oilSupply>0?(e.oilMarket++,e.oilSupply--):(e.oilPrices.pop(),e.oilPrices.unshift(1))}else j=Math.min(e.oilSupply,e.oilResupply[e.players.length-2][e.step-1],N),e.oilMarket+=j,e.oilSupply-=j;var $=Math.min(e.garbageSupply,e.garbageResupply[e.players.length-2][e.step-1],z);e.garbageMarket+=$,e.garbageSupply-=$;var q=0;if(("recharged"!=e.options.variant||"Germany"!=e.options.map&&"Italy"!=e.options.map||!e.card39Bought)&&(q=Math.min(e.uraniumSupply,e.uraniumResupply[e.players.length-2][e.step-1],T),e.uraniumMarket+=q,e.uraniumSupply-=q),e.coalResupplyNorth?e.log.push({type:"event",event:"Resupplying resources — North: [".concat(E,", ").concat(K,", ").concat(I,"], South: [").concat(G,", ").concat(j,", ").concat($,", ").concat(q,"].")}):e.log.push({type:"event",event:"Resupplying resources: [".concat(G,", ").concat(j,", ").concat($,", ").concat(q,"].")}),"Manhattan"==e.map.name)nr(e);else if("Middle East"==e.map.name&&2==e.step&&e.futureMarket.length>0){var Z=e.futureMarket.pop();e.log.push({type:"event",event:"Putting Power Plant ".concat(Z.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Z),er(e),Z=e.futureMarket.length?e.futureMarket.pop():e.actualMarket.pop(),e.log.push({type:"event",event:"Putting Power Plant ".concat(Z.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Z),er(e)}else if(e.futureMarket.length>0){if("Benelux"==e.map.name&&("original"==e.options.variant||e.discardSmallestPlant)){var X=e.actualMarket[0];e.log.push({type:"event",event:"Removing smallest plant, Power Plant ".concat(X.number,".")}),e.actualMarket.shift(),er(e),e.discardSmallestPlant=!1}var Q;if("Quebec"==e.map.name){var ee=e.futureMarket.filter((function(e){return e.type!=ve.Wind}));if(Q=ee.pop(),Q)e.futureMarket=e.futureMarket.filter((function(e){var n;return e.number!=(null===(n=Q)||void 0===n?void 0:n.number)}));else{var ne=e.actualMarket.filter((function(e){return e.type!=ve.Wind}));Q=ne.pop(),Q&&(e.actualMarket=e.actualMarket.filter((function(e){var n;return e.number!=(null===(n=Q)||void 0===n?void 0:n.number)})))}}else Q=e.futureMarket.pop();Q&&(e.log.push({type:"event",event:"Putting Power Plant ".concat(Q.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Q),er(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(),er(e));e.round++,"Baden-Württemberg"!=e.map.name&&yr(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&&"Manhattan"!=e.map.name&&(e.step=3,or(e)),e.plantDiscountActive="recharged"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name,mr(e,e.playerOrder[0])):pr(e)}else e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped}));break}break;case Me.DiscardPowerPlant:je(n),n.extra||e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discards Power Plant ").concat(n.data,"."),pretty:"".concat(ur(a)," discards Power Plant <b>").concat(n.data,"</b>.")});var te=a.powerPlants.find((function(e){return e.number==n.data}));if(a.powerPlants=a.powerPlants.filter((function(e){return e.number!=n.data})),Qt(a),n.extra){var re=[];switch(te.type){case ve.Coal:e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],re.push(n.extra[0]+" Coal");break;case ve.Oil:e.oilSupply+=n.extra[0],a.oilLeft-=n.extra[0],re.push(n.extra[0]+" Oil");break;case ve.Garbage:e.garbageSupply+=n.extra[0],a.garbageLeft-=n.extra[0],re.push(n.extra[0]+" Garbage");break;case ve.Uranium:e.uraniumSupply+=n.extra[0],a.uraniumLeft-=n.extra[0],re.push(n.extra[0]+" Uranium");break;case ve.Hybrid:n.extra[0]>0&&(e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],re.push(n.extra[0]+" Coal")),n.extra[1]>0&&(e.oilSupply+=n.extra[1],a.oilLeft-=n.extra[1],re.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(re.join(", "),"."),pretty:"".concat(ur(a)," discards Power Plant <b>").concat(n.data,"</b> and ").concat(re.join(", "),".")}),"China"==e.map.name&&3!=e.step||er(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?xr(e,!0):pr(e)}else{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),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==oe.length&&(oe[0]==me.Coal?(e.coalSupply+=a.coalLeft-a.coalCapacity,a.coalLeft=a.coalCapacity):oe[0]==me.Oil&&(e.oilSupply+=a.oilLeft-a.oilCapacity,a.oilLeft=a.oilCapacity),oe.pop()),0==oe.length&&("China"==e.map.name&&3!=e.step||er(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?xr(e,!0):pr(e))}break;case Me.DiscardResources:je(n),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discarded a ").concat(n.data,"."),pretty:"".concat(ur(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 ie=[],se=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+se&&ie.push(me.Coal),se=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+se&&ie.push(me.Oil),1==ie.length&&(ie[0]==me.Coal?a.coalLeft--:ie[0]==me.Oil&&a.oilLeft--,ie.pop()),0==ie.length&&("China"==e.map.name&&3!=e.step||er(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?xr(e,!0):pr(e));break;case Me.BuyResource:je(n),e.chosenResource=n.data.resource,n.data.side&&(e.chosenSide=n.data.side);var ce,ue="north"===n.data.side;switch(n.data.resource){case me.Coal:if(ue){var le=e.coalPricesNorth;ce=le[le.length-e.coalMarketNorth],a.coalLeft++,e.coalMarketNorth--}else if(n.data.fromStorage)ce=8,a.coalLeft++,e.coalStorage--;else if(0==e.coalMarket)ce=8,a.coalLeft++,e.coalSupply--,n.fromSupply=!0;else{var de,fe=null!==(de=e.coalPrices)&&void 0!==de?de:Oe[me.Coal];ce=fe[fe.length-e.coalMarket],a.coalLeft++,e.coalMarket--}break;case me.Oil:if(ue){var he=e.oilPricesNorth;ce=he[he.length-e.oilMarketNorth],a.oilLeft++,e.oilMarketNorth--}else{var pe,ge=null!==(pe=e.oilPrices)&&void 0!==pe?pe:Oe[me.Oil];ce=ge[ge.length-e.oilMarket],a.oilLeft++,e.oilMarket--}break;case me.Garbage:if(ue){var ye=e.garbagePricesNorth;ce=ye[ye.length-e.garbageMarketNorth],a.garbageLeft++,e.garbageMarketNorth--}else{var xe,ke=null!==(xe=e.garbagePrices)&&void 0!==xe?xe:Oe[me.Garbage];if(ce=ke[ke.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&&ce--}a.garbageLeft++,e.garbageMarket--}break;case me.Uranium:var Se,Ce=null!==(Se=e.uraniumPrices)&&void 0!==Se?Se:Oe[me.Uranium];ce=Ce[Ce.length-e.uraniumMarket],a.uraniumLeft++,e.uraniumMarket--;break}a.money-=ce,e.options.trackTotalSpent&&(a.totalSpentResources+=ce),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," buys ").concat(n.data.resource," for $").concat(ce,"."),pretty:"".concat(ur(a)," buys <b>").concat(n.data.resource,'</b> for <span style="color: green">$').concat(ce,"</span>.")});break;case Me.Build:je(n);var Ae=!1;if("Japan"===e.map.name&&!a.usedFreeJump&&a.cities.length>=1)if(1===e.round&&e.map.startingCities){var Le=new Set(e.map.startingCities);Le.has(n.data.name)&&(Ae=!0)}else n.data.freeJump&&(Ae=!0);var Ge=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:Ge}),a.money-=n.data.price,e.options.trackTotalSpent){var De=e.map.cities.find((function(e){return e.name==n.data.name}));De.singleOccupancy?a.totalSpentConnections+=n.data.price:(a.totalSpentCities+=10+5*Ge,a.totalSpentConnections+=n.data.price-(10+5*Ge))}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(ur(a)," builds on <b>").concat(n.data.name,'</b> for <span style="color: green">$').concat(n.data.price,"</span>.")}),Ae&&(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(),er(e));break;case Me.UsePowerPlant:je(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(ur(a)," uses Power Plant <b>").concat(n.data.powerPlant,"</b>.")});break;case Me.Undo:je(n);var Ne=a.lastMove;switch(null===Ne||void 0===Ne?void 0:Ne.name){case Me.ChoosePowerPlant:39==Ne.data&&(e.card39Bought=!1),Ne.usedPlantDiscount&&(e.plantDiscountActive=!0),e.chosenPowerPlant=void 0,e.auctioningPlayer=void 0,e.currentPlayers=[a.id],e.log.pop();break;case Me.BuyResource:var Te,Ee="north"===Ne.data.side;switch(Ne.data.resource){case me.Coal:if(Ee){a.coalLeft--,e.coalMarketNorth++;var Ke=e.coalPricesNorth;Te=Ke[Ke.length-e.coalMarketNorth]}else if(Ne.data.fromStorage)Te=8,a.coalLeft--,e.coalStorage++;else if(Ne.fromSupply)Te=8,a.coalLeft--,e.coalSupply++;else{var Ie;a.coalLeft--,e.coalMarket++;var Ue=null!==(Ie=e.coalPrices)&&void 0!==Ie?Ie:Oe[me.Coal];Te=Ue[Ue.length-e.coalMarket]}break;case me.Oil:if(Ee){a.oilLeft--,e.oilMarketNorth++;var We=e.oilPricesNorth;Te=We[We.length-e.oilMarketNorth]}else{var Fe;a.oilLeft--,e.oilMarket++;var Ye=null!==(Fe=e.oilPrices)&&void 0!==Fe?Fe:Oe[me.Oil];Te=Ye[Ye.length-e.oilMarket]}break;case me.Garbage:if(Ee){a.garbageLeft--,e.garbageMarketNorth++;var Ve=e.garbagePricesNorth;Te=Ve[Ve.length-e.garbageMarketNorth]}else{var Je;a.garbageLeft--,e.garbageMarket++;var $e=null!==(Je=e.garbagePrices)&&void 0!==Je?Je:Oe[me.Garbage];if(Te=$e[$e.length-e.garbageMarket],"Central Europe"==e.map.name){var qe=a.cities.filter((function(e){return"Wien"==e.name}));(null===qe||void 0===qe?void 0:qe.length)>0&&Te--}}break;case me.Uranium:var Ze;a.uraniumLeft--,e.uraniumMarket++;var Xe=null!==(Ze=e.uraniumPrices)&&void 0!==Ze?Ze:Oe[me.Uranium];Te=Xe[Xe.length-e.uraniumMarket];break}if(a.money+=Te,e.options.trackTotalSpent&&(a.totalSpentResources-=Te),"India"==e.map.name&&(e.chosenResource=void 0),e.log.pop(),"Korea"==e.map.name&&e.chosenSide){for(var Qe=!1,en=e.log.length-1;en>=0;en--){var nn=e.log[en];if("move"===nn.type){Qe=nn.player===t&&nn.move.name===Me.BuyResource;break}}Qe||(e.chosenSide=void 0)}break;case Me.Build:var tn,rn,on=!1;if("Japan"===e.map.name&&a.usedFreeJump)(1===e.round&&a.cities.length>=2&&null!==(tn=null===(rn=e.map.startingCities)||void 0===rn?void 0:rn.includes(Ne.data.name))&&void 0!==tn&&tn||Ne.data.freeJump)&&(on=!0);a.cities.pop(),a.money+=Ne.data.price;var an=e.players.filter((function(e){return e.cities.find((function(e){return e.name==Ne.data.name}))})).length;e.options.trackTotalSpent&&(a.totalSpentCities-=10+5*an,a.totalSpentConnections-=Ne.data.price-(10+5*an)),e.log.pop(),"India"==e.map.name&&e.citiesBuiltInCurrentRound--,on&&(a.usedFreeJump=!1);break;case Me.UsePowerPlant:a.powerPlantsNotUsed.push(Ne.data.powerPlant),Ne.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-=Ne.data.citiesPowered;var sn=e.log.slice().reverse(),cn=e.log.length-sn.findIndex((function(e){return"move"==e.type&&e.player==a.id}))-1;e.log.splice(cn,1);break}}if(a.availableMoves=null,n.name==Me.Undo){var un=e.log.slice().reverse(),ln=un.find((function(e){return"move"==e.type&&e.player==a.id}));a.lastMove=null===ln||void 0===ln?void 0:ln.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=ze(e,e.players[n])})),e}function Zt(e){return e.phase==be.GameEnd}function Xt(e,n){var t=cr(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=ze(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=w(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":qt(r,s.move,s.player,!0);break}}}catch(u){i.e(u)}finally{i.f()}return r}function Qt(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 er(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,M(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=Ne(e.powerPlantsDeck,e.seed),e.phase!=be.Auction)if("Middle East"==e.map.name&&1==e.step){var a=[].concat(M(e.actualMarket),M(e.futureMarket),[n]);a.sort((function(e,n){return e.number-n.number})),e.actualMarket=a.slice(0,4),e.futureMarket=a.slice(4),rr(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(M(e.actualMarket),M(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 er(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(M(e.actualMarket),[n]);c.sort((function(e,n){return e.number-n.number})),e.actualMarket=c}else if(!o){var u=[].concat(M(e.actualMarket),M(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&&tr(e)}}}function nr(e){var n,t;null!==(n=e.manhattanRecyclePile)&&void 0!==n||(e.manhattanRecyclePile=[]),null!==(t=e.manhattanDepletion)&&void 0!==t||(e.manhattanDepletion=0);var r=function(){if(0!=e.futureMarket.length)return e.futureMarket.sort((function(e,n){return e.number-n.number})),e.futureMarket.pop()},o=function(n){while(e.actualMarket.length+e.futureMarket.length<n&&e.powerPlantsDeck.length>0){var t=e.powerPlantsDeck.shift();e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(t),e.log.push({type:"event",event:"Power Plant ".concat(t.number," drawn from the deck.")}),e.futureMarket.push(t)}var r=[].concat(M(e.actualMarket),M(e.futureMarket)).sort((function(e,n){return e.number-n.number}));e.actualMarket=r.slice(0,4),e.futureMarket=r.slice(4)};if(0==e.manhattanDepletion){for(var a=0;a<2;a++){var i=r();if(!i)break;e.manhattanRecyclePile.push(i),e.log.push({type:"event",event:"Setting Power Plant ".concat(i.number," aside on the recycle pile.")})}o(8),0==e.powerPlantsDeck.length&&e.manhattanRecyclePile.length>0&&(e.powerPlantsDeck=Ne(e.manhattanRecyclePile,e.seed+":manhattan-depletion-1"),e.manhattanRecyclePile=[],e.manhattanDepletion=1,e.log.push({type:"event",event:"The draw deck is empty — reshuffling the recycle pile into a new deck."}),o(8))}else if(1==e.manhattanDepletion){var s=r();if(s&&(e.powerPlantsDeck.push(s),e.log.push({type:"event",event:"Putting Power Plant ".concat(s.number," on the bottom of the deck.")})),o(8),0==e.powerPlantsDeck.length){e.manhattanDepletion=2;var c=[].concat(M(e.actualMarket),M(e.futureMarket)).sort((function(e,n){return e.number-n.number}));e.actualMarket=c,e.futureMarket=[],e.log.push({type:"event",event:"The deck is empty for the second time — the entire market is now buyable."})}}else{if(e.futureMarket.length>0){var u=[].concat(M(e.actualMarket),M(e.futureMarket)).sort((function(e,n){return e.number-n.number}));e.actualMarket=u,e.futureMarket=[]}if(e.actualMarket.length>0){var l=e.actualMarket.shift();e.log.push({type:"event",event:"Removing the smallest plant, Power Plant ".concat(l.number,", from the game.")})}}}function tr(e){var n=e.actualMarket.find((function(e){return e.type==ve.Garbage||e.type==ve.Uranium})),t=function(){ir(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";er(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 rr(e){var n=e.futureMarket.pop();e.powerPlantsDeck=Ne(e.powerPlantsDeck,e.seed),e.powerPlantsDeck.push(n),er(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.")}),er(e));var r=e.actualMarket.shift();r&&(e.log.push({type:"event",event:"Power Plant ".concat(r.number," discarded to start step 2.")}),er(e))}function or(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 ar(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;er(e)}while(2==e.players.length&&e.actualMarket.length<2&&3!=e.step)er(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)er(e)}else{var i=Math.max(2,e.players.length-1);while(e.actualMarket.length>i)e.actualMarket.shift()}}function ir(e,n){e.actualMarket.splice(e.actualMarket.findIndex((function(e){return e.number==n.number})),1)}function sr(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"India"==n?qe.find((function(n){return n.number==e})):$e.find((function(n){return n.number==e}))}function cr(e){var n=Ft(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 ur(e){var n;return'<span style="background-color: '.concat(null!==(n=e.color)&&void 0!==n?n:xe[e.id],'; font-weight: bold; padding: 0 3px;">').concat(e.name,"</span>")}function lr(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 dr(e){e.players.forEach((function(n){n.citiesPowered=fr(e,n)}))}function fr(e,n){for(var t=n.powerPlants.filter((function(n){return!ke(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(hr(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 hr(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 pr(e){if(("Baden-Württemberg"==e.map.name||1==e.round)&&yr(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.forEach((function(e){e.skipAuction=!1})),e.discountBonusPlayer=void 0,"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(),er(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)rr(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,or(e),e.actualMarket=[].concat(M(e.actualMarket),M(e.futureMarket)),e.futureMarket=[]}e.phase=be.Resources,mr(e,e.playerOrder[e.players.length-1])}function gr(e,n,t){n.powerPlants.push(e.chosenPowerPlant),n.money-=t,e.options.trackTotalSpent&&(n.totalSpentPlants+=t),"Manhattan"!=e.map.name||"recharged"!=e.options.variant||1!=e.minimunBid||n.isDropped?(n.skipAuction=!0,e.discountBonusPlayer==n.id&&(e.discountBonusPlayer=void 0)):e.discountBonusPlayer=n.id,Qt(n),e.log.push({type:"event",event:"".concat(n.name," wins the bid and pays ").concat(t,"."),pretty:"".concat(ur(n),' wins the bid and pays <span style="color: green">$').concat(t,"</span>.")}),ir(e,e.chosenPowerPlant),e.chosenPowerPlant=e.currentBid=void 0}function yr(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,M(e.powerPlants.map((function(e){return e.number}))))-Math.max.apply(Math,M(n.powerPlants.map((function(e){return e.number})))):t-r})).map((function(e){return e.id})).reverse()}function mr(e,n){e.currentPlayers=[n],e.players[n].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[n].passed=!0,vr(e))}function vr(e){e.phase==be.Auction?void 0==e.chosenPowerPlant?xr(e):br(e):wr(e)}function br(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,br(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}))&&br(e)}function wr(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,wr(e))}function xr(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}))&&xr(e)}function kr(e){if(!e.coalResupply){var n=gt.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 Pr(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,M(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,M(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,M(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];gr(e,d,a),(Pe(e,d)>4||e.players.length>2&&Pe(e,d)>3)&&!d.isDropped?mr(e,d.id):("China"==e.map.name&&3!=e.step||er(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),xr(e,!0)):pr(e))}}var Mr,_r=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)])},Sr=[];(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"})(Mr||(Mr={}));var Cr=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe({default:function(){return{x:0,y:0,rotate:0}}})],Cr.prototype,"targetState",void 0),z([pe()],Cr.prototype,"pieceId",void 0),z([pe()],Cr.prototype,"transparent",void 0),z([ie()],Cr.prototype,"communicator",void 0),z([ie()],Cr.prototype,"ui",void 0),z([ge("dragging"),ge("targetState",{immediate:!0})],Cr.prototype,"onTargetChanged",null),Cr=z([oe({created:function(){},mounted:function(){this.mounted=!0},beforeDestroy:function(){this.onTransitionEnd()}})],Cr);var Br,Rr,Ar=Cr,Or=Ar;function Lr(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 Gr=Lr(Or,Br,Rr,!1,null,null,null),jr=Gr.exports,Dr=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],Dr.prototype,"owner",void 0),z([pe()],Dr.prototype,"powerPlant",void 0),z([pe()],Dr.prototype,"canClick",void 0),z([pe({default:!1})],Dr.prototype,"hasDiscount",void 0),Dr=z([oe({created:function(){this.pieceType=Mr.Card}})],Dr);var Nr=Dr,zr=Nr,Tr=(t("11ac"),Lr(zr,_r,Sr,!1,null,null,null)),Er=Tr.exports,Kr=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")])])},Ir=[],Ur=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],Ur.prototype,"canClick",void 0),z([pe({default:.08})],Ur.prototype,"scale",void 0),Ur=z([oe({created:function(){this.pieceType=Mr.Coal}})],Ur);var Wr=Ur,Hr=Wr,Fr=Lr(Hr,Kr,Ir,!1,null,null,null),Yr=Fr.exports,Vr=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)])},Jr=[],$r=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],$r.prototype,"canClick",void 0),z([pe({default:1})],$r.prototype,"scale",void 0),$r=z([oe({created:function(){this.pieceType=Mr.Garbage}})],$r);var qr=$r,Zr=qr,Xr=Lr(Zr,Vr,Jr,!1,null,null,null),Qr=Xr.exports,eo=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("+e.scale+")"}},[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")])])},no=[],to=function(e){A(t,e);var n=N(t);function t(){var e;_(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),"scale",void 0),i(B(e),"owner",void 0),i(B(e),"ownerName",void 0),e}return t}(q(jr));z([se()],to.prototype,"player",void 0),z([pe()],to.prototype,"color",void 0),z([pe({default:.035})],to.prototype,"scale",void 0),z([pe()],to.prototype,"owner",void 0),z([pe()],to.prototype,"ownerName",void 0),to=z([oe({created:function(){this.pieceType=Mr.House}})],to);var ro=to,oo=ro,ao=Lr(oo,eo,no,!1,null,null,null),io=ao.exports,so=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")])])},co=[],uo=function(e){A(t,e);var n=N(t);function t(){return _(this,t),n.apply(this,arguments)}return t}(q(jr));uo=z([oe({created:function(){this.pieceType=Mr.Hybrid}})],uo);var lo=uo,fo=lo,ho=Lr(fo,so,co,!1,null,null,null),po=(ho.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)])}),go=[],yo=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],yo.prototype,"canClick",void 0),z([pe({default:1})],yo.prototype,"scale",void 0),yo=z([oe({created:function(){this.pieceType=Mr.Oil}})],yo);var mo=yo,vo=mo,bo=Lr(vo,po,go,!1,null,null,null),wo=bo.exports,xo=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")])])},ko=[],Po=function(e){A(t,e);var n=N(t);function t(){var e;_(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(jr));z([pe()],Po.prototype,"canClick",void 0),Po=z([oe({created:function(){this.pieceType=Mr.Uranium}})],Po);var Mo=Po,_o=Mo,So=Lr(_o,xo,ko,!1,null,null,null),Co=So.exports,Bo=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))])])},Ro=[],Ao=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Ao.prototype,"text",void 0),z([pe()],Ao.prototype,"width",void 0),z([pe({default:!0})],Ao.prototype,"enabled",void 0),Ao=z([oe],Ao);var Oo=Ao,Lo=Oo,Go=Lr(Lo,Bo,Ro,!1,null,null,null),jo=Go.exports,Do=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")])])},No=[],zo=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],zo.prototype,"isOn",void 0),zo=z([oe],zo);var To=zo,Eo=To,Ko=Lr(Eo,Do,No,!1,null,null,null),Io=Ko.exports,Uo=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")])])},Wo=[],Ho=function(e){A(t,e);var n=N(t);function t(){return _(this,t),n.apply(this,arguments)}return t}(d.a);Ho=z([oe],Ho);var Fo=Ho,Yo=Fo,Vo=Lr(Yo,Uo,Wo,!1,null,null,null),Jo=Vo.exports,$o=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")])])},qo=[],Zo=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Zo.prototype,"enabled",void 0),z([pe()],Zo.prototype,"highlightButton",void 0),z([pe()],Zo.prototype,"text",void 0),Zo=z([oe],Zo);var Xo=Zo,Qo=Xo,ea=Lr(Qo,$o,qo,!1,null,null,null),na=ea.exports,ta=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")])])},ra=[],oa=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],oa.prototype,"isOn",void 0),oa=z([oe],oa);var aa=oa,ia=aa,sa=Lr(ia,ta,ra,!1,null,null,null),ca=sa.exports,ua=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")])])},la=[],da=function(e){A(t,e);var n=N(t);function t(){return _(this,t),n.apply(this,arguments)}return t}(d.a);da=z([oe],da);var fa=da,ha=fa,pa=Lr(ha,ua,la,!1,null,null,null),ga=pa.exports,ya=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")])])},ma=[],va=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],va.prototype,"enabled",void 0),z([pe()],va.prototype,"highlightButton",void 0),va=z([oe],va);var ba=va,wa=ba,xa=Lr(wa,ya,ma,!1,null,null,null),ka=xa.exports,Pa=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)},Ma=[],_a=function(e){A(t,e);var n=N(t);function t(){var e;_(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[Me.DiscardPowerPlant])return e.number!==this.player.powerPlants[this.player.powerPlants.length-1].number;if(null===(t=this.player.availableMoves)||void 0===t||!t[Me.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([pe()],_a.prototype,"color",void 0),z([pe()],_a.prototype,"avatar",void 0),z([pe()],_a.prototype,"player",void 0),z([pe()],_a.prototype,"isCurrentPlayer",void 0),z([pe()],_a.prototype,"owner",void 0),z([pe()],_a.prototype,"ended",void 0),z([pe()],_a.prototype,"isPlayer",void 0),z([pe()],_a.prototype,"ranking",void 0),z([pe()],_a.prototype,"showMoney",void 0),z([pe()],_a.prototype,"showBid",void 0),z([pe()],_a.prototype,"phase",void 0),z([pe()],_a.prototype,"isAustralia",void 0),z([ie()],_a.prototype,"preferences",void 0),_a=z([oe({components:{Coal:Yr,Oil:wo,Garbage:Qr,Uranium:Co,Card:Er}})],_a);var Sa=_a,Ca=Sa,Ba=Lr(Ca,Pa,Ma,!1,null,null,null),Ra=Ba.exports,Aa=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")])])])},Oa=[],La=function(e){A(t,e);var n=N(t);function t(){var e;_(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:"onMinValueChanged",value:function(){this.value=Math.max(this.value,this.minValue)}},{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([pe()],La.prototype,"minValue",void 0),z([pe()],La.prototype,"maxValue",void 0),z([ge("minValue")],La.prototype,"onMinValueChanged",null),La=z([oe({created:function(){this.value=this.minValue}})],La);var Ga=La,ja=Ga,Da=(t("85cf"),Lr(ja,Aa,Oa,!1,null,null,null)),Na=Da.exports,za=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",{key:"calc"+e.chosenPowerPlant.powerPlant.number,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)},Ta=[],Ea=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Ea.prototype,"cardsLeft",void 0),z([pe()],Ea.prototype,"nextCardWeak",void 0),z([pe()],Ea.prototype,"plantDiscountActive",void 0),z([pe()],Ea.prototype,"canBid",void 0),z([pe()],Ea.prototype,"canChoose",void 0),z([pe()],Ea.prototype,"chooseablePowerPlants",void 0),z([pe()],Ea.prototype,"minBid",void 0),z([pe()],Ea.prototype,"maxBid",void 0),z([ie()],Ea.prototype,"preferences",void 0),Ea=z([oe({components:{Card:Er,Calculator:Na}})],Ea);var Ka=Ea,Ia=Ka,Ua=Lr(Ia,za,Ta,!1,null,null,null),Wa=Ua.exports,Ha=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)},Fa=[],Ya=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Ya.prototype,"playerColors",void 0),Ya=z([oe({components:{House:io}})],Ya);var Va=Ya,Ja=Va,$a=Lr(Ja,Ha,Fa,!1,null,null,null),qa=$a.exports,Za=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)},Xa=[],Qa=function(e){A(t,e);var n=N(t);function t(){var e;_(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([pe()],Qa.prototype,"citiesToStep2",void 0),z([pe()],Qa.prototype,"citiesToEndGame",void 0),z([pe()],Qa.prototype,"playerColors",void 0),Qa=z([oe({components:{House:io}})],Qa);var ei=Qa,ni=ei,ti=Lr(ni,Za,Xa,!1,null,null,null),ri=ti.exports,oi=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&&n.slotCosts&&n.slotCosts.length>=2?t("g",{key:n.name+"_tile"},[t("rect",{class:[{canClick:e.canBuild(n)||e.canPickRegion(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){return e.onCityClick(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&&n.slotCosts&&1===n.slotCosts.length?t("g",{key:n.name+"_mtile"},[t("rect",{class:[{canClick:e.canBuild(n)}],attrs:{x:n.x-13,y:n.y-13,width:"26",height:"26",rx:"5",fill:e.isBlocked(n)?"#555555":"white","fill-opacity":e.isBlocked(n)?.88:.82,stroke:"black","stroke-width":"1.5"},on:{click:function(t){e.canBuild(n)&&e.build(n)}}},[t("title",[e._v(" "+e._s(n.name)),e.isBlocked(n)?[e._v(" — blocked for this player count (transit only)")]:[e._v(" — build for "+e._s(n.slotCosts[0])+" (+ flat 5 per transited space)")]],2)]),t("text",{attrs:{x:n.x,y:n.y,"font-size":"17","font-weight":"bold","text-anchor":"middle","dominant-baseline":"central",fill:e.isBlocked(n)?"#dddddd":"black"}},[e._v(" "+e._s(n.slotCosts[0])+" ")])]):e._e()]})),e._l(e.cities,(function(n){return[null==n.connectionCost?t("circle",{key:n.name+"_circle2",class:[{canClick:e.canBuild(n)||e.canPickRegion(n)}],attrs:{r:"20",cx:n.x,cy:n.y,fill:"gray"},on:{click:function(t){return e.onCityClick(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,scale:e.scale}})]})),e._l(e.cities,(function(n){return[null!=n.connectionCost&&n.slotCosts&&n.slotCosts.length>=2?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()]}))],e._l(e.cities,(function(n){return[e.canPickRegion(n)?t("circle",{key:n.name+"_pickRegion",staticClass:"canClick",attrs:{r:"18",cx:n.x,cy:n.y,fill:"none",stroke:"gold","stroke-width":"5px"},on:{click:function(t){return e.onCityClick(n)}}}):e._e()]}))],2)},ai=[],ii=function(e){A(t,e);var n=N(t);function t(){var e;_(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),"blockedCities",void 0),i(B(e),"pickableRegions",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,c,u=e.map.cities.find((function(e){return e.name==t.name})),l=null!=u.connectionCost,d=l&&1===(null===(o=u.slotCosts)||void 0===o?void 0:o.length),f=2===(null===(a=u.slotCosts)||void 0===a?void 0:a.length)&&15===u.slotCosts[0];if(d)c=.085,i=-199*c,s=-230*c;else if(l){var h=n.nodeSlotPos(t.position);i=h.dx-7,s=h.dy-8}else f?0==t.position?(i=-15,s=-4):(i=1,s=-4):0==t.position?(i=-6,s=-18):1==t.position?(i=-15,s=-4):(i=1,s=-4);n.houses.push({id:r+"_"+t.name,x:u.x+i,y:u.y+s,color:n.playerColors[r],owner:r,scale:c})}))}))}},{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:"isBlocked",value:function(e){return!!this.blockedCities&&this.blockedCities.includes(e.name)}},{key:"build",value:function(e){this.$emit("build",e)}},{key:"canPickRegion",value:function(e){return!!this.pickableRegions&&this.pickableRegions.includes(e.region)}},{key:"pickRegion",value:function(e){this.$emit("pickRegion",e.region)}},{key:"onCityClick",value:function(e){this.canBuild(e)?this.build(e):this.canPickRegion(e)&&this.pickRegion(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([pe()],ii.prototype,"polygons",void 0),z([pe()],ii.prototype,"cities",void 0),z([pe()],ii.prototype,"connections",void 0),z([pe()],ii.prototype,"playerColors",void 0),z([pe()],ii.prototype,"buildableCities",void 0),z([pe()],ii.prototype,"blockedCities",void 0),z([pe()],ii.prototype,"pickableRegions",void 0),z([pe()],ii.prototype,"devBackdrop",void 0),z([pe({default:0})],ii.prototype,"mapRotation",void 0),z([ie()],ii.prototype,"preferences",void 0),ii=z([oe({components:{House:io}})],ii);var si=ii,ci=si,ui=Lr(ci,oi,ai,!1,null,null,null),li=ui.exports,di=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)},fi=[],hi=t("bcba"),pi=function(e){A(t,e);var n=N(t);function t(){var e;_(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(hi["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(hi["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 h=e.oilPrices.filter((function(e){return e>1})).length,p=e.oilPrices.filter((function(e){return 1==e})).length,g=Math.min(h,e.oilMarket);Array(h).fill(0).forEach((function(e,n){var t=n+(p-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([pe()],pi.prototype,"resourceResupply",void 0),z([pe()],pi.prototype,"resourceResupplyNorth",void 0),z([pe()],pi.prototype,"isUsaRecharged",void 0),z([pe()],pi.prototype,"isMiddleEast",void 0),z([pe()],pi.prototype,"isIndiaResourceMarket",void 0),z([pe()],pi.prototype,"availableSurplusOil",void 0),z([pe()],pi.prototype,"buyableResources",void 0),z([pe()],pi.prototype,"coalStorage",void 0),z([ie()],pi.prototype,"preferences",void 0),pi=z([oe({components:{Coal:Yr,Oil:wo,Garbage:Qr,Uranium:Co}})],pi);var gi=pi,yi=gi,mi=Lr(yi,di,fi,!1,null,null,null),vi=mi.exports,bi=function(e){A(t,e);var n=N(t);function t(){var e;_(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),"defaultPlayerColors",["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:"playerColors",get:function(){var e=M(this.defaultPlayerColors);if(this.G){var n,t=w(this.G.players);try{for(t.s();!(n=t.n()).done;){var r=n.value;r.color&&(e[r.id]=r.color)}}catch(o){t.e(o)}finally{t.f()}}return e}},{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==Me.Pass&&this.G.currentPlayers.includes(this.player)?document.getElementById("notification").cloneNode(!0).play():c.name==Me.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==Me.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:Me.Pass,data:!0})}},{key:"undo",value:function(){this.sendMove({name:Me.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:Me.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:Me.BuyResource,data:n})}},{key:"bid",value:function(e){this.sendMove({name:Me.Bid,data:e})}},{key:"build",value:function(e){var n=this.G.players[this.player],t=n.availableMoves,r=t[Me.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:Me.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[Me.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:Me.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:Me.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:Me.DiscardPowerPlant,data:this.discardedPowerPlant.number,extra:e}):this.sendMove({name:Me.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:Me.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:Me.DiscardPowerPlant,data:e.number});if(0==o.coalLeft)return void this.sendMove({name:Me.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:Me.DiscardPowerPlant,data:e.number});if(0==o.oilLeft)return void this.sendMove({name:Me.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:Me.DiscardPowerPlant,data:e.number});if(0==o.garbageLeft)return void this.sendMove({name:Me.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:Me.DiscardPowerPlant,data:e.number});if(0==o.uraniumLeft)return void this.sendMove({name:Me.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:Me.DiscardPowerPlant,data:e.number});if(o.coalLeft+o.oilLeft==0)return void this.sendMove({name:Me.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:Me.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:Me.DiscardResources,data:e})}},{key:"sendMove",value:function(e){this.paused||this.emitter.emit("move",e)}},{key:"gameEnded",value:function(e){return Zt(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[Me.Pass]}},{key:"canUndo",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[Me.Undo]}},{key:"canBid",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[Me.Bid]}},{key:"canChoose",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[Me.ChoosePowerPlant]}},{key:"buyableResources",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[Me.BuyResource]||[]}},{key:"canBuyResource",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return e?!!t[Me.BuyResource]&&t[Me.BuyResource].find((function(n){return n.resource==e})):!!t[Me.BuyResource]}},{key:"getChooseablePowerPlants",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[Me.ChoosePowerPlant]}},{key:"getBuildableCities",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[Me.Build]&&n[Me.Build].map((function(e){return e.name}))||[]}},{key:"getPickableRegions",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[Me.ChooseRegion]||[]}},{key:"pickRegion",value:function(e){this.sendMove({name:Me.ChooseRegion,data:e})}},{key:"canChooseColor",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player];return!!e.availableMoves[Me.ChooseColor]}},{key:"getChooseableColors",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player];return e.availableMoves[Me.ChooseColor]||[]}},{key:"chooseColor",value:function(e){this.sendMove({name:Me.ChooseColor,data:e})}},{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=w(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)===Me.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[Me.Build]&&t[Me.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[Me.UsePowerPlant]&&o[Me.UsePowerPlant].find((function(n){return n.powerPlant==e.number})):(null===(t=this.G)||void 0===t?void 0:t.phase)==be.Auction?!!o[Me.DiscardPowerPlant]&&o[Me.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=w(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&&this.G.phase==be.ColorSelection&&void 0!==this.player&&this.G.currentPlayers.includes(this.player))return"Choose your color.";if(this.G&&this.G.phase==be.RegionSelection&&void 0!==this.player&&this.G.currentPlayers.includes(this.player)){var n=this.G.regionDraft;return n?"Choose a region to play in (".concat(n.picked.length+1," of ").concat(n.regionsNeeded,")."):"Choose a region to play in."}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 t=this.G.players[this.player];return t.availableMoves[Me.ChoosePowerPlant]?t.availableMoves[Me.Pass]?"Choose a Power Plant to start an auction, or pass.":"Choose a Power Plant to start an auction.":t.availableMoves[Me.Bid]?"It's your turn to bid!":t.availableMoves[Me.BuyResource]?"Buy resources on the market, or pass.":t.availableMoves[Me.Build]?"Build a new city, or pass.":t.availableMoves[Me.UsePowerPlant]?0!=t.resourcesUsed.length?"Choose which resources to spend.":"Choose which Power Plant to use.":t.availableMoves[Me.DiscardPowerPlant]?"Choose which Power Plant to discard.":t.availableMoves[Me.DiscardResources]?"Choose which resources to discard.":"It's your turn!"}var r=this.G.log[this.G.log.length-1];return"move"==r.type?r.simple:"event"==r.type?r.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",M(this.logReversedSimple).reverse())}},{key:"sortedPlayers",get:function(){return lr(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,M(i))+Math.max.apply(Math,M(i)))/2,u=(Math.min.apply(Math,M(s))+Math.max.apply(Math,M(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([pe()],bi.prototype,"state",void 0),z([pe(),de()],bi.prototype,"player",void 0),z([pe()],bi.prototype,"emitter",void 0),z([pe()],bi.prototype,"avatars",void 0),z([pe(),de()],bi.prototype,"preferences",void 0),z([le()],bi.prototype,"ui",void 0),z([le()],bi.prototype,"communicator",void 0),z([de()],bi.prototype,"G",void 0),z([ye()],bi.prototype,"powerPlantMarket",void 0),z([ye()],bi.prototype,"playerOrder",void 0),z([ye()],bi.prototype,"cityCount",void 0),z([ye()],bi.prototype,"map",void 0),z([ye()],bi.prototype,"resources",void 0),z([ge("state",{immediate:!0})],bi.prototype,"onStateChanged",null),z([ge("ui.waitingAnimations")],bi.prototype,"updateUI",null),z([ge("G.log")],bi.prototype,"onLogChanged",null),bi=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(Xt(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:Ra,Card:Er,House:io,Coal:Yr,Oil:wo,Garbage:Qr,Uranium:Co,PassButton:na,UndoButton:ka,LogButton:Jo,SoundButton:ca,HelpButton:Io,RulesButton:ga,Button:jo,Calculator:Na,PowerPlantMarket:Wa,PlayerOrder:qa,CityCount:ri,Map:li,Resources:vi}})],bi);var wi=bi,xi=wi,ki=(t("bb9a"),Lr(xi,f,h,!1,null,null,null)),Pi=ki.exports;function Mi(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(Pi,{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 _i=Mi;"undefined"!==typeof window&&(window.powergrid={launch:_i});var Si=_i;n["default"]=Si},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,h=Math.min,p=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=h(f(a(n),0),b-w)),b+t-r>p)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"),h=f.UNSUPPORTED_Y,p=[].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":""),h=0,g=new RegExp(e.source,f+"g");while(s=d.call(g,r)){if(c=g.lastIndex,c>h&&(l.push(r.slice(h,s.index)),s.length>1&&s.index<r.length&&p.apply(l,s.slice(1)),u=s[0].length,h=c,l.length>=a))break;g.lastIndex===s.index&&g.lastIndex++}return h===r.length?!u&&g.test("")||l.push(""):l.push(r.slice(h)),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),p=s(d,RegExp),m=d.unicode,v=(d.ignoreCase?"i":"")+(d.multiline?"m":"")+(d.unicode?"u":"")+(h?"g":"y"),b=new p(h?"^(?:"+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,P=[];while(k<f.length){b.lastIndex=h?0:k;var M,_=l(b,h?f.slice(k):f);if(null===_||(M=g(u(b.lastIndex+(h?k:0)),f.length))===x)k=c(f,k,m);else{if(P.push(f.slice(x,k)),P.length===w)return P;for(var S=1;S<=_.length-1;S++)if(P.push(_[S]),P.length===w)return P;k=x=M}}return P.push(f.slice(x)),P}]}),h)},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,h=5==e||d;return function(p,g,y,m){for(var v,b,w=a(p),x=o(w),k=r(g,y,3),P=i(x.length),M=0,_=m||s,S=n?_(p,P):t||f?_(p,0):void 0;P>M;M++)if((h||M in x)&&(v=x[M],b=k(v,M,w),e))if(n)S[M]=b;else if(b)switch(e){case 3:return!0;case 5:return v;case 6:return M;case 2:c.call(S,v)}else switch(e){case 4:return!1;case 7:c.call(S,v)}return d?-1:u||l?l:S}};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/>