powergrid-viewer 1.10.0 → 1.10.1

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 F(){return"undefined"!==typeof Reflect&&Reflect.defineMetadata&&Reflect.getOwnMetadataKeys}function Y(e,n){H(e,n),Object.getOwnPropertyNames(n.prototype).forEach((function(t){H(e.prototype,n.prototype,t)})),Object.getOwnPropertyNames(n).forEach((function(t){H(e,n,t)}))}function H(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),F()&&Y(i,e),i}var ne={prototype:!0,arguments:!0,callee:!0,caller:!0};function te(e,n,t){Object.getOwnPropertyNames(n).forEach((function(r){if(!ne[r]){var o=Object.getOwnPropertyDescriptor(e,r);if(!o||o.configurable){var a=Object.getOwnPropertyDescriptor(n,r);if(!J){if("cid"===r)return;var i=Object.getOwnPropertyDescriptor(t,r);if(!Z(a.value)&&i&&i.value===a.value)return}0,Object.defineProperty(e,r,a)}}}))}function re(e){return"function"===typeof e?ee(e):function(n){return ee(n,e)}}re.registerHooks=function(e){Q.push.apply(Q,K(e))};var oe=re,ae="__reactiveInject__";function ie(e){return $((function(n,t){"undefined"===typeof n.inject&&(n.inject={}),Array.isArray(n.inject)||(n.inject[t]=e||t)}))}function se(e){return $((function(n,t){if("undefined"===typeof n.inject&&(n.inject={}),!Array.isArray(n.inject)){var r=e?e.from||e:t,o=!!e&&e.default||void 0;n.computed||(n.computed={}),n.computed[t]=function(){var e=this[ae];return e?e[r]:o},n.inject[ae]=ae}}))}function ce(e){var n=function(){var t=this,r="function"===typeof e?e.call(this):e;for(var o in r=Object.create(r||null),r[ae]=this[ae]||{},n.managed)r[n.managed[o]]=this[o];var a=function(e){r[n.managedReactive[e]]=i[e],Object.defineProperty(r[ae],n.managedReactive[e],{enumerable:!0,get:function(){return t[e]}})},i=this;for(var o in n.managedReactive)a(o);return r};return n.managed={},n.managedReactive={},n}function ue(e){return"function"!==typeof e||!e.managed&&!e.managedReactive}function le(e){return $((function(n,t){var r=n.provide;ue(r)&&(r=n.provide=ce(r)),r.managed[t]=e||t}))}function de(e){return $((function(n,t){var r=n.provide;Array.isArray(n.inject)||(n.inject=n.inject||{},n.inject[ae]={from:ae,default:{}}),ue(r)&&(r=n.provide=ce(r)),r.managedReactive[t]=e||t}))}var fe="undefined"!==typeof Reflect&&"undefined"!==typeof Reflect.getMetadata;function pe(e,n,t){if(fe&&!Array.isArray(e)&&"function"!==typeof e&&"undefined"===typeof e.type){var r=Reflect.getMetadata("design:type",n,t);r!==Object&&(e.type=r)}}function he(e){return void 0===e&&(e={}),function(n,t){pe(e,n,t),$((function(n,t){(n.props||(n.props={}))[t]=e}))(n,t)}}function ge(e,n){void 0===n&&(n={});var t=n.deep,r=void 0!==t&&t,o=n.immediate,a=void 0!==o&&o;return $((function(n,t){"object"!==typeof n.watch&&(n.watch=Object.create(null));var o=n.watch;"object"!==typeof o[e]||Array.isArray(o[e])?"undefined"===typeof o[e]&&(o[e]=[]):o[e]=[o[e]],o[e].push({handler:t,deep:r,immediate:a})}))}function ye(e){return $((function(n,t){n.computed=n.computed||{},n.computed[t]={cache:!1,get:function(){return this.$refs[e||t]}}}))}t("22ea");var me,ve,be,we=t("0b6f");function xe(e,n){return"Australia"===e.map.name&&n.type===ve.Uranium}function ke(e,n){return n.powerPlants.filter((function(n){return!xe(e,n)})).length}(function(e){e["Coal"]="coal",e["Oil"]="oil",e["Garbage"]="garbage",e["Uranium"]="uranium"})(me||(me={})),function(e){e[e["Coal"]=0]="Coal",e[e["Oil"]=1]="Oil",e[e["Garbage"]=2]="Garbage",e[e["Uranium"]=3]="Uranium",e[e["Hybrid"]=4]="Hybrid",e[e["Wind"]=5]="Wind",e[e["Nuclear"]=6]="Nuclear",e[e["Step3"]=7]="Step3"}(ve||(ve={})),function(e){e["Order"]="Order",e["Auction"]="Auction",e["Resources"]="Resources",e["Building"]="Building",e["Bureaucracy"]="Bureaucracy",e["GameEnd"]="Game End"}(be||(be={}));var _e,Pe,Se=[2,3,4,5,6,7];function Me(e){for(var n=e.length-1;n>=0;n--)if(e[n]<2)return n;return-1}function Ce(e,n){if(!e.uraniumMineMarket)return{income:0,price:0,mines:0,cities:0};var t=n.powerPlants.filter((function(n){return xe(e,n)}));if(0===t.length)return{income:0,price:0,mines:0,cities:0};var r=t.reduce((function(e,n){return e+n.citiesPowered}),0),o=Me(e.uraniumMineMarket);if(o<0)return{income:0,price:0,mines:t.length,cities:r};var a=Se[o],i=a*r;n.money+=i,e.options.trackTotalSpent&&(n.totalIncome+=i);for(var s=0;s<t.length;s++){var c=Me(e.uraniumMineMarket);if(c<0)break;e.uraniumMineMarket[c]++}return{income:i,price:a,mines:t.length,cities:r}}function Be(e,n){if(!e.uraniumMineMarket)return 0;for(var t=0,r=0;r<n;r++){for(var o=-1,a=0;a<e.uraniumMineMarket.length;a++)if(e.uraniumMineMarket[a]>0){o=a;break}if(o<0)break;e.uraniumMineMarket[o]--,t++}return t}(function(e){e["ChoosePowerPlant"]="ChoosePowerPlant",e["Bid"]="Bid",e["DiscardPowerPlant"]="DiscardPowerPlant",e["DiscardResources"]="DiscardResources",e["BuyResource"]="BuyResource",e["Build"]="Build",e["UsePowerPlant"]="UsePowerPlant",e["Pass"]="Pass",e["Undo"]="Undo"})(_e||(_e={}));var Re=(Pe={},i(Pe,me.Coal,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Oil,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Garbage,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Uranium,[1,2,3,4,5,6,7,8,10,12,14,16]),Pe),Ae=Re,Le=(t("9cd8"),t("3a04")),Oe=t.n(Le);function je(e){}function Ge(e,n){var t,r,o=1/0,a=P(e);try{for(a.s();!(r=a.n()).done;){var i=r.value,s=n(i);s<o&&(t=i,o=s)}}catch(c){a.e(c)}finally{a.f()}return t}function De(e,n){var t=Oe.a.alea(n),r=new Map;return e.forEach((function(e,n){var o=t.int32();while(r.has(o))o=t.int32();r.set(o,n)})),_(r.keys()).sort().map((function(n){return e[r.get(n)]}))}function 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)!=_e.Pass||e.phase==be.Bureaucracy&&(null===(r=n.lastMove)||void 0===r?void 0:r.name)==_e.UsePowerPlant)&&(o[_e.Undo]=[!0,!1]));switch(e.phase){case be.Auction:if(ke(e,n)>4||e.players.length>2&&ke(e,n)>3)o[_e.DiscardPowerPlant]=n.powerPlants.filter((function(t,r){return r!=n.powerPlants.length-1&&!xe(e,t)})).map((function(e){return e.number}));else{var i=[],s=Math.max(0,n.oilLeft-n.oilCapacity);if(n.coalCapacity+n.hybridCapacity<n.coalLeft+s&&i.push(me.Coal),s=Math.max(0,n.coalLeft-n.coalCapacity),n.oilCapacity+n.hybridCapacity<n.oilLeft+s&&i.push(me.Oil),n.garbageCapacity<n.garbageLeft&&i.push(me.Garbage),n.uraniumCapacity<n.uraniumLeft&&i.push(me.Uranium),i.length>0)o[_e.DiscardResources]=i;else if(void 0==e.chosenPowerPlant){var c=e.actualMarket.filter((function(e){return n.money>=e.number}));if("Spain & Portugal"==e.map.name){var u=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));u.every((function(e){return"yellow"==e.region}))&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("Central Europe"==e.map.name){var l=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"green"==e.region||"brown"==e.region||"purple"==e.region}));0==l.length&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("UK & Ireland"==e.map.name){var d=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));d.every((function(e){return"green"==e.region}))&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("Northern Europe"==e.map.name){var f=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"purple"==e.region||"yellow"==e.region||"brown"==e.region||"pink"==e.region}));0==f.length&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}c.length>0&&(o[_e.ChoosePowerPlant]=c.map((function(e){return e.number}))),e.round>1&&(o[_e.Pass]=[!0])}else{if(e.options.fastBid?e.minimunBid<=n.money&&(o[_e.Bid]=Object(we["range"])(e.minimunBid,n.money+1)):e.currentBid?e.currentBid<n.money&&(o[_e.Bid]=Object(we["range"])(e.currentBid+1,n.money+1)):o[_e.Bid]=Object(we["range"])(e.minimunBid,n.money+1),"Spain & Portugal"==e.map.name){var p=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));p.every((function(e){return"yellow"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("Central Europe"==e.map.name){var h=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"green"==e.region||"brown"==e.region||"purple"==e.region}));0==h.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("UK & Ireland"==e.map.name){var g=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));g.every((function(e){return"green"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("Northern Europe"==e.map.name){var y=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"purple"==e.region||"yellow"==e.region||"brown"==e.region||"pink"==e.region}));0==y.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}e.options.fastBid?n.id!=e.auctioningPlayer&&(o[_e.Pass]=[!0]):null!=e.currentBid&&(o[_e.Pass]=[!0])}}break;case be.Resources:if("India"==e.map.name&&void 0!==e.chosenResource){o[_e.Pass]=[!0];break}var m,v=[];m=e.map.maxPriceAvailable?e.map.maxPriceAvailable[e.step-1]:16;var b=void 0!==e.coalResupplyNorth,w=!b||"north"!==e.chosenSide,x=b&&"south"!==e.chosenSide;if(w&&e.coalMarket>0){var k,P=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0,S=null!==(k=e.coalPrices)&&void 0!==k?k:Ae[me.Coal],M=S[S.length-e.coalMarket];n.money>=M&&n.coalCapacity+n.hybridCapacity>P+n.coalLeft&&M<=m&&v.push(b?{resource:me.Coal,side:"south"}:{resource:me.Coal})}else if(w&&"recharged"==e.options.variant&&"USA"==e.map.name&&e.coalSupply>0){var C=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0;n.money>=8&&n.coalCapacity+n.hybridCapacity>C+n.coalLeft&&v.push({resource:me.Coal})}if(w&&void 0!==e.coalStorage&&e.coalStorage>0){var B=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0;n.money>=8&&n.coalCapacity+n.hybridCapacity>B+n.coalLeft&&8<=m&&v.push({resource:me.Coal,fromStorage:!0})}if(x&&e.coalMarketNorth>0){var R=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0,A=e.coalPricesNorth,L=A[A.length-e.coalMarketNorth];n.money>=L&&n.coalCapacity+n.hybridCapacity>R+n.coalLeft&&L<=m&&v.push({resource:me.Coal,side:"north"})}if(w&&e.oilMarket>0){var O,j=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,G=null!==(O=e.oilPrices)&&void 0!==O?O:Ae[me.Oil],D=G[G.length-e.oilMarket];n.money>=D&&n.oilCapacity+n.hybridCapacity>j+n.oilLeft&&D<=m&&v.push(b?{resource:me.Oil,side:"south"}:{resource:me.Oil})}if(x&&e.oilMarketNorth>0){var z=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,N=e.oilPricesNorth,T=N[N.length-e.oilMarketNorth];n.money>=T&&n.oilCapacity+n.hybridCapacity>z+n.oilLeft&&T<=m&&v.push({resource:me.Oil,side:"north"})}if(w&&e.garbageMarket>0){var E,K=null!==(E=e.garbagePrices)&&void 0!==E?E:Ae[me.Garbage],I=K[K.length-e.garbageMarket];if("Central Europe"==e.map.name){var U=n.cities.filter((function(e){return"Wien"==e.name}));(null===U||void 0===U?void 0:U.length)>0&&I--}n.money>=I&&n.garbageCapacity>n.garbageLeft&&I<=m&&v.push(b?{resource:me.Garbage,side:"south"}:{resource:me.Garbage})}if(x&&e.garbageMarketNorth>0){var W=e.garbagePricesNorth,F=W[W.length-e.garbageMarketNorth];n.money>=F&&n.garbageCapacity>n.garbageLeft&&F<=m&&v.push({resource:me.Garbage,side:"north"})}if(w&&e.uraniumMarket>0){var Y,H=null!==(Y=e.uraniumPrices)&&void 0!==Y?Y:Ae[me.Uranium],V=H[H.length-e.uraniumMarket];n.money>=V&&n.uraniumCapacity>n.uraniumLeft&&V<=m&&v.push(b?{resource:me.Uranium,side:"south"}:{resource:me.Uranium})}v.length>0&&(o[_e.BuyResource]=v),o[_e.Pass]=[!0];break;case be.Building:if(n.cities.length<21){var J,$,q="Japan"===e.map.name,Z=q?new Set(null!==(J=e.map.startingCities)&&void 0!==J?J:[]):new Set;if(0==n.cities.length){var X=q?e.map.cities.filter((function(e){return Z.has(e.name)})):e.map.cities;$=X.map((function(e){return{name:e.name,price:0}}))}else if(q&&1===e.round)$=e.map.cities.filter((function(e){return Z.has(e.name)})).map((function(e){return{name:e.name,price:0}}));else if($=Te(e,n).map((function(e){return{name:e.name,price:e.price}})),q&&!n.usedFreeJump&&Ne(e.map.connections,n.cities.map((function(e){return e.name})))<2){var Q=[];Z.forEach((function(e){n.cities.find((function(n){return n.name===e}))||Q.push({name:e,price:0,freeJump:!0})})),$=[].concat(_($),Q)}$.forEach((function(t){var r=e.map.cities.find((function(e){return e.name==t.name}));if(r){var o=e.players.filter((function(e){return e.cities.find((function(e){return t.name==e.name}))})).length;if(r.transregional){if(e.step<2)return void(t.price=9999);var a=r.slotCosts,i=r.stepSlots?r.stepSlots[e.step-1]:e.step,s=a?a.length:3;return o>=i||o>=s?t.price=9999:t.price+=a?a[o]:3==e.step?20:15,void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999))}if(r.island&&void 0!==e.map.crossIslandSurcharge&&n.cities.length>0){var c=new Set(n.cities.map((function(n){var t;return null===(t=e.map.cities.find((function(e){return e.name==n.name})))||void 0===t?void 0:t.island})).filter((function(e){return!!e})));if(!c.has(r.island))return t.price=10+5*o+e.map.crossIslandSurcharge,o==e.step&&(t.price=9999),void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999))}if(r.singleOccupancy)return 0==n.cities.length||o>=1?void(t.price=9999):void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999));"Australia"==e.map.name&&n.cities.length>0&&(t.price=Math.min(t.price,20));var u=r.slotCosts,l=r.stepSlots?r.stepSlots[e.step-1]:e.step,d=u?u.length:3;o>=l||o>=d?t.price=9999:t.price+=u?u[o]:10+5*o,n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999)}else t.price=9999})),$=$.filter((function(e){return e.price<=n.money})),$.length>0&&(o[_e.Build]=$)}o[_e.Pass]=[!0];break;case be.Bureaucracy:var ee=[];n.powerPlants.forEach((function(t){if(!xe(e,t)&&n.powerPlantsNotUsed.includes(t.number))switch(t.type){case ve.Coal:n.coalLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Coal),citiesPowered:t.citiesPowered});break;case ve.Oil:n.oilLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Oil),citiesPowered:t.citiesPowered});break;case ve.Garbage:n.garbageLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Garbage),citiesPowered:t.citiesPowered});break;case ve.Uranium:n.uraniumLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Uranium),citiesPowered:t.citiesPowered});break;case ve.Wind:case ve.Nuclear:ee.push({powerPlant:t.number,resourcesSpent:[],citiesPowered:t.citiesPowered});break;case ve.Hybrid:var r;if(n.coalLeft+n.oilLeft>=t.cost)r=1==t.cost?[[me.Coal],[me.Oil]]:2==t.cost?[[me.Coal,me.Coal],[me.Coal,me.Oil],[me.Oil,me.Oil]]:[[me.Coal,me.Coal,me.Coal],[me.Coal,me.Coal,me.Oil],[me.Coal,me.Oil,me.Oil],[me.Oil,me.Oil,me.Oil]],r.forEach((function(e){e.filter((function(e){return e==me.Coal})).length<=n.coalLeft&&e.filter((function(e){return e==me.Oil})).length<=n.oilLeft&&ee.push({powerPlant:t.number,resourcesSpent:e,citiesPowered:t.citiesPowered})}))}})),ee.length>0&&(o[_e.UsePowerPlant]=ee),("India"!=e.map.name||n.citiesPowered>=n.targetCitiesPowered||n.isAI)&&(o[_e.Pass]=[!0]);break}return o}function Ne(e,n){var t,r=new Set(n),o=new Set,a=0,i=P(n);try{for(i.s();!(t=i.n()).done;){var s=t.value;if(!o.has(s)){a++;var c=[s],u=function(){var n=c.pop();if(o.has(n))return"continue";o.add(n);var t,a=P(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;if(i.nodes.includes(n)){var s=i.nodes.find((function(e){return e!==n}));r.has(s)&&!o.has(s)&&c.push(s)}}}catch(u){a.e(u)}finally{a.f()}};while(c.length>0)u()}}}catch(l){i.e(l)}finally{i.f()}return a}function Te(e,n){var t=e.map.cities.map((function(e){return{name:e.name,price:n.cities.find((function(n){return n.name==e.name}))?0:9999,visited:!1}})),r=t.find((function(e){return e.name==n.cities[0].name}));if(!r)return t;r.price=0;var o=r;while(1){var a=e.map.connections.filter((function(e){return e.nodes.includes(o.name)}));a.forEach((function(e){var r=e.nodes.filter((function(e){return e!=o.name}))[0],a=t.find((function(e){return e.name==r})),i=n.cities.find((function(e){return e.name==a.name}))?0:o.price+e.cost;!a.visited&&a.price>i&&(a.price=i)})),o.visited=!0;var i=t.filter((function(e){return!e.visited})),s=Ge(i,(function(e){return e.price}));if(!s||s.price>n.money)break;o=s}return t}t("a516"),t("7f32"),t("ec9f"),t("da71"),t("4311");var Ee,Ke,Ie=t("4cd2"),Ue=t.n(Ie);(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(Ee||(Ee={})),function(e){e["Seattle"]="Seattle",e["Portland"]="Portland",e["Boise"]="Boise",e["Billings"]="Billings",e["Cheyenne"]="Cheyenne",e["Denver"]="Denver",e["Omaha"]="Omaha",e["SanFrancisco"]="San Francisco",e["LosAngeles"]="Los Angeles",e["SanDiego"]="San Diego",e["LasVegas"]="Las Vegas",e["SaltLakeCity"]="Salt Lake City",e["Phoenix"]="Phoenix",e["SantaFe"]="Santa Fe",e["KansasCity"]="Kansas City",e["OklahomaCity"]="Oklahoma City",e["Dallas"]="Dallas",e["Houston"]="Houston",e["Memphis"]="Memphis",e["Birmingham"]="Birmingham",e["NewOrleans"]="New Orleans",e["Fargo"]="Fargo",e["Duluth"]="Duluth",e["Minneapolis"]="Minneapolis",e["Chicago"]="Chicago",e["StLouis"]="St. Louis",e["Cincinnati"]="Cincinnati",e["Knoxvile"]="Knoxvile",e["Detroit"]="Detroit",e["Buffalo"]="Buffalo",e["Pittsburgh"]="Pittsburgh",e["Boston"]="Boston",e["NewYork"]="New York",e["Philadelphia"]="Philadelphia",e["Washington"]="Washington",e["Norfolk"]="Norfolk",e["Raleigh"]="Raleigh",e["Atlanta"]="Atlanta",e["Savannah"]="Savannah",e["Jacksonvile"]="Jacksonvile",e["Tampa"]="Tampa",e["Miami"]="Miami"}(Ke||(Ke={}));var We,Fe,Ye={name:"USA",cities:[{name:Ke.Seattle,region:Ee.Purple,x:74,y:99},{name:Ke.Portland,region:Ee.Purple,x:45,y:167},{name:Ke.Boise,region:Ee.Purple,x:180,y:220},{name:Ke.Billings,region:Ee.Purple,x:345,y:180},{name:Ke.Cheyenne,region:Ee.Purple,x:410,y:280},{name:Ke.Denver,region:Ee.Purple,x:400,y:333},{name:Ke.Omaha,region:Ee.Purple,x:566,y:293},{name:Ke.SanFrancisco,region:Ee.Cyan,x:48,y:371},{name:Ke.LosAngeles,region:Ee.Cyan,x:116,y:460},{name:Ke.SanDiego,region:Ee.Cyan,x:157,y:507},{name:Ke.LasVegas,region:Ee.Cyan,x:200,y:410},{name:Ke.SaltLakeCity,region:Ee.Cyan,x:266,y:311},{name:Ke.Phoenix,region:Ee.Cyan,x:260,y:486},{name:Ke.SantaFe,region:Ee.Cyan,x:371,y:435},{name:Ke.KansasCity,region:Ee.Red,x:587,y:356},{name:Ke.OklahomaCity,region:Ee.Red,x:550,y:437},{name:Ke.Dallas,region:Ee.Red,x:560,y:504},{name:Ke.Houston,region:Ee.Red,x:569,y:571},{name:Ke.Memphis,region:Ee.Red,x:678,y:449},{name:Ke.Birmingham,region:Ee.Red,x:739,y:486},{name:Ke.NewOrleans,region:Ee.Red,x:674,y:570},{name:Ke.Fargo,region:Ee.Yellow,x:551,y:152},{name:Ke.Duluth,region:Ee.Yellow,x:637,y:133},{name:Ke.Minneapolis,region:Ee.Yellow,x:621,y:190},{name:Ke.Chicago,region:Ee.Yellow,x:716,y:281},{name:Ke.StLouis,region:Ee.Yellow,x:678,y:362},{name:Ke.Cincinnati,region:Ee.Yellow,x:795,y:348},{name:Ke.Knoxvile,region:Ee.Yellow,x:796,y:422},{name:Ke.Detroit,region:Ee.Brown,x:803,y:262},{name:Ke.Buffalo,region:Ee.Brown,x:913,y:251},{name:Ke.Pittsburgh,region:Ee.Brown,x:884,y:316},{name:Ke.Boston,region:Ee.Brown,x:1052,y:252},{name:Ke.NewYork,region:Ee.Brown,x:1010,y:290},{name:Ke.Philadelphia,region:Ee.Brown,x:985,y:330},{name:Ke.Washington,region:Ee.Brown,x:934,y:357},{name:Ke.Norfolk,region:Ee.Green,x:969,y:405},{name:Ke.Raleigh,region:Ee.Green,x:915,y:437},{name:Ke.Atlanta,region:Ee.Green,x:801,y:487},{name:Ke.Savannah,region:Ee.Green,x:867,y:507},{name:Ke.Jacksonvile,region:Ee.Green,x:861,y:559},{name:Ke.Tampa,region:Ee.Green,x:819,y:621},{name:Ke.Miami,region:Ee.Green,x:883,y:670}],connections:[{nodes:[Ke.Seattle,Ke.Portland],cost:3},{nodes:[Ke.Seattle,Ke.Boise],cost:12},{nodes:[Ke.Seattle,Ke.Billings],cost:9},{nodes:[Ke.Portland,Ke.Boise],cost:13},{nodes:[Ke.Portland,Ke.SanFrancisco],cost:24},{nodes:[Ke.Boise,Ke.Billings],cost:12},{nodes:[Ke.Boise,Ke.Cheyenne],cost:24},{nodes:[Ke.Boise,Ke.SanFrancisco],cost:23},{nodes:[Ke.Boise,Ke.SaltLakeCity],cost:8},{nodes:[Ke.Billings,Ke.Cheyenne],cost:9},{nodes:[Ke.Billings,Ke.Fargo],cost:17},{nodes:[Ke.Billings,Ke.Minneapolis],cost:18},{nodes:[Ke.Cheyenne,Ke.Denver],cost:0},{nodes:[Ke.Cheyenne,Ke.Omaha],cost:14},{nodes:[Ke.Cheyenne,Ke.Minneapolis],cost:18},{nodes:[Ke.Denver,Ke.SaltLakeCity],cost:21},{nodes:[Ke.Denver,Ke.SantaFe],cost:13},{nodes:[Ke.Denver,Ke.KansasCity],cost:16},{nodes:[Ke.Omaha,Ke.KansasCity],cost:5},{nodes:[Ke.Omaha,Ke.Minneapolis],cost:8},{nodes:[Ke.Omaha,Ke.Chicago],cost:13},{nodes:[Ke.SanFrancisco,Ke.LosAngeles],cost:9},{nodes:[Ke.SanFrancisco,Ke.LasVegas],cost:14},{nodes:[Ke.SanFrancisco,Ke.SaltLakeCity],cost:27},{nodes:[Ke.LosAngeles,Ke.SanDiego],cost:3},{nodes:[Ke.LosAngeles,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.Phoenix],cost:14},{nodes:[Ke.LasVegas,Ke.SaltLakeCity],cost:18},{nodes:[Ke.LasVegas,Ke.Phoenix],cost:15},{nodes:[Ke.LasVegas,Ke.SantaFe],cost:27},{nodes:[Ke.SaltLakeCity,Ke.SantaFe],cost:28},{nodes:[Ke.Phoenix,Ke.SantaFe],cost:18},{nodes:[Ke.SantaFe,Ke.KansasCity],cost:16},{nodes:[Ke.SantaFe,Ke.OklahomaCity],cost:15},{nodes:[Ke.SantaFe,Ke.Dallas],cost:16},{nodes:[Ke.SantaFe,Ke.Houston],cost:21},{nodes:[Ke.KansasCity,Ke.OklahomaCity],cost:8},{nodes:[Ke.KansasCity,Ke.Memphis],cost:12},{nodes:[Ke.KansasCity,Ke.Chicago],cost:8},{nodes:[Ke.KansasCity,Ke.StLouis],cost:6},{nodes:[Ke.OklahomaCity,Ke.Dallas],cost:3},{nodes:[Ke.OklahomaCity,Ke.Memphis],cost:14},{nodes:[Ke.Dallas,Ke.Houston],cost:5},{nodes:[Ke.Dallas,Ke.Memphis],cost:12},{nodes:[Ke.Dallas,Ke.NewOrleans],cost:12},{nodes:[Ke.Houston,Ke.NewOrleans],cost:8},{nodes:[Ke.Memphis,Ke.Birmingham],cost:6},{nodes:[Ke.Memphis,Ke.NewOrleans],cost:7},{nodes:[Ke.Memphis,Ke.StLouis],cost:7},{nodes:[Ke.Birmingham,Ke.NewOrleans],cost:11},{nodes:[Ke.Birmingham,Ke.Atlanta],cost:3},{nodes:[Ke.Birmingham,Ke.Jacksonvile],cost:9},{nodes:[Ke.NewOrleans,Ke.Jacksonvile],cost:16},{nodes:[Ke.Fargo,Ke.Duluth],cost:6},{nodes:[Ke.Fargo,Ke.Minneapolis],cost:6},{nodes:[Ke.Duluth,Ke.Minneapolis],cost:5},{nodes:[Ke.Duluth,Ke.Chicago],cost:12},{nodes:[Ke.Duluth,Ke.Detroit],cost:15},{nodes:[Ke.Minneapolis,Ke.Chicago],cost:8},{nodes:[Ke.Chicago,Ke.StLouis],cost:10},{nodes:[Ke.Chicago,Ke.Cincinnati],cost:7},{nodes:[Ke.Chicago,Ke.Detroit],cost:7},{nodes:[Ke.StLouis,Ke.Cincinnati],cost:12},{nodes:[Ke.StLouis,Ke.Atlanta],cost:12},{nodes:[Ke.Cincinnati,Ke.Knoxvile],cost:6},{nodes:[Ke.Cincinnati,Ke.Detroit],cost:4},{nodes:[Ke.Cincinnati,Ke.Pittsburgh],cost:7},{nodes:[Ke.Cincinnati,Ke.Raleigh],cost:15},{nodes:[Ke.Knoxvile,Ke.Atlanta],cost:5},{nodes:[Ke.Detroit,Ke.Buffalo],cost:7},{nodes:[Ke.Detroit,Ke.Pittsburgh],cost:6},{nodes:[Ke.Buffalo,Ke.Pittsburgh],cost:7},{nodes:[Ke.Buffalo,Ke.NewYork],cost:8},{nodes:[Ke.Pittsburgh,Ke.Washington],cost:6},{nodes:[Ke.Pittsburgh,Ke.Raleigh],cost:7},{nodes:[Ke.Boston,Ke.NewYork],cost:3},{nodes:[Ke.NewYork,Ke.Philadelphia],cost:0},{nodes:[Ke.Philadelphia,Ke.Washington],cost:3},{nodes:[Ke.Washington,Ke.Norfolk],cost:5},{nodes:[Ke.Norfolk,Ke.Raleigh],cost:3},{nodes:[Ke.Raleigh,Ke.Atlanta],cost:7},{nodes:[Ke.Raleigh,Ke.Savannah],cost:7},{nodes:[Ke.Atlanta,Ke.Savannah],cost:7},{nodes:[Ke.Savannah,Ke.Jacksonvile],cost:0},{nodes:[Ke.Jacksonvile,Ke.Tampa],cost:4},{nodes:[Ke.Tampa,Ke.Miami],cost:4}],layout:"Landscape",polygons:[{region:Ee.Brown,points:[[930,423],[1082,331],[1075,231],[716,249],[758,303],[897,406]]},{region:Ee.Green,points:[[898,405],[762,499],[758,643],[887,744],[938,688],[889,618],[1014,432],[985,387],[929,420]]},{region:Ee.Yellow,points:[[895,403],[760,499],[630,393],[607,345],[608,275],[439,162],[654,114],[771,245],[716,247],[758,301]]},{region:Ee.Red,points:[[606,344],[476,371],[445,597],[546,664],[758,641],[760,497],[629,391]]},{region:Ee.Purple,points:[[606,342],[476,369],[347,395],[313,301],[18,287],[18,165],[76,74],[438,160],[607,275]]},{region:Ee.Cyan,points:[[18,285],[20,429],[142,583],[445,594],[476,368],[346,392],[312,300]]}]},He={name:"USA",cities:[{name:Ke.Seattle,region:Ee.Purple,x:74,y:99},{name:Ke.Portland,region:Ee.Purple,x:45,y:167},{name:Ke.Boise,region:Ee.Purple,x:180,y:220},{name:Ke.Billings,region:Ee.Purple,x:345,y:180},{name:Ke.Cheyenne,region:Ee.Purple,x:410,y:280},{name:Ke.Denver,region:Ee.Purple,x:400,y:333},{name:Ke.Omaha,region:Ee.Purple,x:566,y:293},{name:Ke.SanFrancisco,region:Ee.Cyan,x:48,y:371},{name:Ke.LosAngeles,region:Ee.Cyan,x:116,y:460},{name:Ke.SanDiego,region:Ee.Cyan,x:157,y:507},{name:Ke.LasVegas,region:Ee.Cyan,x:200,y:410},{name:Ke.SaltLakeCity,region:Ee.Cyan,x:266,y:311},{name:Ke.Phoenix,region:Ee.Cyan,x:260,y:486},{name:Ke.SantaFe,region:Ee.Cyan,x:371,y:435},{name:Ke.KansasCity,region:Ee.Red,x:587,y:356},{name:Ke.OklahomaCity,region:Ee.Red,x:550,y:437},{name:Ke.Dallas,region:Ee.Red,x:560,y:504},{name:Ke.Houston,region:Ee.Red,x:569,y:571},{name:Ke.Memphis,region:Ee.Red,x:678,y:449},{name:Ke.Birmingham,region:Ee.Red,x:739,y:486},{name:Ke.NewOrleans,region:Ee.Red,x:674,y:570},{name:Ke.Fargo,region:Ee.Yellow,x:551,y:152},{name:Ke.Duluth,region:Ee.Yellow,x:637,y:133},{name:Ke.Minneapolis,region:Ee.Yellow,x:621,y:190},{name:Ke.Chicago,region:Ee.Yellow,x:716,y:281},{name:Ke.StLouis,region:Ee.Yellow,x:678,y:362},{name:Ke.Cincinnati,region:Ee.Yellow,x:795,y:348},{name:Ke.Knoxvile,region:Ee.Yellow,x:796,y:422},{name:Ke.Detroit,region:Ee.Brown,x:803,y:262},{name:Ke.Buffalo,region:Ee.Brown,x:913,y:251},{name:Ke.Pittsburgh,region:Ee.Brown,x:884,y:316},{name:Ke.Boston,region:Ee.Brown,x:1052,y:252},{name:Ke.NewYork,region:Ee.Brown,x:1010,y:290},{name:Ke.Philadelphia,region:Ee.Brown,x:985,y:330},{name:Ke.Washington,region:Ee.Brown,x:934,y:357},{name:Ke.Norfolk,region:Ee.Green,x:969,y:405},{name:Ke.Raleigh,region:Ee.Green,x:915,y:437},{name:Ke.Atlanta,region:Ee.Green,x:801,y:487},{name:Ke.Savannah,region:Ee.Green,x:867,y:507},{name:Ke.Jacksonvile,region:Ee.Green,x:861,y:559},{name:Ke.Tampa,region:Ee.Green,x:819,y:621},{name:Ke.Miami,region:Ee.Green,x:883,y:670}],connections:[{nodes:[Ke.Seattle,Ke.Portland],cost:3},{nodes:[Ke.Seattle,Ke.Boise],cost:12},{nodes:[Ke.Seattle,Ke.Billings],cost:9},{nodes:[Ke.Portland,Ke.Boise],cost:13},{nodes:[Ke.Portland,Ke.SanFrancisco],cost:24},{nodes:[Ke.Boise,Ke.Billings],cost:12},{nodes:[Ke.Boise,Ke.SanFrancisco],cost:23},{nodes:[Ke.Boise,Ke.SaltLakeCity],cost:8},{nodes:[Ke.Billings,Ke.Cheyenne],cost:9},{nodes:[Ke.Billings,Ke.Fargo],cost:17},{nodes:[Ke.Billings,Ke.Minneapolis],cost:18},{nodes:[Ke.Cheyenne,Ke.Denver],cost:0},{nodes:[Ke.Cheyenne,Ke.Omaha],cost:14},{nodes:[Ke.Cheyenne,Ke.Minneapolis],cost:18},{nodes:[Ke.Denver,Ke.SaltLakeCity],cost:21},{nodes:[Ke.Denver,Ke.SantaFe],cost:13},{nodes:[Ke.Denver,Ke.KansasCity],cost:16},{nodes:[Ke.Omaha,Ke.KansasCity],cost:5},{nodes:[Ke.Omaha,Ke.Minneapolis],cost:8},{nodes:[Ke.Omaha,Ke.Chicago],cost:12},{nodes:[Ke.SanFrancisco,Ke.LosAngeles],cost:9},{nodes:[Ke.SanFrancisco,Ke.LasVegas],cost:14},{nodes:[Ke.SanFrancisco,Ke.SaltLakeCity],cost:27},{nodes:[Ke.LosAngeles,Ke.SanDiego],cost:3},{nodes:[Ke.LosAngeles,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.Phoenix],cost:14},{nodes:[Ke.LasVegas,Ke.SaltLakeCity],cost:18},{nodes:[Ke.LasVegas,Ke.Phoenix],cost:15},{nodes:[Ke.LasVegas,Ke.SantaFe],cost:27},{nodes:[Ke.SaltLakeCity,Ke.SantaFe],cost:28},{nodes:[Ke.Phoenix,Ke.SantaFe],cost:18},{nodes:[Ke.SantaFe,Ke.KansasCity],cost:16},{nodes:[Ke.SantaFe,Ke.OklahomaCity],cost:15},{nodes:[Ke.SantaFe,Ke.Dallas],cost:16},{nodes:[Ke.SantaFe,Ke.Houston],cost:20},{nodes:[Ke.KansasCity,Ke.OklahomaCity],cost:8},{nodes:[Ke.KansasCity,Ke.Memphis],cost:12},{nodes:[Ke.KansasCity,Ke.Chicago],cost:8},{nodes:[Ke.KansasCity,Ke.StLouis],cost:6},{nodes:[Ke.OklahomaCity,Ke.Dallas],cost:3},{nodes:[Ke.OklahomaCity,Ke.Memphis],cost:14},{nodes:[Ke.Dallas,Ke.Houston],cost:5},{nodes:[Ke.Dallas,Ke.Memphis],cost:12},{nodes:[Ke.Dallas,Ke.NewOrleans],cost:12},{nodes:[Ke.Houston,Ke.NewOrleans],cost:8},{nodes:[Ke.Memphis,Ke.Birmingham],cost:6},{nodes:[Ke.Memphis,Ke.NewOrleans],cost:7},{nodes:[Ke.Memphis,Ke.StLouis],cost:7},{nodes:[Ke.Birmingham,Ke.NewOrleans],cost:11},{nodes:[Ke.Birmingham,Ke.Atlanta],cost:3},{nodes:[Ke.Birmingham,Ke.Jacksonvile],cost:9},{nodes:[Ke.NewOrleans,Ke.Jacksonvile],cost:16},{nodes:[Ke.Fargo,Ke.Duluth],cost:6},{nodes:[Ke.Fargo,Ke.Minneapolis],cost:6},{nodes:[Ke.Duluth,Ke.Minneapolis],cost:5},{nodes:[Ke.Duluth,Ke.Chicago],cost:12},{nodes:[Ke.Duluth,Ke.Detroit],cost:15},{nodes:[Ke.Minneapolis,Ke.Chicago],cost:8},{nodes:[Ke.Chicago,Ke.StLouis],cost:10},{nodes:[Ke.Chicago,Ke.Cincinnati],cost:7},{nodes:[Ke.Chicago,Ke.Detroit],cost:7},{nodes:[Ke.StLouis,Ke.Cincinnati],cost:12},{nodes:[Ke.StLouis,Ke.Atlanta],cost:12},{nodes:[Ke.Cincinnati,Ke.Knoxvile],cost:6},{nodes:[Ke.Cincinnati,Ke.Detroit],cost:4},{nodes:[Ke.Cincinnati,Ke.Pittsburgh],cost:7},{nodes:[Ke.Knoxvile,Ke.Atlanta],cost:5},{nodes:[Ke.Knoxvile,Ke.Raleigh],cost:11},{nodes:[Ke.Detroit,Ke.Buffalo],cost:7},{nodes:[Ke.Detroit,Ke.Pittsburgh],cost:6},{nodes:[Ke.Buffalo,Ke.Pittsburgh],cost:7},{nodes:[Ke.Buffalo,Ke.NewYork],cost:8},{nodes:[Ke.Pittsburgh,Ke.Washington],cost:6},{nodes:[Ke.Pittsburgh,Ke.Raleigh],cost:7},{nodes:[Ke.Boston,Ke.NewYork],cost:3},{nodes:[Ke.NewYork,Ke.Philadelphia],cost:0},{nodes:[Ke.Philadelphia,Ke.Washington],cost:3},{nodes:[Ke.Washington,Ke.Norfolk],cost:5},{nodes:[Ke.Norfolk,Ke.Raleigh],cost:3},{nodes:[Ke.Raleigh,Ke.Atlanta],cost:7},{nodes:[Ke.Raleigh,Ke.Savannah],cost:7},{nodes:[Ke.Atlanta,Ke.Savannah],cost:7},{nodes:[Ke.Savannah,Ke.Jacksonvile],cost:0},{nodes:[Ke.Jacksonvile,Ke.Tampa],cost:4},{nodes:[Ke.Tampa,Ke.Miami],cost:4}],layout:"Landscape",mapSpecificRules:"You can buy coal from the supply for $8."},Ve=[{number:3,type:ve.Oil,cost:2,citiesPowered:1},{number:4,type:ve.Coal,cost:2,citiesPowered:1},{number:5,type:ve.Hybrid,cost:2,citiesPowered:1},{number:6,type:ve.Garbage,cost:1,citiesPowered:1},{number:7,type:ve.Oil,cost:3,citiesPowered:2},{number:8,type:ve.Coal,cost:3,citiesPowered:2},{number:9,type:ve.Oil,cost:1,citiesPowered:1},{number:10,type:ve.Coal,cost:2,citiesPowered:2},{number:11,type:ve.Uranium,cost:1,citiesPowered:2},{number:12,type:ve.Hybrid,cost:2,citiesPowered:2},{number:13,type:ve.Wind,cost:0,citiesPowered:1},{number:14,type:ve.Garbage,cost:2,citiesPowered:2},{number:15,type:ve.Coal,cost:2,citiesPowered:3},{number:16,type:ve.Oil,cost:2,citiesPowered:3},{number:17,type:ve.Uranium,cost:1,citiesPowered:2},{number:18,type:ve.Wind,cost:0,citiesPowered:2},{number:19,type:ve.Garbage,cost:2,citiesPowered:3},{number:20,type:ve.Coal,cost:3,citiesPowered:5},{number:21,type:ve.Hybrid,cost:2,citiesPowered:4},{number:22,type:ve.Wind,cost:0,citiesPowered:2},{number:23,type:ve.Uranium,cost:1,citiesPowered:3},{number:24,type:ve.Garbage,cost:2,citiesPowered:4},{number:25,type:ve.Coal,cost:2,citiesPowered:5},{number:26,type:ve.Oil,cost:2,citiesPowered:5},{number:27,type:ve.Wind,cost:0,citiesPowered:3},{number:28,type:ve.Uranium,cost:1,citiesPowered:4},{number:29,type:ve.Hybrid,cost:1,citiesPowered:4},{number:30,type:ve.Garbage,cost:3,citiesPowered:6},{number:31,type:ve.Coal,cost:3,citiesPowered:6},{number:32,type:ve.Oil,cost:3,citiesPowered:6},{number:33,type:ve.Wind,cost:0,citiesPowered:4},{number:34,type:ve.Uranium,cost:1,citiesPowered:5},{number:35,type:ve.Oil,cost:1,citiesPowered:5},{number:36,type:ve.Coal,cost:3,citiesPowered:7},{number:37,type:ve.Wind,cost:0,citiesPowered:4},{number:38,type:ve.Garbage,cost:3,citiesPowered:7},{number:39,type:ve.Uranium,cost:1,citiesPowered:6},{number:40,type:ve.Oil,cost:2,citiesPowered:6},{number:42,type:ve.Coal,cost:2,citiesPowered:6},{number:44,type:ve.Wind,cost:0,citiesPowered:5},{number:46,type:ve.Hybrid,cost:3,citiesPowered:7},{number:50,type:ve.Nuclear,cost:0,citiesPowered:6},{number:99,type:ve.Step3,cost:0,citiesPowered:6}],Je=Object(we["cloneDeep"])(Ve).filter((function(e){return 11!=e.number}));Je.forEach((function(e){e.type==ve.Garbage&&(e.storage=2*e.cost,e.cost++)})),function(e){e["Pink"]="pink",e["Brown"]="brown",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow"}(We||(We={})),function(e){e["Hobart"]="Hobart",e["Launceston"]="Launceston",e["Geelong"]="Geelong",e["Melbourne1"]="Melbourne 1",e["Melbourne2"]="Melbourne 2",e["Bendigo"]="Bendigo",e["Albury"]="Albury",e["Wollongong"]="Wollongong",e["Mildura"]="Mildura",e["Dubbo"]="Dubbo",e["Canberra"]="Canberra",e["Sydney1"]="Sydney 1",e["Sydney2"]="Sydney 2",e["Newcastle"]="Newcastle",e["Toowoomba"]="Toowoomba",e["Goldcoast"]="Gold Coast",e["Brisbane"]="Brisbane",e["Rockhampton"]="Rockhampton",e["Mackay"]="Mackay",e["Townsville"]="Townsville",e["Cairns"]="Cairns",e["Porthedland"]="Port Hedland",e["Broome"]="Broome",e["Albany"]="Albany",e["Bunbury"]="Bunbury",e["Perth"]="Perth",e["Kalgoorlie"]="Kalgoorlie",e["Geraldton"]="Geraldton",e["Darwin"]="Darwin",e["Katherine"]="Katherine",e["Tennantcreek"]="Tennant Creek",e["Alicesprings"]="Alice Springs",e["Portaugusta"]="Port Augusta",e["CooberPedy"]="Coober Pedy",e["Adelaide"]="Adelaide"}(Fe||(Fe={}));var $e,qe,Ze={name:"Australia",layout:"Landscape",adjustRatio:[.33,.33],mapPosition:[40,-30],mapRotation:180,cities:[{name:Fe.Hobart,region:We.Pink,x:540,y:467},{name:Fe.Launceston,region:We.Pink,x:720,y:500},{name:Fe.Geelong,region:We.Pink,x:988,y:712},{name:Fe.Melbourne1,region:We.Pink,x:790,y:650},{name:Fe.Melbourne2,region:We.Pink,x:790,y:790},{name:Fe.Bendigo,region:We.Pink,x:1052,y:870},{name:Fe.Albury,region:We.Brown,x:810,y:983},{name:Fe.Wollongong,region:We.Brown,x:530,y:1080},{name:Fe.Mildura,region:We.Pink,x:1185,y:1010},{name:Fe.Dubbo,region:We.Brown,x:891,y:1364},{name:Fe.Canberra,region:We.Brown,x:804,y:1188},{name:Fe.Sydney1,region:We.Brown,x:550,y:1230},{name:Fe.Sydney2,region:We.Brown,x:550,y:1380},{name:Fe.Newcastle,region:We.Brown,x:530,y:1545},{name:Fe.Toowoomba,region:We.Green,x:1010,y:1660},{name:Fe.Goldcoast,region:We.Green,x:660,y:1730},{name:Fe.Brisbane,region:We.Green,x:740,y:1885},{name:Fe.Rockhampton,region:We.Green,x:1040,y:1987},{name:Fe.Mackay,region:We.Green,x:1260,y:2101},{name:Fe.Townsville,region:We.Green,x:1445,y:2193},{name:Fe.Cairns,region:We.Green,x:1652,y:2209},{name:Fe.Porthedland,region:We.Red,x:2741,y:2002},{name:Fe.Broome,region:We.Red,x:2503,y:2175},{name:Fe.Albany,region:We.Red,x:2400,y:850},{name:Fe.Bunbury,region:We.Red,x:2700,y:1030},{name:Fe.Perth,region:We.Red,x:2680,y:1230},{name:Fe.Kalgoorlie,region:We.Red,x:2177,y:1295},{name:Fe.Geraldton,region:We.Red,x:2747,y:1557},{name:Fe.Darwin,region:We.Yellow,x:2264,y:2016},{name:Fe.Katherine,region:We.Yellow,x:2105,y:1947},{name:Fe.Tennantcreek,region:We.Yellow,x:1905,y:1736},{name:Fe.Alicesprings,region:We.Yellow,x:1803,y:1512},{name:Fe.Portaugusta,region:We.Yellow,x:1520,y:1094},{name:Fe.CooberPedy,region:We.Yellow,x:1850,y:1232},{name:Fe.Adelaide,region:We.Yellow,x:1430,y:863}],connections:[{nodes:[Fe.Broome,Fe.Porthedland],cost:13},{nodes:[Fe.Kalgoorlie,Fe.Geraldton],cost:16},{nodes:[Fe.Geraldton,Fe.Perth],cost:9},{nodes:[Fe.Perth,Fe.Kalgoorlie],cost:12},{nodes:[Fe.Kalgoorlie,Fe.Albany],cost:16},{nodes:[Fe.Albany,Fe.Perth],cost:9},{nodes:[Fe.Perth,Fe.Bunbury],cost:4},{nodes:[Fe.Bunbury,Fe.Albany],cost:6},{nodes:[Fe.Cairns,Fe.Townsville],cost:9},{nodes:[Fe.Townsville,Fe.Mackay],cost:9},{nodes:[Fe.Mackay,Fe.Rockhampton],cost:8},{nodes:[Fe.Rockhampton,Fe.Toowoomba],cost:15},{nodes:[Fe.Toowoomba,Fe.Brisbane],cost:5},{nodes:[Fe.Brisbane,Fe.Rockhampton],cost:15},{nodes:[Fe.Brisbane,Fe.Goldcoast],cost:2},{nodes:[Fe.Goldcoast,Fe.Toowoomba],cost:6},{nodes:[Fe.Goldcoast,Fe.Newcastle],cost:15},{nodes:[Fe.Newcastle,Fe.Sydney2],cost:4},{nodes:[Fe.Sydney2,Fe.Sydney1],cost:0},{nodes:[Fe.Newcastle,Fe.Dubbo],cost:10},{nodes:[Fe.Dubbo,Fe.Toowoomba],cost:18},{nodes:[Fe.Sydney1,Fe.Wollongong],cost:2},{nodes:[Fe.Sydney1,Fe.Canberra],cost:8},{nodes:[Fe.Canberra,Fe.Dubbo],cost:11},{nodes:[Fe.Canberra,Fe.Newcastle],cost:10},{nodes:[Fe.Dubbo,Fe.Mildura],cost:16},{nodes:[Fe.Mildura,Fe.Canberra],cost:16},{nodes:[Fe.Canberra,Fe.Albury],cost:7},{nodes:[Fe.Mildura,Fe.Bendigo],cost:7},{nodes:[Fe.Bendigo,Fe.Melbourne2],cost:3},{nodes:[Fe.Melbourne2,Fe.Albury],cost:9},{nodes:[Fe.Mildura,Fe.Adelaide],cost:8},{nodes:[Fe.Adelaide,Fe.Portaugusta],cost:7},{nodes:[Fe.Portaugusta,Fe.CooberPedy],cost:11},{nodes:[Fe.Mildura,Fe.Portaugusta],cost:11},{nodes:[Fe.Adelaide,Fe.Geelong],cost:13},{nodes:[Fe.Geelong,Fe.Bendigo],cost:5},{nodes:[Fe.Bendigo,Fe.Albury],cost:6},{nodes:[Fe.Wollongong,Fe.Melbourne1],cost:19},{nodes:[Fe.Melbourne1,Fe.Launceston],cost:19},{nodes:[Fe.Launceston,Fe.Hobart],cost:5},{nodes:[Fe.Melbourne1,Fe.Geelong],cost:2},{nodes:[Fe.Melbourne2,Fe.Melbourne1],cost:0},{nodes:[Fe.CooberPedy,Fe.Alicesprings],cost:13},{nodes:[Fe.Alicesprings,Fe.Tennantcreek],cost:10},{nodes:[Fe.Tennantcreek,Fe.Katherine],cost:14},{nodes:[Fe.Katherine,Fe.Darwin],cost:6}],resupply:[[[3,5,4],[4,6,4],[4,7,5],[5,9,6],[7,10,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]],uraniumMineResupply:[[1,2,3],[1,2,3],[2,2,4],[2,3,5],[3,3,6]],startingResources:[24,18,15,0],startingSupply:[24,24,24,0],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve).filter((function(e){return 17!==e.number}));if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var u=De(a.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Uranium mines: the five uranium power plants (11, 23, 28, 34, 39) are replaced by uranium mines. Power plant 17 is removed from the deck. Mines are bought in the normal power-plant auctions but do not power cities and do not count toward the 3-power-plant hand limit (a player may hold any number of mines plus up to 3 power plants). Mines DO count for player order. Instead of powering cities, during Bureaucracy each mine produces uranium for sale on the separate uranium market. Uranium market: a separate market of 12 slots (prices $2–$7, two slots each), all filled at game start. When selling, a player earns the highest available (empty-slot) price times the total cities their mines could power, then places one uranium token per mine on the highest empty slots. The resource-market refill REMOVES uranium tokens from the cheapest filled slots. Selling happens AUTOMATICALLY during Bureaucracy, in reverse turn order (the last player in turn order sells first). The printed rules let a player decline to sell; for simplicity this implementation always sells, so no player action is required. Unlike city income, uranium income is still paid in the final round. Main resource market: there is no uranium row — coal, oil and garbage only. Step 3 CO2 tax: when Step 3 begins, the six cheapest tokens of each resource move into new $9 and $10 spaces, and the $1 and $2 spaces become inactive for the rest of the game (the market shifts up by $2). General connection: any single build may connect a city for a flat 20 Elektro instead of the shortest-path connection cost, and this may be used multiple times in one turn. Metropolises: Melbourne and Sydney each consist of two cities (1 and 2) connected by a 0-cost edge. Regions need not be adjacent: any combination of regions may be in play."};(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Blue"]="blue",e["Yellow"]="yellow"})($e||($e={})),function(e){e["Friedrichshafen"]="Friedrichshafen",e["Ravensburg"]="Ravensburg",e["Biberach"]="Biberach",e["Sigmarincen"]="Sigmaringen",e["Konstanz"]="Konstanz",e["Ulm"]="Ulm",e["Augsburg"]="Augsburg",e["Basel"]="Basel",e["Waldshuttiencen"]="Waldshut-Tiengen",e["Singen"]="Singen",e["Tuttlincen"]="Tuttlingen",e["Donaueschingen"]="Donaueschingen",e["Freiburg"]="Freiburg",e["Lorrach"]="Lorrach",e["Tauberbischofsheim"]="Tauberbischofsheim",e["Schwabischhall"]="Schwabisch Hall",e["Heilbronn"]="Heilbronn",e["Sinsheim"]="Sinsheim",e["Heidelber"]="Heidelberg",e["Mannheim"]="Mannheim",e["Luowigshafen"]="Ludwigshafen",e["Nurnberg"]="Nurnberg",e["Ellwangen"]="Ellwangen",e["Coppingen"]="Göppingen",e["Reutlincen"]="Reutlingen",e["Stuttgart"]="Stuttgart",e["Ludwigsburg"]="Ludwigsburg",e["Boblingen"]="Boblingen",e["Laha"]="Lahr",e["Badenbaden"]="Baden-Baden",e["Offenburg"]="Offenburg",e["Strasbourg"]="Strasbourg",e["Pforzheim"]="Pforzheim",e["Rastatt"]="Rastatt",e["Karlsruhf"]="Karlsruhe"}(qe||(qe={}));var Xe,Qe,en={name:"Baden-Württemberg",cities:[{name:qe.Friedrichshafen,region:$e.Purple,x:1286,y:2177},{name:qe.Ravensburg,region:$e.Purple,x:1365,y:2023},{name:qe.Biberach,region:$e.Purple,x:1451,y:1779},{name:qe.Sigmarincen,region:$e.Purple,x:1111,y:1803},{name:qe.Konstanz,region:$e.Purple,x:1088,y:2163},{name:qe.Ulm,region:$e.Purple,x:1541,y:1499},{name:qe.Augsburg,region:$e.Purple,x:1830,y:1505,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Basel,region:$e.Green,x:103,y:2271,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Waldshuttiencen,region:$e.Green,x:502,y:2166},{name:qe.Singen,region:$e.Green,x:874,y:2084},{name:qe.Tuttlincen,region:$e.Green,x:870,y:1854},{name:qe.Donaueschingen,region:$e.Green,x:669,y:1923},{name:qe.Freiburg,region:$e.Green,x:290,y:1828},{name:qe.Lorrach,region:$e.Green,x:212,y:2141},{name:qe.Tauberbischofsheim,region:$e.Red,x:1354,y:450},{name:qe.Schwabischhall,region:$e.Red,x:1415,y:899},{name:qe.Heilbronn,region:$e.Red,x:1115,y:872},{name:qe.Sinsheim,region:$e.Red,x:920,y:785},{name:qe.Heidelber,region:$e.Red,x:817,y:660},{name:qe.Mannheim,region:$e.Red,x:710,y:540},{name:qe.Luowigshafen,region:$e.Red,x:579,y:588,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Nurnberg,region:$e.Blue,x:1837,y:771,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Ellwangen,region:$e.Blue,x:1637,y:1030},{name:qe.Coppingen,region:$e.Blue,x:1387,y:1233},{name:qe.Reutlincen,region:$e.Blue,x:1107,y:1443},{name:qe.Stuttgart,region:$e.Blue,x:1106,y:1217},{name:qe.Ludwigsburg,region:$e.Blue,x:1099,y:1047},{name:qe.Boblingen,region:$e.Blue,x:956,y:1277},{name:qe.Laha,region:$e.Yellow,x:296,y:1575},{name:qe.Badenbaden,region:$e.Yellow,x:554,y:1259},{name:qe.Offenburg,region:$e.Yellow,x:395,y:1422},{name:qe.Strasbourg,region:$e.Yellow,x:211,y:1330,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Pforzheim,region:$e.Yellow,x:794,y:1095},{name:qe.Rastatt,region:$e.Yellow,x:509,y:1109},{name:qe.Karlsruhf,region:$e.Yellow,x:638,y:974}],connections:[{nodes:[qe.Luowigshafen,qe.Mannheim],cost:0},{nodes:[qe.Mannheim,qe.Heidelber],cost:4},{nodes:[qe.Mannheim,qe.Karlsruhf],cost:10},{nodes:[qe.Karlsruhf,qe.Heidelber],cost:9},{nodes:[qe.Heidelber,qe.Sinsheim],cost:5},{nodes:[qe.Sinsheim,qe.Tauberbischofsheim],cost:15},{nodes:[qe.Tauberbischofsheim,qe.Heilbronn],cost:13},{nodes:[qe.Heilbronn,qe.Sinsheim],cost:6},{nodes:[qe.Sinsheim,qe.Karlsruhf],cost:9},{nodes:[qe.Karlsruhf,qe.Rastatt],cost:4},{nodes:[qe.Karlsruhf,qe.Pforzheim],cost:6},{nodes:[qe.Pforzheim,qe.Sinsheim],cost:10},{nodes:[qe.Tauberbischofsheim,qe.Schwabischhall],cost:13},{nodes:[qe.Schwabischhall,qe.Ellwangen],cost:8},{nodes:[qe.Ellwangen,qe.Nurnberg],cost:18},{nodes:[qe.Schwabischhall,qe.Coppingen],cost:11},{nodes:[qe.Coppingen,qe.Ellwangen],cost:10},{nodes:[qe.Ludwigsburg,qe.Heilbronn],cost:5},{nodes:[qe.Heilbronn,qe.Schwabischhall],cost:9},{nodes:[qe.Schwabischhall,qe.Ludwigsburg],cost:10},{nodes:[qe.Ludwigsburg,qe.Coppingen],cost:9},{nodes:[qe.Coppingen,qe.Stuttgart],cost:8},{nodes:[qe.Ludwigsburg,qe.Sinsheim],cost:10},{nodes:[qe.Ludwigsburg,qe.Pforzheim],cost:8},{nodes:[qe.Pforzheim,qe.Badenbaden],cost:9},{nodes:[qe.Badenbaden,qe.Rastatt],cost:2},{nodes:[qe.Strasbourg,qe.Offenburg],cost:5},{nodes:[qe.Offenburg,qe.Badenbaden],cost:8},{nodes:[qe.Pforzheim,qe.Stuttgart],cost:8},{nodes:[qe.Stuttgart,qe.Ludwigsburg],cost:2},{nodes:[qe.Stuttgart,qe.Boblingen],cost:4},{nodes:[qe.Boblingen,qe.Pforzheim],cost:7},{nodes:[qe.Boblingen,qe.Badenbaden],cost:15},{nodes:[qe.Reutlincen,qe.Stuttgart],cost:9},{nodes:[qe.Boblingen,qe.Reutlincen],cost:8},{nodes:[qe.Reutlincen,qe.Badenbaden],cost:22},{nodes:[qe.Offenburg,qe.Reutlincen],cost:30},{nodes:[qe.Reutlincen,qe.Coppingen],cost:10},{nodes:[qe.Coppingen,qe.Ulm],cost:10},{nodes:[qe.Ulm,qe.Reutlincen],cost:16},{nodes:[qe.Ellwangen,qe.Ulm],cost:19},{nodes:[qe.Ulm,qe.Augsburg],cost:16},{nodes:[qe.Reutlincen,qe.Tuttlincen],cost:17},{nodes:[qe.Reutlincen,qe.Sigmarincen],cost:11},{nodes:[qe.Sigmarincen,qe.Ulm],cost:14},{nodes:[qe.Ulm,qe.Biberach],cost:8},{nodes:[qe.Biberach,qe.Sigmarincen],cost:11},{nodes:[qe.Biberach,qe.Ravensburg],cost:9},{nodes:[qe.Ravensburg,qe.Sigmarincen],cost:10},{nodes:[qe.Sigmarincen,qe.Tuttlincen],cost:7},{nodes:[qe.Tuttlincen,qe.Offenburg],cost:27},{nodes:[qe.Offenburg,qe.Laha],cost:3},{nodes:[qe.Laha,qe.Freiburg],cost:8},{nodes:[qe.Laha,qe.Donaueschingen],cost:19},{nodes:[qe.Donaueschingen,qe.Tuttlincen],cost:6},{nodes:[qe.Tuttlincen,qe.Singen],cost:7},{nodes:[qe.Singen,qe.Donaueschingen],cost:7},{nodes:[qe.Donaueschingen,qe.Freiburg],cost:13},{nodes:[qe.Freiburg,qe.Lorrach],cost:10},{nodes:[qe.Freiburg,qe.Waldshuttiencen],cost:15},{nodes:[qe.Waldshuttiencen,qe.Lorrach],cost:9},{nodes:[qe.Lorrach,qe.Basel],cost:2},{nodes:[qe.Waldshuttiencen,qe.Donaueschingen],cost:11},{nodes:[qe.Singen,qe.Konstanz],cost:6},{nodes:[qe.Konstanz,qe.Friedrichshafen],cost:9},{nodes:[qe.Friedrichshafen,qe.Ravensburg],cost:3},{nodes:[qe.Friedrichshafen,qe.Sigmarincen],cost:11},{nodes:[qe.Sigmarincen,qe.Konstanz],cost:14},{nodes:[qe.Konstanz,qe.Tuttlincen],cost:11}],layout:"Portrait",adjustRatio:[.425,.425],mapPosition:[100,-90],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],mapSpecificRules:"Phase order change: buy power plants first, then determine player order. If no power plant is sold in a round, remove the two lowest-numbered plants from the market and replace them from the draw stack. Never remove a power plant whose number is equal to or lower than the number of cities any player has powered. Transregional cities (e.g. Strasbourg) are only available starting in Step 2. Step 2 begins when any player connects to 9 cities (2 players), 6 cities (3–5 players), or 5 cities (6 players)."};(function(e){e["Green"]="green",e["Brown"]="brown",e["Yellow"]="yellow",e["Red"]="red",e["Blue"]="blue"})(Xe||(Xe={})),function(e){e["Groningen"]="Groningen",e["Enschede"]="Enschede",e["Apeldoorn"]="Apeldoorn",e["Arnhem"]="Arnhem",e["Leeuwarden"]="Leeuwarden",e["Nijmegen"]="Nijmegen",e["Denhelder"]="Den Helder",e["Zaanstad"]="Zaanstad",e["Amsterdam"]="Amsterdam",e["Utrecht"]="Utrecht",e["Haarlem"]="Haarlem",e["Leiden"]="Leiden",e["Denhaas"]="Den Haas",e["Rotterdam"]="Rotterdam",e["Enbosch"]="En Bosch",e["Venlo"]="Venlo",e["Eindhoven"]="Eindhoven",e["Tilburg"]="Tilburg",e["Breda"]="Breda",e["Middelburg"]="Middelburg",e["Maastricht"]="Maastricht",e["Leuven"]="Leuven",e["Brussel"]="Brussel",e["Antwerpen"]="Antwerpen",e["Gent"]="Gent",e["Kortrijk"]="Kortrijk",e["Brugge"]="Brugge",e["Dostende"]="Dostende",e["Liege"]="Liege",e["Namur"]="Namur",e["Bruxelles"]="Bruxelles",e["Charleroi"]="Charleroi",e["Mons"]="Mons",e["Arlon"]="Arlon",e["Luxembourg"]="Luxembourg"}(Qe||(Qe={}));var nn,tn,rn={name:"Benelux",cities:[{name:Qe.Groningen,region:Xe.Green,x:654,y:147},{name:Qe.Enschede,region:Xe.Green,x:659,y:369},{name:Qe.Apeldoorn,region:Xe.Green,x:552,y:329},{name:Qe.Arnhem,region:Xe.Green,x:541,y:386},{name:Qe.Leeuwarden,region:Xe.Green,x:560,y:136},{name:Qe.Nijmegen,region:Xe.Green,x:518,y:445},{name:Qe.Denhelder,region:Xe.Green,x:411,y:169},{name:Qe.Zaanstad,region:Xe.Brown,x:432,y:245},{name:Qe.Amsterdam,region:Xe.Brown,x:437,y:299},{name:Qe.Utrecht,region:Xe.Brown,x:429,y:361},{name:Qe.Haarlem,region:Xe.Brown,x:373,y:259},{name:Qe.Leiden,region:Xe.Brown,x:355,y:322},{name:Qe.Denhaas,region:Xe.Brown,x:300,y:347},{name:Qe.Rotterdam,region:Xe.Brown,x:338,y:400},{name:Qe.Enbosch,region:Xe.Yellow,x:448,y:447},{name:Qe.Venlo,region:Xe.Yellow,x:550,y:526},{name:Qe.Eindhoven,region:Xe.Yellow,x:463,y:539},{name:Qe.Tilburg,region:Xe.Yellow,x:404,y:497},{name:Qe.Breda,region:Xe.Yellow,x:349,y:466},{name:Qe.Middelburg,region:Xe.Yellow,x:210,y:453},{name:Qe.Maastricht,region:Xe.Yellow,x:480,y:640},{name:Qe.Leuven,region:Xe.Red,x:352,y:619},{name:Qe.Brussel,region:Xe.Red,x:286,y:595},{name:Qe.Antwerpen,region:Xe.Red,x:304,y:526},{name:Qe.Gent,region:Xe.Red,x:206,y:562},{name:Qe.Kortrijk,region:Xe.Red,x:132,y:589},{name:Qe.Brugge,region:Xe.Red,x:160,y:511},{name:Qe.Dostende,region:Xe.Red,x:94,y:495},{name:Qe.Liege,region:Xe.Blue,x:445,y:705},{name:Qe.Namur,region:Xe.Blue,x:361,y:713},{name:Qe.Bruxelles,region:Xe.Blue,x:283,y:642},{name:Qe.Charleroi,region:Xe.Blue,x:278,y:725},{name:Qe.Mons,region:Xe.Blue,x:212,y:686},{name:Qe.Arlon,region:Xe.Blue,x:431,y:876},{name:Qe.Luxembourg,region:Xe.Blue,x:502,y:918}],connections:[{nodes:[Qe.Denhelder,Qe.Leeuwarden],cost:13},{nodes:[Qe.Leeuwarden,Qe.Groningen],cost:6},{nodes:[Qe.Groningen,Qe.Enschede],cost:12},{nodes:[Qe.Enschede,Qe.Apeldoorn],cost:9},{nodes:[Qe.Apeldoorn,Qe.Arnhem],cost:3},{nodes:[Qe.Arnhem,Qe.Nijmegen],cost:2},{nodes:[Qe.Nijmegen,Qe.Enbosch],cost:6},{nodes:[Qe.Nijmegen,Qe.Venlo],cost:7},{nodes:[Qe.Nijmegen,Qe.Eindhoven],cost:7},{nodes:[Qe.Eindhoven,Qe.Enbosch],cost:4},{nodes:[Qe.Enbosch,Qe.Utrecht],cost:8},{nodes:[Qe.Apeldoorn,Qe.Leeuwarden],cost:15},{nodes:[Qe.Leeuwarden,Qe.Enschede],cost:13},{nodes:[Qe.Enschede,Qe.Arnhem],cost:7},{nodes:[Qe.Arnhem,Qe.Utrecht],cost:6},{nodes:[Qe.Utrecht,Qe.Amsterdam],cost:4},{nodes:[Qe.Amsterdam,Qe.Haarlem],cost:2},{nodes:[Qe.Haarlem,Qe.Zaanstad],cost:2},{nodes:[Qe.Zaanstad,Qe.Denhelder],cost:6},{nodes:[Qe.Denhelder,Qe.Haarlem],cost:7},{nodes:[Qe.Haarlem,Qe.Leiden],cost:3},{nodes:[Qe.Leiden,Qe.Denhaas],cost:2},{nodes:[Qe.Denhaas,Qe.Rotterdam],cost:3},{nodes:[Qe.Rotterdam,Qe.Leiden],cost:3},{nodes:[Qe.Leiden,Qe.Amsterdam],cost:4},{nodes:[Qe.Leiden,Qe.Utrecht],cost:4},{nodes:[Qe.Utrecht,Qe.Rotterdam],cost:5},{nodes:[Qe.Rotterdam,Qe.Enbosch],cost:11},{nodes:[Qe.Breda,Qe.Rotterdam],cost:8},{nodes:[Qe.Breda,Qe.Middelburg],cost:9},{nodes:[Qe.Middelburg,Qe.Antwerpen],cost:8},{nodes:[Qe.Antwerpen,Qe.Brugge],cost:9},{nodes:[Qe.Brugge,Qe.Dostende],cost:2},{nodes:[Qe.Amsterdam,Qe.Zaanstad],cost:1},{nodes:[Qe.Amsterdam,Qe.Apeldoorn],cost:7},{nodes:[Qe.Apeldoorn,Qe.Utrecht],cost:6},{nodes:[Qe.Venlo,Qe.Eindhoven],cost:5},{nodes:[Qe.Eindhoven,Qe.Tilburg],cost:4},{nodes:[Qe.Tilburg,Qe.Breda],cost:2},{nodes:[Qe.Breda,Qe.Enbosch],cost:5},{nodes:[Qe.Breda,Qe.Antwerpen],cost:5},{nodes:[Qe.Antwerpen,Qe.Tilburg],cost:6},{nodes:[Qe.Antwerpen,Qe.Eindhoven],cost:8},{nodes:[Qe.Eindhoven,Qe.Maastricht],cost:8},{nodes:[Qe.Maastricht,Qe.Venlo],cost:10},{nodes:[Qe.Maastricht,Qe.Leuven],cost:7},{nodes:[Qe.Leuven,Qe.Eindhoven],cost:9},{nodes:[Qe.Leuven,Qe.Brussel],cost:2},{nodes:[Qe.Brussel,Qe.Bruxelles],cost:0},{nodes:[Qe.Bruxelles,Qe.Charleroi],cost:5},{nodes:[Qe.Charleroi,Qe.Namur],cost:3},{nodes:[Qe.Namur,Qe.Bruxelles],cost:5},{nodes:[Qe.Leuven,Qe.Namur],cost:5},{nodes:[Qe.Leuven,Qe.Liege],cost:7},{nodes:[Qe.Liege,Qe.Namur],cost:6},{nodes:[Qe.Liege,Qe.Maastricht],cost:3},{nodes:[Qe.Kortrijk,Qe.Dostende],cost:5},{nodes:[Qe.Brugge,Qe.Kortrijk],cost:4},{nodes:[Qe.Kortrijk,Qe.Gent],cost:4},{nodes:[Qe.Gent,Qe.Brugge],cost:3},{nodes:[Qe.Kortrijk,Qe.Bruxelles],cost:10},{nodes:[Qe.Bruxelles,Qe.Mons],cost:5},{nodes:[Qe.Mons,Qe.Kortrijk],cost:8},{nodes:[Qe.Gent,Qe.Antwerpen],cost:5},{nodes:[Qe.Antwerpen,Qe.Brussel],cost:4},{nodes:[Qe.Brussel,Qe.Gent],cost:7},{nodes:[Qe.Antwerpen,Qe.Leuven],cost:4},{nodes:[Qe.Mons,Qe.Charleroi],cost:4},{nodes:[Qe.Charleroi,Qe.Arlon],cost:18},{nodes:[Qe.Arlon,Qe.Luxembourg],cost:5},{nodes:[Qe.Luxembourg,Qe.Liege],cost:20},{nodes:[Qe.Liege,Qe.Arlon],cost:18},{nodes:[Qe.Arlon,Qe.Namur],cost:16},{nodes:[Qe.Tilburg,Qe.Enbosch],cost:3}],layout:"Portrait",mapPosition:[0,-50],adjustRatio:[1.15,1.15],resupply:[[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[1,2,3],[2,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[18,24,6,2],viewBox:[1530,1060],playerOrderPosition:[1225,140],buttonsPosition:[1370,0],playerBoardsPosition:[1170,200],actualMarketWidth:495,mapSpecificRules:"Ecological plants can enter the market earlier. Remove smallest power plant after each round (unless discount plant was removed)."};(function(e){e["Red"]="red",e["Pink"]="pink",e["Purple"]="purple",e["Green"]="green",e["Brown"]="brown",e["Yellow"]="yellow"})(nn||(nn={})),function(e){e["Parnaiba"]="Parnaiba",e["Fortaleza"]="Fortaleza",e["Sadluis"]="Sadluis",e["Belem"]="Belem",e["Teresina"]="Teresina",e["Imperatriz"]="Imperatriz",e["Maraba"]="Maraba",e["Campinagrande"]="Campina Grande",e["Petrolina"]="Petrolina",e["Natal"]="Natal",e["Joaopessoa"]="Joaopessoa",e["Recife"]="Recife",e["Maceio"]="Maceio",e["Aracaju"]="Aracaju",e["Salvadordabahia"]="Salvador Da Bahia",e["Montesclaros"]="Montes Claros",e["Brasilia"]="Brasilia",e["Palmas"]="Palmas",e["Porangatu"]="Porangatu",e["Goiania"]="Goiania",e["Uberlandia"]="Uberlandia",e["Vitoria"]="Vitoria",e["Riodejaneiro"]="Rio De Janeiro",e["Saogoncalo"]="Sao Goncalo",e["Saopaulo"]="Sao Paulo",e["Guarulhos"]="Guarulhos",e["Campinas"]="Campinas",e["Belohorizonte"]="Belo Horizonte",e["Curitiba"]="Curitiba",e["Florianopolis"]="Florianopolis",e["Portoalecre"]="Porto Alecre",e["Pelotas"]="Pelotas",e["Urucuaiana"]="Urucuaiana",e["Londrina"]="Londrina",e["Campogrande"]="Campo Grande",e["Macapa"]="Macapa",e["Boavista"]="Boavista",e["Manaus"]="Manaus",e["Portovelho"]="Porto Velho",e["Cuiaba"]="Cuiaba",e["Vilhena"]="Vilhena",e["Riobranco"]="Rio Branco"}(tn||(tn={}));var on,an,sn={name:"Brazil",cities:[{name:tn.Parnaiba,region:nn.Red,x:855,y:458},{name:tn.Fortaleza,region:nn.Red,x:961,y:478},{name:tn.Sadluis,region:nn.Red,x:772,y:418},{name:tn.Belem,region:nn.Red,x:655,y:378},{name:tn.Teresina,region:nn.Red,x:846,y:548},{name:tn.Imperatriz,region:nn.Red,x:697,y:535},{name:tn.Maraba,region:nn.Red,x:581,y:492},{name:tn.Campinagrande,region:nn.Pink,x:976,y:587},{name:tn.Petrolina,region:nn.Pink,x:872,y:648},{name:tn.Natal,region:nn.Pink,x:1061,y:518},{name:tn.Joaopessoa,region:nn.Pink,x:1097,y:576},{name:tn.Recife,region:nn.Pink,x:1083,y:637},{name:tn.Maceio,region:nn.Pink,x:1040,y:699},{name:tn.Aracaju,region:nn.Pink,x:995,y:750},{name:tn.Salvadordabahia,region:nn.Purple,x:960,y:808},{name:tn.Montesclaros,region:nn.Purple,x:795,y:847},{name:tn.Brasilia,region:nn.Purple,x:671,y:817},{name:tn.Palmas,region:nn.Purple,x:648,y:663},{name:tn.Porangatu,region:nn.Purple,x:598,y:762},{name:tn.Goiania,region:nn.Purple,x:601,y:889},{name:tn.Uberlandia,region:nn.Purple,x:646,y:964},{name:tn.Vitoria,region:nn.Green,x:910,y:971},{name:tn.Riodejaneiro,region:nn.Green,x:795,y:1076},{name:tn.Saogoncalo,region:nn.Green,x:843,y:1033},{name:tn.Saopaulo,region:nn.Green,x:721,y:1134},{name:tn.Guarulhos,region:nn.Green,x:678,y:1089},{name:tn.Campinas,region:nn.Green,x:629,y:1037},{name:tn.Belohorizonte,region:nn.Green,x:771,y:960},{name:tn.Curitiba,region:nn.Brown,x:615,y:1144},{name:tn.Florianopolis,region:nn.Brown,x:665,y:1214},{name:tn.Portoalecre,region:nn.Brown,x:590,y:1281},{name:tn.Pelotas,region:nn.Brown,x:551,y:1346},{name:tn.Urucuaiana,region:nn.Brown,x:444,y:1250},{name:tn.Londrina,region:nn.Brown,x:516,y:1075},{name:tn.Campogrande,region:nn.Brown,x:440,y:983},{name:tn.Macapa,region:nn.Yellow,x:561,y:317},{name:tn.Boavista,region:nn.Yellow,x:308,y:269},{name:tn.Manaus,region:nn.Yellow,x:258,y:466},{name:tn.Portovelho,region:nn.Yellow,x:238,y:620},{name:tn.Cuiaba,region:nn.Yellow,x:432,y:850},{name:tn.Vilhena,region:nn.Yellow,x:328,y:741},{name:tn.Riobranco,region:nn.Yellow,x:87,y:666}],connections:[{nodes:[tn.Boavista,tn.Macapa],cost:22},{nodes:[tn.Macapa,tn.Belem],cost:10},{nodes:[tn.Belem,tn.Sadluis],cost:10},{nodes:[tn.Sadluis,tn.Imperatriz],cost:9},{nodes:[tn.Belem,tn.Imperatriz],cost:9},{nodes:[tn.Belem,tn.Maraba],cost:9},{nodes:[tn.Macapa,tn.Maraba],cost:16},{nodes:[tn.Maraba,tn.Manaus],cost:22},{nodes:[tn.Macapa,tn.Manaus],cost:18},{nodes:[tn.Boavista,tn.Manaus],cost:13},{nodes:[tn.Boavista,tn.Riobranco],cost:30},{nodes:[tn.Riobranco,tn.Manaus],cost:23},{nodes:[tn.Manaus,tn.Portovelho],cost:15},{nodes:[tn.Portovelho,tn.Riobranco],cost:10},{nodes:[tn.Riobranco,tn.Vilhena],cost:18},{nodes:[tn.Portovelho,tn.Vilhena],cost:12},{nodes:[tn.Manaus,tn.Vilhena],cost:21},{nodes:[tn.Vilhena,tn.Cuiaba],cost:10},{nodes:[tn.Vilhena,tn.Maraba],cost:31},{nodes:[tn.Maraba,tn.Imperatriz],cost:4},{nodes:[tn.Sadluis,tn.Teresina],cost:8},{nodes:[tn.Teresina,tn.Imperatriz],cost:11},{nodes:[tn.Imperatriz,tn.Palmas],cost:9},{nodes:[tn.Palmas,tn.Maraba],cost:10},{nodes:[tn.Maraba,tn.Porangatu],cost:17},{nodes:[tn.Porangatu,tn.Goiania],cost:8},{nodes:[tn.Porangatu,tn.Vilhena],cost:23},{nodes:[tn.Cuiaba,tn.Porangatu],cost:16},{nodes:[tn.Porangatu,tn.Palmas],cost:8},{nodes:[tn.Palmas,tn.Brasilia],cost:13},{nodes:[tn.Brasilia,tn.Porangatu],cost:6},{nodes:[tn.Brasilia,tn.Goiania],cost:4},{nodes:[tn.Goiania,tn.Cuiaba],cost:15},{nodes:[tn.Sadluis,tn.Parnaiba],cost:5},{nodes:[tn.Parnaiba,tn.Teresina],cost:5},{nodes:[tn.Parnaiba,tn.Fortaleza],cost:7},{nodes:[tn.Fortaleza,tn.Natal],cost:8},{nodes:[tn.Natal,tn.Joaopessoa],cost:3},{nodes:[tn.Joaopessoa,tn.Recife],cost:2},{nodes:[tn.Recife,tn.Maceio],cost:3},{nodes:[tn.Maceio,tn.Aracaju],cost:3},{nodes:[tn.Aracaju,tn.Salvadordabahia],cost:4},{nodes:[tn.Natal,tn.Campinagrande],cost:4},{nodes:[tn.Fortaleza,tn.Teresina],cost:10},{nodes:[tn.Teresina,tn.Petrolina],cost:12},{nodes:[tn.Petrolina,tn.Palmas],cost:19},{nodes:[tn.Petrolina,tn.Brasilia],cost:22},{nodes:[tn.Petrolina,tn.Montesclaros],cost:19},{nodes:[tn.Montesclaros,tn.Salvadordabahia],cost:16},{nodes:[tn.Salvadordabahia,tn.Petrolina],cost:10},{nodes:[tn.Petrolina,tn.Campinagrande],cost:12},{nodes:[tn.Petrolina,tn.Aracaju],cost:11},{nodes:[tn.Vitoria,tn.Salvadordabahia],cost:16},{nodes:[tn.Montesclaros,tn.Vitoria],cost:14},{nodes:[tn.Vitoria,tn.Saogoncalo],cost:6},{nodes:[tn.Vitoria,tn.Belohorizonte],cost:9},{nodes:[tn.Belohorizonte,tn.Montesclaros],cost:8},{nodes:[tn.Montesclaros,tn.Brasilia],cost:9},{nodes:[tn.Brasilia,tn.Uberlandia],cost:8},{nodes:[tn.Uberlandia,tn.Goiania],cost:7},{nodes:[tn.Goiania,tn.Campogrande],cost:16},{nodes:[tn.Campogrande,tn.Cuiaba],cost:13},{nodes:[tn.Campogrande,tn.Londrina],cost:10},{nodes:[tn.Campogrande,tn.Uberlandia],cost:13},{nodes:[tn.Uberlandia,tn.Londrina],cost:12},{nodes:[tn.Londrina,tn.Campinas],cost:9},{nodes:[tn.Campinas,tn.Uberlandia],cost:9},{nodes:[tn.Uberlandia,tn.Belohorizonte],cost:10},{nodes:[tn.Uberlandia,tn.Brasilia],cost:8},{nodes:[tn.Brasilia,tn.Belohorizonte],cost:14},{nodes:[tn.Belohorizonte,tn.Saogoncalo],cost:7},{nodes:[tn.Saogoncalo,tn.Riodejaneiro],cost:0},{nodes:[tn.Riodejaneiro,tn.Saopaulo],cost:7},{nodes:[tn.Saopaulo,tn.Guarulhos],cost:0},{nodes:[tn.Guarulhos,tn.Campinas],cost:0},{nodes:[tn.Campinas,tn.Curitiba],cost:6},{nodes:[tn.Curitiba,tn.Londrina],cost:7},{nodes:[tn.Saopaulo,tn.Florianopolis],cost:9},{nodes:[tn.Florianopolis,tn.Curitiba],cost:4},{nodes:[tn.Londrina,tn.Urucuaiana],cost:18},{nodes:[tn.Urucuaiana,tn.Pelotas],cost:9},{nodes:[tn.Pelotas,tn.Portoalecre],cost:4},{nodes:[tn.Portoalecre,tn.Urucuaiana],cost:10},{nodes:[tn.Londrina,tn.Portoalecre],cost:16},{nodes:[tn.Portoalecre,tn.Curitiba],cost:11},{nodes:[tn.Portoalecre,tn.Florianopolis],cost:7},{nodes:[tn.Guarulhos,tn.Belohorizonte],cost:10},{nodes:[tn.Maceio,tn.Campinagrande],cost:6},{nodes:[tn.Petrolina,tn.Fortaleza],cost:14},{nodes:[tn.Recife,tn.Campinagrande],cost:3}],layout:"Portrait",adjustRatio:[.85,.85],mapPosition:[-20,-130],resupply:[[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[24,18,6,2],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve),i=a.filter((function(e){return e.type==ve.Garbage&&e.number>14}));if("original"==n){a=a.slice(8);var s=a.splice(2,1)[0],c=a.splice(2,1)[0],u=a.pop();a=De(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(i),a=De(a,t()+""),a.unshift(c),a.unshift(s),a.push(u),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var l=a.splice(3,1)[0],d=a.splice(10,1)[0],f=De(a.splice(0,11),t()+""),p=f.splice(0,6);p.push(l,d),p=p.sort((function(e,n){return e.number-n.number})),r=p.slice(0,4),o=p.slice(4);var h=f.shift(),g=a.pop();a=De(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e?(f=f.slice(1),a=De(a.slice(5).concat(f),t()+"")):3==e?(f=f.slice(2),a=De(a.slice(6).concat(f),t()+"")):4==e?(f=f.slice(1),a=De(a.slice(3).concat(f),t()+"")):a=De(a.concat(f),t()+""),a=a.concat(i),a=De(a,t()+""),a.unshift(h),a.push(g)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Play with all garbage power plants."};(function(e){e["Blue"]="blue",e["Brown"]="brown",e["Purple"]="purple",e["Red"]="red",e["Yellow"]="yellow",e["Green"]="green"})(on||(on={})),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"}(an||(an={}));var cn,un,ln={name:"Central Europe",cities:[{name:an.Bialystok,region:on.Blue,x:543,y:135},{name:an.Lublin,region:on.Blue,x:590,y:294},{name:an.Warszawa,region:on.Blue,x:482,y:253},{name:an.Krakow,region:on.Blue,x:533,y:443},{name:an.Sosnowiec,region:on.Blue,x:468,y:443},{name:an.Katowice,region:on.Blue,x:446,y:483},{name:an.Czestochowa,region:on.Blue,x:419,y:397},{name:an.Presov,region:on.Brown,x:619,y:487},{name:an.Kosice,region:on.Brown,x:646,y:538},{name:an.Poprad,region:on.Brown,x:565,y:529},{name:an.Zilina,region:on.Brown,x:476,y:551},{name:an.Bratislava,region:on.Brown,x:423,y:693},{name:an.Trnava,region:on.Brown,x:452,y:638},{name:an.Nyiregyhaza,region:on.Purple,x:698,y:582},{name:an.Miskolc,region:on.Purple,x:621,y:597},{name:an.Szeged,region:on.Purple,x:680,y:764},{name:an.Kecskeme,region:on.Purple,x:630,y:727},{name:an.Budapest,region:on.Purple,x:557,y:689},{name:an.Pecs,region:on.Purple,x:566,y:832},{name:an.Gyor,region:on.Purple,x:489,y:729},{name:an.Banskabystrica,region:on.Brown,x:525,y:601},{name:an.Goansk,region:on.Red,x:286,y:158},{name:an.Goynia,region:on.Red,x:249,y:131},{name:an.Byogoszcz,region:on.Red,x:297,y:257},{name:an.Wroclaw,region:on.Red,x:321,y:445},{name:an.Poznan,region:on.Red,x:261,y:342},{name:an.Szczecin,region:on.Red,x:110,y:316},{name:an.Lodz,region:on.Red,x:420,y:337},{name:an.Graz,region:on.Yellow,x:376,y:811},{name:an.Klagenfurt,region:on.Yellow,x:340,y:875},{name:an.Villach,region:on.Yellow,x:272,y:875},{name:an.Innsbruck,region:on.Yellow,x:140,y:879},{name:an.Salzburg,region:on.Yellow,x:209,y:805},{name:an.Linz,region:on.Yellow,x:265,y:744},{name:an.Wien,region:on.Yellow,x:366,y:701},{name:an.Hradeckralove,region:on.Green,x:291,y:546},{name:an.Brno,region:on.Green,x:354,y:597},{name:an.Ceskebudejovice,region:on.Green,x:248,y:670},{name:an.Praha,region:on.Green,x:220,y:593},{name:an.Ostrava,region:on.Green,x:413,y:535},{name:an.Plzen,region:on.Green,x:158,y:645},{name:an.Ustinadlaben,region:on.Green,x:165,y:537}],connections:[{nodes:[an.Goynia,an.Goansk],cost:0},{nodes:[an.Goansk,an.Byogoszcz],cost:8},{nodes:[an.Goynia,an.Szczecin],cost:17},{nodes:[an.Szczecin,an.Poznan],cost:14},{nodes:[an.Szczecin,an.Wroclaw],cost:22},{nodes:[an.Wroclaw,an.Poznan],cost:9},{nodes:[an.Poznan,an.Lodz],cost:13},{nodes:[an.Lodz,an.Byogoszcz],cost:12},{nodes:[an.Byogoszcz,an.Szczecin],cost:15},{nodes:[an.Wroclaw,an.Lodz],cost:12},{nodes:[an.Lodz,an.Czestochowa],cost:7},{nodes:[an.Czestochowa,an.Wroclaw],cost:9},{nodes:[an.Wroclaw,an.Ostrava],cost:11},{nodes:[an.Ostrava,an.Hradeckralove],cost:16},{nodes:[an.Hradeckralove,an.Wroclaw],cost:10},{nodes:[an.Wroclaw,an.Ustinadlaben],cost:17},{nodes:[an.Ustinadlaben,an.Hradeckralove],cost:10},{nodes:[an.Hradeckralove,an.Brno],cost:9},{nodes:[an.Brno,an.Ostrava],cost:12},{nodes:[an.Ostrava,an.Katowice],cost:4},{nodes:[an.Czestochowa,an.Lublin],cost:17},{nodes:[an.Lublin,an.Presov],cost:20},{nodes:[an.Presov,an.Krakow],cost:13},{nodes:[an.Krakow,an.Poprad],cost:11},{nodes:[an.Poprad,an.Zilina],cost:11},{nodes:[an.Zilina,an.Krakow],cost:12},{nodes:[an.Krakow,an.Sosnowiec],cost:4},{nodes:[an.Warszawa,an.Bialystok],cost:14},{nodes:[an.Bialystok,an.Goansk],cost:20},{nodes:[an.Byogoszcz,an.Warszawa],cost:15},{nodes:[an.Warszawa,an.Lublin],cost:10},{nodes:[an.Lodz,an.Warszawa],cost:7},{nodes:[an.Bialystok,an.Lublin],cost:15},{nodes:[an.Lublin,an.Krakow],cost:16},{nodes:[an.Poprad,an.Kosice],cost:6},{nodes:[an.Kosice,an.Nyiregyhaza],cost:8},{nodes:[an.Kosice,an.Miskolc],cost:4},{nodes:[an.Miskolc,an.Poprad],cost:9},{nodes:[an.Poprad,an.Banskabystrica],cost:11},{nodes:[an.Banskabystrica,an.Zilina],cost:6},{nodes:[an.Zilina,an.Trnava],cost:10},{nodes:[an.Zilina,an.Brno],cost:14},{nodes:[an.Brno,an.Wien],cost:8},{nodes:[an.Bratislava,an.Brno],cost:10},{nodes:[an.Brno,an.Trnava],cost:10},{nodes:[an.Trnava,an.Banskabystrica],cost:10},{nodes:[an.Banskabystrica,an.Miskolc],cost:11},{nodes:[an.Miskolc,an.Nyiregyhaza],cost:7},{nodes:[an.Nyiregyhaza,an.Szeged],cost:16},{nodes:[an.Szeged,an.Kecskeme],cost:5},{nodes:[an.Budapest,an.Trnava],cost:9},{nodes:[an.Trnava,an.Bratislava],cost:2},{nodes:[an.Bratislava,an.Wien],cost:3},{nodes:[an.Wien,an.Ceskebudejovice],cost:14},{nodes:[an.Ceskebudejovice,an.Praha],cost:10},{nodes:[an.Praha,an.Brno],cost:13},{nodes:[an.Brno,an.Ceskebudejovice],cost:15},{nodes:[an.Ceskebudejovice,an.Plzen],cost:11},{nodes:[an.Plzen,an.Praha],cost:7},{nodes:[an.Praha,an.Ustinadlaben],cost:6},{nodes:[an.Ustinadlaben,an.Plzen],cost:9},{nodes:[an.Ceskebudejovice,an.Linz],cost:8},{nodes:[an.Linz,an.Wien],cost:11},{nodes:[an.Wien,an.Graz],cost:12},{nodes:[an.Graz,an.Linz],cost:16},{nodes:[an.Linz,an.Salzburg],cost:9},{nodes:[an.Salzburg,an.Graz],cost:22},{nodes:[an.Graz,an.Gyor],cost:14},{nodes:[an.Gyor,an.Wien],cost:8},{nodes:[an.Bratislava,an.Gyor],cost:6},{nodes:[an.Gyor,an.Trnava],cost:5},{nodes:[an.Banskabystrica,an.Budapest],cost:12},{nodes:[an.Budapest,an.Gyor],cost:5},{nodes:[an.Budapest,an.Kecskeme],cost:6},{nodes:[an.Kecskeme,an.Miskolc],cost:10},{nodes:[an.Miskolc,an.Budapest],cost:9},{nodes:[an.Szeged,an.Pecs],cost:12},{nodes:[an.Pecs,an.Kecskeme],cost:11},{nodes:[an.Budapest,an.Pecs],cost:12},{nodes:[an.Pecs,an.Gyor],cost:15},{nodes:[an.Graz,an.Pecs],cost:19},{nodes:[an.Graz,an.Klagenfurt],cost:10},{nodes:[an.Klagenfurt,an.Villach],cost:4},{nodes:[an.Klagenfurt,an.Salzburg],cost:20},{nodes:[an.Salzburg,an.Innsbruck],cost:15},{nodes:[an.Innsbruck,an.Villach],cost:22},{nodes:[an.Poznan,an.Byogoszcz],cost:7},{nodes:[an.Lublin,an.Lodz],cost:16},{nodes:[an.Czestochowa,an.Sosnowiec],cost:4},{nodes:[an.Sosnowiec,an.Katowice],cost:0},{nodes:[an.Czestochowa,an.Krakow],cost:6},{nodes:[an.Poprad,an.Presov],cost:7},{nodes:[an.Presov,an.Kosice],cost:2},{nodes:[an.Ostrava,an.Zilina],cost:7},{nodes:[an.Ostrava,an.Krakow],cost:7},{nodes:[an.Praha,an.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"})(cn||(cn={})),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"}(un||(un={}));var dn,fn,pn={name:"China",cities:[{name:un.Hegang,region:cn.Pink,x:3920,y:290},{name:un.Qiqhaer,region:cn.Pink,x:3422,y:262},{name:un.Haerbin,region:cn.Pink,x:3672,y:434},{name:un.Jilin,region:cn.Pink,x:3744,y:614},{name:un.Fushun,region:cn.Pink,x:3712,y:784},{name:un.Anshan,region:cn.Pink,x:3510,y:902},{name:un.Dalian,region:cn.Pink,x:3424,y:1052},{name:un.Shanghai,region:cn.Green,x:3462,y:1672},{name:un.Hangzhou,region:cn.Green,x:3280,y:1824},{name:un.Nanjing,region:cn.Green,x:3130,y:1632},{name:un.Qingoad,region:cn.Green,x:3322,y:1316},{name:un.Jinan,region:cn.Green,x:3002,y:1292},{name:un.Zhengzhou,region:cn.Green,x:2778,y:1438},{name:un.Shijiazhuang,region:cn.Green,x:2866,y:1152},{name:un.Changchun,region:cn.Red,x:3504,y:590},{name:un.Shenyang,region:cn.Red,x:3458,y:778},{name:un.Tangshan,region:cn.Red,x:3158,y:908},{name:un.Tianjin,region:cn.Red,x:3134,y:1016},{name:un.Beijing,region:cn.Red,x:2886,y:910},{name:un.Taiyuan,region:cn.Red,x:2588,y:1130},{name:un.Badtou,region:cn.Red,x:2500,y:862},{name:un.Fuzhou,region:cn.Brown,x:3290,y:2132},{name:un.Nanchang,region:cn.Brown,x:3004,y:1974},{name:un.Chaozhou,region:cn.Brown,x:3096,y:2322},{name:un.Hongkong,region:cn.Brown,x:2902,y:2552},{name:un.Guangzhou,region:cn.Brown,x:2694,y:2352},{name:un.Changsha,region:cn.Brown,x:2682,y:1988},{name:un.Wuhan,region:cn.Brown,x:2810,y:1786},{name:un.Hami,region:cn.Purple,x:1816,y:698},{name:un.Karamay,region:cn.Purple,x:1304,y:372},{name:un.Wulumuqi,region:cn.Purple,x:1520,y:558},{name:un.Kuerle,region:cn.Purple,x:1326,y:756},{name:un.Yinchjan,region:cn.Purple,x:2208,y:1058},{name:un.Xining,region:cn.Purple,x:1868,y:1226},{name:un.Lanzhou,region:cn.Purple,x:2142,y:1328},{name:un.Kunming,region:cn.Yellow,x:1840,y:2248},{name:un.Chengou,region:cn.Yellow,x:1988,y:1736},{name:un.Xian,region:cn.Yellow,x:2440,y:1478},{name:un.Chongqing,region:cn.Yellow,x:2300,y:1880},{name:un.Nanning,region:cn.Yellow,x:2318,y:2452},{name:un.Haikou,region:cn.Yellow,x:2524,y:2680},{name:un.Chiyang,region:cn.Yellow,x:2212,y:2112}],connections:[{nodes:[un.Kunming,un.Chengou],cost:16},{nodes:[un.Nanning,un.Haikou],cost:10},{nodes:[un.Guangzhou,un.Hongkong],cost:4},{nodes:[un.Guangzhou,un.Chaozhou],cost:7},{nodes:[un.Chaozhou,un.Hongkong],cost:7},{nodes:[un.Guangzhou,un.Haikou],cost:13},{nodes:[un.Nanning,un.Guangzhou],cost:11},{nodes:[un.Xining,un.Chengou],cost:20},{nodes:[un.Chengou,un.Chongqing],cost:6},{nodes:[un.Chongqing,un.Chiyang],cost:9},{nodes:[un.Chiyang,un.Kunming],cost:12},{nodes:[un.Chiyang,un.Nanning],cost:12},{nodes:[un.Chiyang,un.Guangzhou],cost:18},{nodes:[un.Guangzhou,un.Changsha],cost:14},{nodes:[un.Changsha,un.Chongqing],cost:16},{nodes:[un.Changsha,un.Wuhan],cost:6},{nodes:[un.Wuhan,un.Nanchang],cost:6},{nodes:[un.Nanchang,un.Changsha],cost:7},{nodes:[un.Changsha,un.Chiyang],cost:15},{nodes:[un.Chiyang,un.Chengou],cost:13},{nodes:[un.Guangzhou,un.Nanchang],cost:16},{nodes:[un.Nanchang,un.Chaozhou],cost:14},{nodes:[un.Chaozhou,un.Fuzhou],cost:9},{nodes:[un.Fuzhou,un.Nanchang],cost:13},{nodes:[un.Wuhan,un.Hangzhou],cost:13},{nodes:[un.Hangzhou,un.Fuzhou],cost:13},{nodes:[un.Hangzhou,un.Shanghai],cost:4},{nodes:[un.Shanghai,un.Nanjing],cost:6},{nodes:[un.Nanjing,un.Hangzhou],cost:5},{nodes:[un.Hangzhou,un.Nanchang],cost:10},{nodes:[un.Chongqing,un.Wuhan],cost:18},{nodes:[un.Lanzhou,un.Chengou],cost:16},{nodes:[un.Chengou,un.Xian],cost:14},{nodes:[un.Xian,un.Chongqing],cost:14},{nodes:[un.Xian,un.Wuhan],cost:15},{nodes:[un.Wuhan,un.Zhengzhou],cost:10},{nodes:[un.Zhengzhou,un.Xian],cost:10},{nodes:[un.Xian,un.Lanzhou],cost:15},{nodes:[un.Lanzhou,un.Yinchjan],cost:9},{nodes:[un.Yinchjan,un.Xining],cost:11},{nodes:[un.Lanzhou,un.Taiyuan],cost:18},{nodes:[un.Taiyuan,un.Xian],cost:12},{nodes:[un.Taiyuan,un.Zhengzhou],cost:11},{nodes:[un.Taiyuan,un.Shijiazhuang],cost:5},{nodes:[un.Shijiazhuang,un.Tianjin],cost:5},{nodes:[un.Shijiazhuang,un.Jinan],cost:6},{nodes:[un.Shijiazhuang,un.Zhengzhou],cost:9},{nodes:[un.Zhengzhou,un.Jinan],cost:7},{nodes:[un.Zhengzhou,un.Nanjing],cost:12},{nodes:[un.Nanjing,un.Wuhan],cost:10},{nodes:[un.Jinan,un.Nanjing],cost:11},{nodes:[un.Nanjing,un.Qingoad],cost:12},{nodes:[un.Qingoad,un.Jinan],cost:6},{nodes:[un.Jinan,un.Tianjin],cost:6},{nodes:[un.Xining,un.Lanzhou],cost:6},{nodes:[un.Yinchjan,un.Badtou],cost:9},{nodes:[un.Badtou,un.Taiyuan],cost:9},{nodes:[un.Taiyuan,un.Yinchjan],cost:14},{nodes:[un.Yinchjan,un.Hami],cost:25},{nodes:[un.Hami,un.Xining],cost:25},{nodes:[un.Wulumuqi,un.Kuerle],cost:9},{nodes:[un.Kuerle,un.Karamay],cost:12},{nodes:[un.Karamay,un.Wulumuqi],cost:7},{nodes:[un.Wulumuqi,un.Hami],cost:12},{nodes:[un.Hami,un.Kuerle],cost:15},{nodes:[un.Taiyuan,un.Beijing],cost:10},{nodes:[un.Beijing,un.Shijiazhuang],cost:6},{nodes:[un.Beijing,un.Tangshan],cost:3},{nodes:[un.Tangshan,un.Tianjin],cost:0},{nodes:[un.Beijing,un.Badtou],cost:14},{nodes:[un.Tangshan,un.Shenyang],cost:11},{nodes:[un.Dalian,un.Anshan],cost:6},{nodes:[un.Qiqhaer,un.Hegang],cost:11},{nodes:[un.Hegang,un.Haerbin],cost:7},{nodes:[un.Haerbin,un.Qiqhaer],cost:6},{nodes:[un.Changchun,un.Jilin],cost:5},{nodes:[un.Jilin,un.Haerbin],cost:5},{nodes:[un.Haerbin,un.Changchun],cost:5},{nodes:[un.Changchun,un.Shenyang],cost:5},{nodes:[un.Shenyang,un.Anshan],cost:2},{nodes:[un.Jilin,un.Fushun],cost:6},{nodes:[un.Fushun,un.Shenyang],cost:0},{nodes:[un.Changchun,un.Qiqhaer],cost:9}],layout:"Portrait",mapPosition:[-400,70],adjustRatio:[.35,.35],resupply:[[[4,4,3],[5,5,3],[6,6,4],[7,7,5],[9,9,6]],[[2,2,4],[3,3,4],[4,4,5],[5,5,6],[6,6,7]],[[2,2,1],[2,2,1],[3,3,2],[3,3,3],[5,5,3]],[[1,1,1],[1,1,1],[2,2,2],[3,3,2],[3,3,3]]],startingResources:[12,12,6,0],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ve),o=[];2==e||3==e?o=[3,4,9,11,16,18,20,24,30,33,46]:4==e?o=[3,4,11,18,24,33,46]:5!=e&&6!=e||(o=[3,4,33]);var a=r.filter((function(e){return!o.includes(e.number)})),i=a.filter((function(e){return e.number<=30})),s=a.filter((function(e){return e.type==ve.Step3})),c=De(a.filter((function(e){return e.number>=31&&e.number<=35})).concat(s),t()+""),u=De(a.filter((function(e){return e.number>=36&&e.number<=50})),t()+""),l=i.splice(0,e),d=[],f=i.concat(c).concat(u);return{actualMarket:l,futureMarket:d,powerPlantsDeck:f}},mapSpecificRules:"The power plant deck is arranged as follows: plants from 3-30 in order, plants from 31-35 and step 3 card shuffled, plants from 36-50 shuffled.\nThe same set of plants are removed in every game.\nThere are several changes to when new plants are drawn. In particular, during steps 1 and 2, plants are only drawn from the deck during the bureaucracy phase."};(function(e){e["Pink"]="pink",e["Red"]="red",e["Brown"]="brown",e["Yellow"]="yellow",e["Orange"]="orange",e["Blue"]="blue",e["Green"]="green"})(dn||(dn={})),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"}(fn||(fn={}));var hn,gn,yn={name:"Europe",cities:[{name:fn.Glasgow,region:dn.Pink,x:490,y:510},{name:fn.Dublin,region:dn.Pink,x:390,y:660},{name:fn.Birmingham,region:dn.Pink,x:485,y:695},{name:fn.London,region:dn.Pink,x:545,y:800},{name:fn.Randstad,region:dn.Pink,x:786,y:594},{name:fn.Vlaanderen,region:dn.Pink,x:794,y:756},{name:fn.RheinRuhr,region:dn.Pink,x:820,y:884},{name:fn.Paris,region:dn.Red,x:632,y:926},{name:fn.Bordeaux,region:dn.Red,x:655,y:1095},{name:fn.Lyon,region:dn.Red,x:785,y:1100},{name:fn.Marseille,region:dn.Red,x:815,y:1240},{name:fn.Barcelona,region:dn.Red,x:650,y:1280},{name:fn.Madrid,region:dn.Red,x:435,y:1335},{name:fn.Lisboa,region:dn.Red,x:255,y:1335},{name:fn.Bremen,region:dn.Brown,x:1010,y:770},{name:fn.Berlin,region:dn.Brown,x:1180,y:800},{name:fn.RheinMain,region:dn.Brown,x:982,y:898},{name:fn.Stuttgart,region:dn.Brown,x:995,y:1e3},{name:fn.München,region:dn.Brown,x:1114,y:1020},{name:fn.Praha,region:dn.Brown,x:1235,y:940},{name:fn.Katowice,region:dn.Brown,x:1380,y:940},{name:fn.Zürich,region:dn.Yellow,x:1010,y:1100},{name:fn.Milano,region:dn.Yellow,x:1075,y:1180},{name:fn.Roma,region:dn.Yellow,x:1180,y:1310},{name:fn.Napoli,region:dn.Yellow,x:1235,y:1430},{name:fn.Wien,region:dn.Yellow,x:1265,y:1080},{name:fn.Budapest,region:dn.Yellow,x:1390,y:1080},{name:fn.Zagreb,region:dn.Yellow,x:1300,y:1180},{name:fn.Oslo,region:dn.Orange,x:1015,y:365},{name:fn.Stockholm,region:dn.Orange,x:1170,y:415},{name:fn.Helsinki,region:dn.Orange,x:1395,y:360},{name:fn.Tallinn,region:dn.Orange,x:1410,y:470},{name:fn.Riga,region:dn.Orange,x:1395,y:575},{name:fn.Kobenhavn,region:dn.Orange,x:1180,y:660},{name:fn.StPetersburg,region:dn.Orange,x:1620,y:460},{name:fn.Warszawa,region:dn.Blue,x:1500,y:815},{name:fn.Minsk,region:dn.Blue,x:1610,y:815},{name:fn.Moskwa,region:dn.Blue,x:1830,y:600},{name:fn.Kyjiv,region:dn.Blue,x:1690,y:980},{name:fn.Kharkiv,region:dn.Blue,x:1860,y:980},{name:fn.Odessa,region:dn.Blue,x:1720,y:1100},{name:fn.Bucuresti,region:dn.Blue,x:1610,y:1175},{name:fn.Beograd,region:dn.Green,x:1390,y:1175},{name:fn.Sofia,region:dn.Green,x:1505,y:1240},{name:fn.Tirana,region:dn.Green,x:1370,y:1330},{name:fn.Athina,region:dn.Green,x:1480,y:1450},{name:fn.Istanbul,region:dn.Green,x:1665,y:1335},{name:fn.Izmir,region:dn.Green,x:1730,y:1430},{name:fn.Ankara,region:dn.Green,x:1850,y:1380}],connections:[{nodes:[fn.Dublin,fn.Glasgow],cost:17},{nodes:[fn.Glasgow,fn.Birmingham],cost:13},{nodes:[fn.Dublin,fn.Birmingham],cost:15},{nodes:[fn.Birmingham,fn.London],cost:4},{nodes:[fn.London,fn.Vlaanderen],cost:15},{nodes:[fn.London,fn.Randstad],cost:18},{nodes:[fn.Randstad,fn.Vlaanderen],cost:4},{nodes:[fn.Vlaanderen,fn.RheinRuhr],cost:4},{nodes:[fn.Paris,fn.Bordeaux],cost:12},{nodes:[fn.Paris,fn.Lyon],cost:11},{nodes:[fn.Bordeaux,fn.Lyon],cost:12},{nodes:[fn.Lyon,fn.Marseille],cost:8},{nodes:[fn.Bordeaux,fn.Marseille],cost:12},{nodes:[fn.Marseille,fn.Barcelona],cost:11},{nodes:[fn.Bordeaux,fn.Barcelona],cost:15},{nodes:[fn.Bordeaux,fn.Madrid],cost:15},{nodes:[fn.Madrid,fn.Barcelona],cost:14},{nodes:[fn.Madrid,fn.Lisboa],cost:13},{nodes:[fn.Paris,fn.London],cost:16},{nodes:[fn.Paris,fn.Vlaanderen],cost:7},{nodes:[fn.Paris,fn.RheinRuhr],cost:10},{nodes:[fn.Bremen,fn.Berlin],cost:6},{nodes:[fn.Bremen,fn.RheinMain],cost:9},{nodes:[fn.Berlin,fn.RheinMain],cost:10},{nodes:[fn.Berlin,fn.Praha],cost:7},{nodes:[fn.RheinMain,fn.Praha],cost:10},{nodes:[fn.RheinMain,fn.München],cost:6},{nodes:[fn.RheinMain,fn.Stuttgart],cost:3},{nodes:[fn.Stuttgart,fn.München],cost:5},{nodes:[fn.München,fn.Praha],cost:6},{nodes:[fn.Praha,fn.Katowice],cost:8},{nodes:[fn.Bremen,fn.Randstad],cost:8},{nodes:[fn.Bremen,fn.Vlaanderen],cost:10},{nodes:[fn.RheinMain,fn.Vlaanderen],cost:6},{nodes:[fn.RheinMain,fn.RheinRuhr],cost:3},{nodes:[fn.Stuttgart,fn.Paris],cost:14},{nodes:[fn.Zürich,fn.Milano],cost:11},{nodes:[fn.Milano,fn.Zagreb],cost:17},{nodes:[fn.Milano,fn.Roma],cost:19},{nodes:[fn.Roma,fn.Napoli],cost:7},{nodes:[fn.Wien,fn.Budapest],cost:5},{nodes:[fn.Wien,fn.Zagreb],cost:8},{nodes:[fn.Budapest,fn.Zagreb],cost:7},{nodes:[fn.Paris,fn.Zürich],cost:14},{nodes:[fn.Lyon,fn.Zürich],cost:14},{nodes:[fn.Lyon,fn.Milano],cost:11},{nodes:[fn.Marseille,fn.Milano],cost:13},{nodes:[fn.Zürich,fn.München],cost:8},{nodes:[fn.Zürich,fn.Stuttgart],cost:5},{nodes:[fn.München,fn.Wien],cost:9},{nodes:[fn.Praha,fn.Wien],cost:7},{nodes:[fn.Wien,fn.Katowice],cost:8},{nodes:[fn.Budapest,fn.Katowice],cost:11},{nodes:[fn.Oslo,fn.Kobenhavn],cost:17},{nodes:[fn.Oslo,fn.Stockholm],cost:13},{nodes:[fn.Stockholm,fn.Kobenhavn],cost:18},{nodes:[fn.Stockholm,fn.Helsinki],cost:21},{nodes:[fn.Helsinki,fn.StPetersburg],cost:11},{nodes:[fn.Tallinn,fn.StPetersburg],cost:9},{nodes:[fn.Tallinn,fn.Riga],cost:7},{nodes:[fn.Riga,fn.StPetersburg],cost:13},{nodes:[fn.Kobenhavn,fn.Bremen],cost:12},{nodes:[fn.Kobenhavn,fn.Berlin],cost:15},{nodes:[fn.Warszawa,fn.Minsk],cost:10},{nodes:[fn.Warszawa,fn.Kyjiv],cost:14},{nodes:[fn.Minsk,fn.Moskwa],cost:14},{nodes:[fn.Minsk,fn.Kyjiv],cost:10},{nodes:[fn.Moskwa,fn.Kharkiv],cost:16},{nodes:[fn.Kyjiv,fn.Kharkiv],cost:9},{nodes:[fn.Kyjiv,fn.Odessa],cost:9},{nodes:[fn.Kharkiv,fn.Odessa],cost:13},{nodes:[fn.Odessa,fn.Bucuresti],cost:10},{nodes:[fn.Berlin,fn.Warszawa],cost:11},{nodes:[fn.Praha,fn.Warszawa],cost:11},{nodes:[fn.Katowice,fn.Warszawa],cost:5},{nodes:[fn.Kobenhavn,fn.Warszawa],cost:25},{nodes:[fn.Riga,fn.Warszawa],cost:12},{nodes:[fn.Riga,fn.Minsk],cost:8},{nodes:[fn.Riga,fn.Moskwa],cost:18},{nodes:[fn.StPetersburg,fn.Moskwa],cost:14},{nodes:[fn.Kyjiv,fn.Budapest],cost:21},{nodes:[fn.Odessa,fn.Budapest],cost:25},{nodes:[fn.Bucuresti,fn.Budapest],cost:16},{nodes:[fn.Beograd,fn.Sofia],cost:11},{nodes:[fn.Beograd,fn.Tirana],cost:15},{nodes:[fn.Sofia,fn.Tirana],cost:13},{nodes:[fn.Sofia,fn.Athina],cost:17},{nodes:[fn.Sofia,fn.Istanbul],cost:13},{nodes:[fn.Tirana,fn.Athina],cost:16},{nodes:[fn.Istanbul,fn.Izmir],cost:8},{nodes:[fn.Istanbul,fn.Ankara],cost:9},{nodes:[fn.Izmir,fn.Ankara],cost:10},{nodes:[fn.Bucuresti,fn.Beograd],cost:12},{nodes:[fn.Bucuresti,fn.Sofia],cost:9},{nodes:[fn.Bucuresti,fn.Istanbul],cost:13},{nodes:[fn.Beograd,fn.Zagreb],cost:9},{nodes:[fn.Beograd,fn.Napoli],cost:18},{nodes:[fn.Beograd,fn.Budapest],cost:10},{nodes:[fn.Tirana,fn.Napoli],cost:25}],layout:"Landscape",adjustRatio:[.5,.5],mapPosition:[-30,-50],mapRotation:10,resupply:[[[2,6,2],[2,6,2],[3,7,4],[3,8,4],[5,10,5]],[[2,2,3],[2,2,3],[3,3,4],[4,3,5],[4,5,6]],[[2,3,5],[2,3,5],[3,4,5],[3,5,7],[4,6,8]],[[1,1,2],[1,1,2],[1,2,2],[2,3,3],[2,3,4]]],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,5,5,6,6,7,7,8,8,9,9],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,9,9],garbagePrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8],uraniumPrices:[1,2,3,4,5,6,7,7,8,8,9,9],startingResources:[20,16,18,4],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ve),o=r.findIndex((function(e){return e.type===ve.Step3})),a=r.splice(o,1)[0],i=De(r.splice(0,13),t()+""),s=De(r,t()+""),c=i.splice(0,9).sort((function(e,n){return e.number-n.number})),u=c.slice(0,4),l=c.slice(4),d=0,f=0;2==e?(d=1,f=5):3==e?(d=2,f=6):4==e&&(d=1,f=3);var p=Math.max(0,d-i.length),h=i.slice(d),g=s.slice(f+p),y=De(h.concat(g),t()+"");if(y.length>0&&y[0].number<=15){var m=y.findIndex((function(e){return e.number>15}));if(m>0){var v=[y[m],y[0]];y[0]=v[0],y[m]=v[1]}}return y.push(a),{actualMarket:u,futureMarket:l,powerPlantsDeck:y}},mapSpecificRules:"Europe uses the New Power Plants Set 2 deck (cards with a plug on the back). The power plant market starts as 4 current + 5 future power plants (9 total). When Step 2 begins, remove the lowest-numbered plant from the current market from the game once and do not replace it; the future market then has 4 plants instead of 5."};(function(e){e["Brown"]="brown",e["Purple"]="purple",e["Blue"]="blue",e["Yellow"]="yellow",e["Green"]="green",e["Red"]="red"})(hn||(hn={})),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"}(gn||(gn={}));var mn,vn,bn={name:"France",cities:[{name:gn.Calais,region:hn.Brown,x:661,y:294},{name:gn.Lile,region:hn.Brown,x:791,y:328},{name:gn.Amiens,region:hn.Brown,x:700,y:433},{name:gn.Reims,region:hn.Brown,x:888,y:531},{name:gn.Metz,region:hn.Brown,x:1076,y:528},{name:gn.Nancy,region:hn.Brown,x:1078,y:643},{name:gn.Strasbourg,region:hn.Brown,x:1208,y:615},{name:gn.Havre,region:hn.Purple,x:487,y:471},{name:gn.Caen,region:hn.Purple,x:423,y:567},{name:gn.Brest,region:hn.Purple,x:79,y:654},{name:gn.Rennes,region:hn.Purple,x:326,y:695},{name:gn.Lemans,region:hn.Purple,x:516,y:699},{name:gn.Angers,region:hn.Purple,x:446,y:798},{name:gn.Rouen,region:hn.Purple,x:598,y:506},{name:gn.Paris1,region:hn.Blue,x:693,y:553},{name:gn.Paris2,region:hn.Blue,x:779,y:566},{name:gn.Paris3,region:hn.Blue,x:722,y:633},{name:gn.Orleans,region:hn.Blue,x:684,y:736},{name:gn.Tours,region:hn.Blue,x:564,y:813},{name:gn.Limoges,region:hn.Blue,x:605,y:1009},{name:gn.Clermontferrand,region:hn.Blue,x:777,y:1017},{name:gn.Besancon,region:hn.Yellow,x:1084,y:828},{name:gn.Dijon,region:hn.Yellow,x:964,y:801},{name:gn.Lyon,region:hn.Yellow,x:964,y:973},{name:gn.Chamonix,region:hn.Yellow,x:1153,y:987},{name:gn.Mulhouse,region:hn.Yellow,x:1180,y:742},{name:gn.Grenoble,region:hn.Yellow,x:1048,y:1116},{name:gn.Saintetienne,region:hn.Yellow,x:892,y:1088},{name:gn.Nice,region:hn.Green,x:1178,y:1302},{name:gn.Toulon,region:hn.Green,x:1070,y:1397},{name:gn.Aimenprovence,region:hn.Green,x:1016,y:1304},{name:gn.Marseille,region:hn.Green,x:954,y:1369},{name:gn.Nimes,region:hn.Green,x:889,y:1256},{name:gn.Montpellier,region:hn.Green,x:816,y:1330},{name:gn.Perpignan,region:hn.Green,x:767,y:1460},{name:gn.Nantes,region:hn.Red,x:330,y:833},{name:gn.Larochelle,region:hn.Red,x:379,y:959},{name:gn.Bordeaux,region:hn.Red,x:435,y:1148},{name:gn.Biarritz,region:hn.Red,x:345,y:1328},{name:gn.Toulous,region:hn.Red,x:621,y:1309},{name:gn.Carcassone,region:hn.Red,x:700,y:1382},{name:gn.Lourdes,region:hn.Red,x:479,y:1393}],connections:[{nodes:[gn.Calais,gn.Havre],cost:13},{nodes:[gn.Calais,gn.Lile],cost:7},{nodes:[gn.Calais,gn.Amiens],cost:8},{nodes:[gn.Lile,gn.Reims],cost:9},{nodes:[gn.Havre,gn.Rouen],cost:5},{nodes:[gn.Havre,gn.Caen],cost:5},{nodes:[gn.Caen,gn.Rennes],cost:12},{nodes:[gn.Rennes,gn.Brest],cost:16},{nodes:[gn.Brest,gn.Nantes],cost:19},{nodes:[gn.Rennes,gn.Nantes],cost:7},{nodes:[gn.Rennes,gn.Angers],cost:7},{nodes:[gn.Rennes,gn.Lemans],cost:9},{nodes:[gn.Caen,gn.Lemans],cost:10},{nodes:[gn.Lemans,gn.Paris3],cost:10},{nodes:[gn.Paris3,gn.Caen],cost:12},{nodes:[gn.Caen,gn.Rouen],cost:9},{nodes:[gn.Rouen,gn.Paris1],cost:9},{nodes:[gn.Rouen,gn.Amiens],cost:6},{nodes:[gn.Lile,gn.Amiens],cost:7},{nodes:[gn.Amiens,gn.Reims],cost:11},{nodes:[gn.Reims,gn.Metz],cost:12},{nodes:[gn.Metz,gn.Strasbourg],cost:11},{nodes:[gn.Strasbourg,gn.Nancy],cost:10},{nodes:[gn.Strasbourg,gn.Mulhouse],cost:6},{nodes:[gn.Mulhouse,gn.Besancon],cost:8},{nodes:[gn.Besancon,gn.Nancy],cost:14},{nodes:[gn.Nancy,gn.Dijon],cost:15},{nodes:[gn.Reims,gn.Nancy],cost:13},{nodes:[gn.Nancy,gn.Paris2],cost:21},{nodes:[gn.Paris1,gn.Paris2],cost:0},{nodes:[gn.Paris1,gn.Paris3],cost:0},{nodes:[gn.Paris2,gn.Dijon],cost:20},{nodes:[gn.Dijon,gn.Orleans],cost:18},{nodes:[gn.Orleans,gn.Lemans],cost:8},{nodes:[gn.Lemans,gn.Tours],cost:5},{nodes:[gn.Tours,gn.Orleans],cost:7},{nodes:[gn.Paris1,gn.Amiens],cost:9},{nodes:[gn.Dijon,gn.Clermontferrand],cost:19},{nodes:[gn.Clermontferrand,gn.Limoges],cost:12},{nodes:[gn.Limoges,gn.Toulous],cost:19},{nodes:[gn.Toulous,gn.Clermontferrand],cost:24},{nodes:[gn.Clermontferrand,gn.Montpellier],cost:22},{nodes:[gn.Montpellier,gn.Nimes],cost:3},{nodes:[gn.Saintetienne,gn.Grenoble],cost:10},{nodes:[gn.Grenoble,gn.Chamonix],cost:12},{nodes:[gn.Chamonix,gn.Besancon],cost:19},{nodes:[gn.Besancon,gn.Dijon],cost:6},{nodes:[gn.Dijon,gn.Lyon],cost:13},{nodes:[gn.Lyon,gn.Clermontferrand],cost:11},{nodes:[gn.Saintetienne,gn.Montpellier],cost:18},{nodes:[gn.Saintetienne,gn.Nimes],cost:16},{nodes:[gn.Nimes,gn.Aimenprovence],cost:8},{nodes:[gn.Aimenprovence,gn.Nice],cost:8},{nodes:[gn.Nice,gn.Toulon],cost:7},{nodes:[gn.Toulon,gn.Marseille],cost:3},{nodes:[gn.Marseille,gn.Aimenprovence],cost:0},{nodes:[gn.Nice,gn.Grenoble],cost:19},{nodes:[gn.Grenoble,gn.Aimenprovence],cost:17},{nodes:[gn.Grenoble,gn.Nimes],cost:18},{nodes:[gn.Montpellier,gn.Toulous],cost:14},{nodes:[gn.Toulous,gn.Bordeaux],cost:14},{nodes:[gn.Bordeaux,gn.Limoges],cost:13},{nodes:[gn.Limoges,gn.Tours],cost:13},{nodes:[gn.Tours,gn.Larochelle],cost:13},{nodes:[gn.Larochelle,gn.Angers],cost:12},{nodes:[gn.Angers,gn.Lemans],cost:5},{nodes:[gn.Angers,gn.Nantes],cost:5},{nodes:[gn.Nantes,gn.Larochelle],cost:9},{nodes:[gn.Larochelle,gn.Bordeaux],cost:13},{nodes:[gn.Bordeaux,gn.Biarritz],cost:12},{nodes:[gn.Bordeaux,gn.Lourdes],cost:14},{nodes:[gn.Lourdes,gn.Biarritz],cost:9},{nodes:[gn.Lourdes,gn.Toulous],cost:10},{nodes:[gn.Lourdes,gn.Carcassone],cost:15},{nodes:[gn.Lourdes,gn.Perpignan],cost:20},{nodes:[gn.Perpignan,gn.Carcassone],cost:6},{nodes:[gn.Carcassone,gn.Toulous],cost:6},{nodes:[gn.Carcassone,gn.Montpellier],cost:9},{nodes:[gn.Montpellier,gn.Perpignan],cost:11},{nodes:[gn.Orleans,gn.Limoges],cost:19},{nodes:[gn.Orleans,gn.Clermontferrand],cost:18},{nodes:[gn.Paris3,gn.Orleans],cost:7},{nodes:[gn.Angers,gn.Tours],cost:6},{nodes:[gn.Larochelle,gn.Limoges],cost:13},{nodes:[gn.Nancy,gn.Metz],cost:3},{nodes:[gn.Nancy,gn.Mulhouse],cost:12},{nodes:[gn.Besancon,gn.Lyon],cost:16},{nodes:[gn.Lyon,gn.Grenoble],cost:7},{nodes:[gn.Lyon,gn.Chamonix],cost:13},{nodes:[gn.Lyon,gn.Saintetienne],cost:6},{nodes:[gn.Saintetienne,gn.Clermontferrand],cost:10},{nodes:[gn.Paris2,gn.Reims],cost:9},{nodes:[gn.Paris3,gn.Paris2],cost:0}],layout:"Portrait",mapPosition:[50,-100],adjustRatio:[.7,.7],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[24,18,6,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){a=a.slice(8);var i=a.splice(0,1)[0];a.splice(1,1)[0];var s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{a.splice(10,1)[0];var c=a.splice(8,1)[0],u=De(a.splice(0,11),t()+""),l=u.splice(0,7);l.push(c),l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?a=De(a.slice(6).concat(u),t()+""):3==e?(u=u.slice(1),a=De(a.slice(6).concat(u),t()+"")):a=De(4==e?a.slice(3).concat(u):a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Remove power plant 13. Put power plant 11 on top of the deck."};(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(mn||(mn={})),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"}(vn||(vn={}));var wn,xn,kn={name:"Germany",cities:[{name:vn.Flensburg,region:mn.Green,x:37,y:427},{name:vn.Kiel,region:mn.Green,x:106,y:392},{name:vn.Hamburg,region:mn.Green,x:212,y:396},{name:vn.Hannover,region:mn.Green,x:378,y:395},{name:vn.Bremen,region:mn.Green,x:276,y:463},{name:vn.Wilhelmshaven,region:mn.Green,x:211,y:521},{name:vn.Cuxhaven,region:mn.Green,x:168,y:474},{name:vn.Lubeck,region:mn.Brown,x:153,y:341},{name:vn.Rostock,region:mn.Brown,x:128,y:256},{name:vn.Schwerin,region:mn.Brown,x:217,y:297},{name:vn.Torgelow,region:mn.Brown,x:210,y:126},{name:vn.Magdeburg,region:mn.Brown,x:389,y:271},{name:vn.Berlin,region:mn.Brown,x:355,y:170},{name:vn.FrankfurtO,region:mn.Brown,x:381,y:99},{name:vn.Halle,region:mn.Yellow,x:493,y:259},{name:vn.Leipzig,region:mn.Yellow,x:526,y:222},{name:vn.Dresden,region:mn.Yellow,x:572,y:126},{name:vn.Erfurt,region:mn.Yellow,x:567,y:309},{name:vn.Fulda,region:mn.Yellow,x:628,y:398},{name:vn.Würzburg,region:mn.Yellow,x:735,y:386},{name:vn.Nurnberg,region:mn.Yellow,x:780,y:309},{name:vn.Osnabrück,region:mn.Red,x:359,y:516},{name:vn.Münster,region:mn.Red,x:427,y:554},{name:vn.Essen,region:mn.Red,x:475,y:603},{name:vn.Duisburg,region:mn.Red,x:456,y:645},{name:vn.Dortmund,region:mn.Red,x:505,y:543},{name:vn.Dusseldorf,region:mn.Red,x:537,y:635},{name:vn.Kassel,region:mn.Red,x:524,y:430},{name:vn.Aachen,region:mn.Cyan,x:614,y:654},{name:vn.Köln,region:mn.Cyan,x:590,y:589},{name:vn.Trier,region:mn.Cyan,x:739,y:628},{name:vn.Wiesbaden,region:mn.Cyan,x:697,y:514},{name:vn.FrankfurtM,region:mn.Cyan,x:672,y:473},{name:vn.Saarbrücken,region:mn.Cyan,x:818,y:568},{name:vn.Mannheim,region:mn.Cyan,x:796,y:479},{name:vn.Freiburg,region:mn.Purple,x:966,y:537},{name:vn.Stuttgart,region:mn.Purple,x:884,y:458},{name:vn.Konstanz,region:mn.Purple,x:1011,y:459},{name:vn.Augsburg,region:mn.Purple,x:911,y:346},{name:vn.Regensburg,region:mn.Purple,x:846,y:256},{name:vn.München,region:mn.Purple,x:967,y:278},{name:vn.Passau,region:mn.Purple,x:904,y:153}],connections:[{nodes:[vn.Flensburg,vn.Kiel],cost:4},{nodes:[vn.Kiel,vn.Hamburg],cost:8},{nodes:[vn.Kiel,vn.Lubeck],cost:4},{nodes:[vn.Hamburg,vn.Hannover],cost:17},{nodes:[vn.Hamburg,vn.Bremen],cost:11},{nodes:[vn.Hamburg,vn.Cuxhaven],cost:11},{nodes:[vn.Hamburg,vn.Lubeck],cost:6},{nodes:[vn.Hamburg,vn.Schwerin],cost:8},{nodes:[vn.Bremen,vn.Wilhelmshaven],cost:11},{nodes:[vn.Bremen,vn.Hannover],cost:10},{nodes:[vn.Bremen,vn.Cuxhaven],cost:8},{nodes:[vn.Bremen,vn.Osnabrück],cost:11},{nodes:[vn.Hannover,vn.Schwerin],cost:19},{nodes:[vn.Hannover,vn.Magdeburg],cost:15},{nodes:[vn.Hannover,vn.Erfurt],cost:19},{nodes:[vn.Hannover,vn.Osnabrück],cost:16},{nodes:[vn.Hannover,vn.Kassel],cost:15},{nodes:[vn.Wilhelmshaven,vn.Osnabrück],cost:14},{nodes:[vn.Lubeck,vn.Schwerin],cost:6},{nodes:[vn.Schwerin,vn.Rostock],cost:6},{nodes:[vn.Schwerin,vn.Torgelow],cost:19},{nodes:[vn.Schwerin,vn.Berlin],cost:18},{nodes:[vn.Schwerin,vn.Magdeburg],cost:16},{nodes:[vn.Torgelow,vn.Rostock],cost:19},{nodes:[vn.Torgelow,vn.Berlin],cost:15},{nodes:[vn.Berlin,vn.Magdeburg],cost:10},{nodes:[vn.Berlin,vn.FrankfurtO],cost:6},{nodes:[vn.Berlin,vn.Halle],cost:17},{nodes:[vn.Magdeburg,vn.Halle],cost:11},{nodes:[vn.FrankfurtO,vn.Leipzig],cost:21},{nodes:[vn.FrankfurtO,vn.Dresden],cost:16},{nodes:[vn.Halle,vn.Leipzig],cost:0},{nodes:[vn.Leipzig,vn.Dresden],cost:13},{nodes:[vn.Erfurt,vn.Halle],cost:6},{nodes:[vn.Erfurt,vn.Dresden],cost:19},{nodes:[vn.Erfurt,vn.Nurnberg],cost:21},{nodes:[vn.Erfurt,vn.Fulda],cost:13},{nodes:[vn.Erfurt,vn.Kassel],cost:15},{nodes:[vn.Fulda,vn.Würzburg],cost:11},{nodes:[vn.Fulda,vn.Kassel],cost:8},{nodes:[vn.Fulda,vn.FrankfurtM],cost:8},{nodes:[vn.Würzburg,vn.Nurnberg],cost:8},{nodes:[vn.Würzburg,vn.FrankfurtM],cost:13},{nodes:[vn.Würzburg,vn.Mannheim],cost:10},{nodes:[vn.Würzburg,vn.Stuttgart],cost:12},{nodes:[vn.Würzburg,vn.Augsburg],cost:19},{nodes:[vn.Nurnberg,vn.Augsburg],cost:18},{nodes:[vn.Nurnberg,vn.Regensburg],cost:12},{nodes:[vn.Osnabrück,vn.Münster],cost:7},{nodes:[vn.Osnabrück,vn.Kassel],cost:20},{nodes:[vn.Münster,vn.Essen],cost:6},{nodes:[vn.Münster,vn.Dortmund],cost:2},{nodes:[vn.Essen,vn.Duisburg],cost:0},{nodes:[vn.Essen,vn.Dusseldorf],cost:2},{nodes:[vn.Essen,vn.Dortmund],cost:4},{nodes:[vn.Dortmund,vn.Kassel],cost:18},{nodes:[vn.Dortmund,vn.Köln],cost:10},{nodes:[vn.Dortmund,vn.FrankfurtM],cost:20},{nodes:[vn.Kassel,vn.FrankfurtM],cost:13},{nodes:[vn.Dusseldorf,vn.Aachen],cost:9},{nodes:[vn.Dusseldorf,vn.Köln],cost:4},{nodes:[vn.Aachen,vn.Köln],cost:7},{nodes:[vn.Aachen,vn.Trier],cost:19},{nodes:[vn.Trier,vn.Köln],cost:20},{nodes:[vn.Trier,vn.Wiesbaden],cost:18},{nodes:[vn.Trier,vn.Saarbrücken],cost:11},{nodes:[vn.Wiesbaden,vn.FrankfurtM],cost:0},{nodes:[vn.Wiesbaden,vn.Köln],cost:21},{nodes:[vn.Wiesbaden,vn.Saarbrücken],cost:10},{nodes:[vn.Wiesbaden,vn.Mannheim],cost:11},{nodes:[vn.Mannheim,vn.Saarbrücken],cost:11},{nodes:[vn.Mannheim,vn.Stuttgart],cost:6},{nodes:[vn.Stuttgart,vn.Saarbrücken],cost:17},{nodes:[vn.Stuttgart,vn.Freiburg],cost:16},{nodes:[vn.Stuttgart,vn.Konstanz],cost:16},{nodes:[vn.Stuttgart,vn.Augsburg],cost:15},{nodes:[vn.Konstanz,vn.Freiburg],cost:14},{nodes:[vn.Konstanz,vn.Augsburg],cost:17},{nodes:[vn.Regensburg,vn.Augsburg],cost:13},{nodes:[vn.Regensburg,vn.München],cost:10},{nodes:[vn.Regensburg,vn.Passau],cost:12},{nodes:[vn.Augsburg,vn.München],cost:6},{nodes:[vn.Passau,vn.München],cost:14}],layout:"Landscape",mapPosition:[20,20]},_n={name:"Germany",cities:[{name:vn.Flensburg,region:mn.Green,x:37,y:427},{name:vn.Kiel,region:mn.Green,x:106,y:392},{name:vn.Hamburg,region:mn.Green,x:212,y:396},{name:vn.Hannover,region:mn.Green,x:378,y:395},{name:vn.Bremen,region:mn.Green,x:276,y:463},{name:vn.Wilhelmshaven,region:mn.Green,x:211,y:521},{name:vn.Cuxhaven,region:mn.Green,x:168,y:474},{name:vn.Lubeck,region:mn.Brown,x:153,y:341},{name:vn.Rostock,region:mn.Brown,x:128,y:256},{name:vn.Schwerin,region:mn.Brown,x:217,y:297},{name:vn.Stralsund,region:mn.Brown,x:210,y:126},{name:vn.Magdeburg,region:mn.Brown,x:389,y:271},{name:vn.Berlin,region:mn.Brown,x:355,y:170},{name:vn.FrankfurtO,region:mn.Brown,x:381,y:99},{name:vn.Halle,region:mn.Yellow,x:493,y:259},{name:vn.Leipzig,region:mn.Yellow,x:526,y:222},{name:vn.Dresden,region:mn.Yellow,x:572,y:126},{name:vn.Erfurt,region:mn.Yellow,x:567,y:309},{name:vn.Fulda,region:mn.Yellow,x:628,y:398},{name:vn.Würzburg,region:mn.Yellow,x:735,y:386},{name:vn.Nurnberg,region:mn.Yellow,x:780,y:309},{name:vn.Osnabrück,region:mn.Red,x:359,y:516},{name:vn.Münster,region:mn.Red,x:427,y:554},{name:vn.Essen,region:mn.Red,x:475,y:603},{name:vn.Duisburg,region:mn.Red,x:456,y:645},{name:vn.Dortmund,region:mn.Red,x:505,y:543},{name:vn.Dusseldorf,region:mn.Red,x:537,y:635},{name:vn.Kassel,region:mn.Red,x:524,y:430},{name:vn.Aachen,region:mn.Cyan,x:614,y:654},{name:vn.Köln,region:mn.Cyan,x:590,y:589},{name:vn.Trier,region:mn.Cyan,x:739,y:628},{name:vn.Mainz,region:mn.Cyan,x:697,y:514},{name:vn.FrankfurtM,region:mn.Cyan,x:672,y:473},{name:vn.Saarbrücken,region:mn.Cyan,x:818,y:568},{name:vn.Mannheim,region:mn.Cyan,x:796,y:479},{name:vn.Freiburg,region:mn.Purple,x:966,y:537},{name:vn.Stuttgart,region:mn.Purple,x:884,y:458},{name:vn.Konstanz,region:mn.Purple,x:1011,y:459},{name:vn.Augsburg,region:mn.Purple,x:911,y:346},{name:vn.Regensburg,region:mn.Purple,x:846,y:256},{name:vn.München,region:mn.Purple,x:967,y:278},{name:vn.Passau,region:mn.Purple,x:904,y:153}],connections:[{nodes:[vn.Flensburg,vn.Kiel],cost:4},{nodes:[vn.Kiel,vn.Hamburg],cost:8},{nodes:[vn.Kiel,vn.Lubeck],cost:4},{nodes:[vn.Hamburg,vn.Hannover],cost:17},{nodes:[vn.Hamburg,vn.Bremen],cost:11},{nodes:[vn.Hamburg,vn.Cuxhaven],cost:11},{nodes:[vn.Hamburg,vn.Lubeck],cost:6},{nodes:[vn.Hamburg,vn.Schwerin],cost:8},{nodes:[vn.Bremen,vn.Wilhelmshaven],cost:11},{nodes:[vn.Bremen,vn.Hannover],cost:10},{nodes:[vn.Bremen,vn.Cuxhaven],cost:8},{nodes:[vn.Bremen,vn.Osnabrück],cost:11},{nodes:[vn.Hannover,vn.Schwerin],cost:19},{nodes:[vn.Hannover,vn.Magdeburg],cost:15},{nodes:[vn.Hannover,vn.Erfurt],cost:19},{nodes:[vn.Hannover,vn.Osnabrück],cost:16},{nodes:[vn.Hannover,vn.Kassel],cost:15},{nodes:[vn.Wilhelmshaven,vn.Osnabrück],cost:14},{nodes:[vn.Lubeck,vn.Schwerin],cost:6},{nodes:[vn.Schwerin,vn.Rostock],cost:6},{nodes:[vn.Schwerin,vn.Stralsund],cost:19},{nodes:[vn.Schwerin,vn.Berlin],cost:18},{nodes:[vn.Schwerin,vn.Magdeburg],cost:16},{nodes:[vn.Stralsund,vn.Rostock],cost:19},{nodes:[vn.Stralsund,vn.Berlin],cost:15},{nodes:[vn.Berlin,vn.Magdeburg],cost:10},{nodes:[vn.Berlin,vn.FrankfurtO],cost:6},{nodes:[vn.Berlin,vn.Halle],cost:17},{nodes:[vn.Magdeburg,vn.Halle],cost:11},{nodes:[vn.FrankfurtO,vn.Leipzig],cost:21},{nodes:[vn.FrankfurtO,vn.Dresden],cost:16},{nodes:[vn.Halle,vn.Leipzig],cost:0},{nodes:[vn.Leipzig,vn.Dresden],cost:13},{nodes:[vn.Erfurt,vn.Halle],cost:6},{nodes:[vn.Erfurt,vn.Dresden],cost:19},{nodes:[vn.Erfurt,vn.Nurnberg],cost:21},{nodes:[vn.Erfurt,vn.Fulda],cost:13},{nodes:[vn.Erfurt,vn.Kassel],cost:15},{nodes:[vn.Fulda,vn.Würzburg],cost:11},{nodes:[vn.Fulda,vn.Kassel],cost:8},{nodes:[vn.Fulda,vn.FrankfurtM],cost:8},{nodes:[vn.Würzburg,vn.Nurnberg],cost:8},{nodes:[vn.Würzburg,vn.FrankfurtM],cost:13},{nodes:[vn.Würzburg,vn.Mannheim],cost:10},{nodes:[vn.Würzburg,vn.Stuttgart],cost:12},{nodes:[vn.Würzburg,vn.Augsburg],cost:19},{nodes:[vn.Nurnberg,vn.Augsburg],cost:18},{nodes:[vn.Nurnberg,vn.Regensburg],cost:12},{nodes:[vn.Osnabrück,vn.Münster],cost:7},{nodes:[vn.Osnabrück,vn.Kassel],cost:20},{nodes:[vn.Münster,vn.Essen],cost:6},{nodes:[vn.Münster,vn.Dortmund],cost:2},{nodes:[vn.Essen,vn.Duisburg],cost:0},{nodes:[vn.Essen,vn.Dusseldorf],cost:2},{nodes:[vn.Essen,vn.Dortmund],cost:5},{nodes:[vn.Dortmund,vn.Kassel],cost:18},{nodes:[vn.Dortmund,vn.Köln],cost:10},{nodes:[vn.Dortmund,vn.FrankfurtM],cost:20},{nodes:[vn.Kassel,vn.FrankfurtM],cost:13},{nodes:[vn.Dusseldorf,vn.Aachen],cost:9},{nodes:[vn.Dusseldorf,vn.Köln],cost:4},{nodes:[vn.Aachen,vn.Köln],cost:7},{nodes:[vn.Aachen,vn.Trier],cost:19},{nodes:[vn.Trier,vn.Köln],cost:20},{nodes:[vn.Trier,vn.Mainz],cost:18},{nodes:[vn.Trier,vn.Saarbrücken],cost:11},{nodes:[vn.Mainz,vn.FrankfurtM],cost:0},{nodes:[vn.Mainz,vn.Köln],cost:21},{nodes:[vn.Mainz,vn.Saarbrücken],cost:10},{nodes:[vn.Mainz,vn.Mannheim],cost:11},{nodes:[vn.Mannheim,vn.Saarbrücken],cost:16},{nodes:[vn.Mannheim,vn.Stuttgart],cost:6},{nodes:[vn.Stuttgart,vn.Saarbrücken],cost:17},{nodes:[vn.Stuttgart,vn.Freiburg],cost:16},{nodes:[vn.Stuttgart,vn.Konstanz],cost:16},{nodes:[vn.Stuttgart,vn.Augsburg],cost:15},{nodes:[vn.Konstanz,vn.Freiburg],cost:14},{nodes:[vn.Konstanz,vn.Augsburg],cost:17},{nodes:[vn.Regensburg,vn.Augsburg],cost:13},{nodes:[vn.Regensburg,vn.München],cost:10},{nodes:[vn.Regensburg,vn.Passau],cost:12},{nodes:[vn.Augsburg,vn.München],cost:6},{nodes:[vn.Passau,vn.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"})(wn||(wn={})),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"}(xn||(xn={}));var Pn,Sn,Mn={name:"India",cities:[{name:xn.Thiruvananthapuram,region:wn.Red,x:217,y:868},{name:xn.Madurai,region:wn.Red,x:230,y:829},{name:xn.Coimbatore,region:wn.Red,x:197,y:797},{name:xn.Chennai,region:wn.Red,x:289,y:740},{name:xn.Hyderabad,region:wn.Red,x:232,y:618},{name:xn.Bangalore1,region:wn.Red,x:205,y:710},{name:xn.Bangalore2,region:wn.Red,x:205,y:735},{name:xn.Dibrugarh,region:wn.Brown,x:669,y:328},{name:xn.Imphal,region:wn.Brown,x:658,y:392},{name:xn.Aizawi,region:wn.Brown,x:625,y:427},{name:xn.Chittagong,region:wn.Brown,x:589,y:483},{name:xn.Shillong,region:wn.Brown,x:586,y:395},{name:xn.Dhaka,region:wn.Brown,x:548,y:432},{name:xn.Khulna,region:wn.Brown,x:528,y:468},{name:xn.Darjeeling,region:wn.Green,x:496,y:333},{name:xn.Kathmandu,region:wn.Green,x:418,y:307},{name:xn.Patna,region:wn.Green,x:416,y:373},{name:xn.Lakhnau,region:wn.Green,x:310,y:338},{name:xn.Varanasi,region:wn.Green,x:350,y:385},{name:xn.Agra,region:wn.Green,x:228,y:335},{name:xn.Kanpur,region:wn.Green,x:269,y:373},{name:xn.Srinagar,region:wn.Orange,x:135,y:115},{name:xn.Ludhiana,region:wn.Orange,x:186,y:215},{name:xn.Delhi1,region:wn.Orange,x:190,y:281},{name:xn.Delhi2,region:wn.Orange,x:190,y:303},{name:xn.Jaipur,region:wn.Orange,x:158,y:341},{name:xn.Udaipur,region:wn.Orange,x:105,y:410},{name:xn.Ahmedabad,region:wn.Orange,x:75,y:456},{name:xn.Dhanbad,region:wn.Yellow,x:424,y:427},{name:xn.Kolkata,region:wn.Yellow,x:463,y:477},{name:xn.Bhudaneswar,region:wn.Yellow,x:428,y:533},{name:xn.Sambalpur,region:wn.Yellow,x:376,y:494},{name:xn.Jabalpur,region:wn.Yellow,x:293,y:478},{name:xn.Nagpur,region:wn.Yellow,x:250,y:510},{name:xn.Visakhapatnam,region:wn.Yellow,x:358,y:597},{name:xn.Goa,region:wn.Pink,x:109,y:677},{name:xn.Pune,region:wn.Pink,x:133,y:587},{name:xn.Surat,region:wn.Pink,x:80,y:510},{name:xn.Indore,region:wn.Pink,x:160,y:476},{name:xn.Bhopal,region:wn.Pink,x:208,y:437},{name:xn.Mumbai1,region:wn.Pink,x:58,y:570},{name:xn.Mumbai2,region:wn.Pink,x:58,y:593}],connections:[{nodes:[xn.Srinagar,xn.Ludhiana],cost:15},{nodes:[xn.Ludhiana,xn.Delhi1],cost:9},{nodes:[xn.Delhi1,xn.Delhi2],cost:0},{nodes:[xn.Delhi2,xn.Jaipur],cost:7},{nodes:[xn.Delhi2,xn.Agra],cost:6},{nodes:[xn.Jaipur,xn.Bhopal],cost:12},{nodes:[xn.Jaipur,xn.Kanpur],cost:12},{nodes:[xn.Agra,xn.Lakhnau],cost:8},{nodes:[xn.Lakhnau,xn.Kathmandu],cost:15},{nodes:[xn.Kathmandu,xn.Darjeeling],cost:13},{nodes:[xn.Darjeeling,xn.Shillong],cost:12},{nodes:[xn.Shillong,xn.Patna],cost:18},{nodes:[xn.Patna,xn.Kathmandu],cost:10},{nodes:[xn.Imphal,xn.Dibrugarh],cost:11},{nodes:[xn.Dibrugarh,xn.Shillong],cost:9},{nodes:[xn.Shillong,xn.Imphal],cost:12},{nodes:[xn.Imphal,xn.Aizawi],cost:7},{nodes:[xn.Shillong,xn.Dhaka],cost:10},{nodes:[xn.Dhaka,xn.Khulna],cost:6},{nodes:[xn.Khulna,xn.Kolkata],cost:3},{nodes:[xn.Dhanbad,xn.Dhaka],cost:14},{nodes:[xn.Jabalpur,xn.Sambalpur],cost:13},{nodes:[xn.Sambalpur,xn.Nagpur],cost:13},{nodes:[xn.Nagpur,xn.Visakhapatnam],cost:17},{nodes:[xn.Visakhapatnam,xn.Sambalpur],cost:12},{nodes:[xn.Jabalpur,xn.Kanpur],cost:11},{nodes:[xn.Varanasi,xn.Jabalpur],cost:11},{nodes:[xn.Kanpur,xn.Varanasi],cost:8},{nodes:[xn.Varanasi,xn.Patna],cost:5},{nodes:[xn.Patna,xn.Lakhnau],cost:11},{nodes:[xn.Kanpur,xn.Bhopal],cost:13},{nodes:[xn.Ahmedabad,xn.Bhopal],cost:11},{nodes:[xn.Bhopal,xn.Udaipur],cost:11},{nodes:[xn.Udaipur,xn.Jaipur],cost:9},{nodes:[xn.Ahmedabad,xn.Surat],cost:7},{nodes:[xn.Ahmedabad,xn.Indore],cost:8},{nodes:[xn.Indore,xn.Surat],cost:10},{nodes:[xn.Mumbai1,xn.Mumbai2],cost:0},{nodes:[xn.Mumbai2,xn.Pune],cost:4},{nodes:[xn.Pune,xn.Hyderabad],cost:13},{nodes:[xn.Pune,xn.Nagpur],cost:17},{nodes:[xn.Pune,xn.Indore],cost:15},{nodes:[xn.Goa,xn.Coimbatore],cost:18},{nodes:[xn.Bangalore1,xn.Bangalore2],cost:0},{nodes:[xn.Bangalore2,xn.Coimbatore],cost:9},{nodes:[xn.Coimbatore,xn.Thiruvananthapuram],cost:10},{nodes:[xn.Thiruvananthapuram,xn.Madurai],cost:7},{nodes:[xn.Madurai,xn.Chennai],cost:12},{nodes:[xn.Chennai,xn.Bangalore1],cost:9},{nodes:[xn.Bangalore1,xn.Hyderabad],cost:14},{nodes:[xn.Hyderabad,xn.Goa],cost:15},{nodes:[xn.Goa,xn.Bangalore2],cost:14},{nodes:[xn.Mumbai2,xn.Goa],cost:11},{nodes:[xn.Indore,xn.Nagpur],cost:10},{nodes:[xn.Sambalpur,xn.Dhanbad],cost:8},{nodes:[xn.Sambalpur,xn.Bhudaneswar],cost:7},{nodes:[xn.Bhudaneswar,xn.Kolkata],cost:11},{nodes:[xn.Kolkata,xn.Dhanbad],cost:9},{nodes:[xn.Dhanbad,xn.Patna],cost:8},{nodes:[xn.Nagpur,xn.Hyderabad],cost:12},{nodes:[xn.Hyderabad,xn.Visakhapatnam],cost:13},{nodes:[xn.Visakhapatnam,xn.Chennai],cost:17},{nodes:[xn.Chittagong,xn.Aizawi],cost:7},{nodes:[xn.Dhaka,xn.Aizawi],cost:8},{nodes:[xn.Dhaka,xn.Chittagong],cost:7},{nodes:[xn.Patna,xn.Darjeeling],cost:11},{nodes:[xn.Visakhapatnam,xn.Bhudaneswar],cost:12},{nodes:[xn.Udaipur,xn.Ahmedabad],cost:6},{nodes:[xn.Madurai,xn.Coimbatore],cost:6},{nodes:[xn.Bangalore2,xn.Madurai],cost:10},{nodes:[xn.Bhopal,xn.Jabalpur],cost:8},{nodes:[xn.Bhopal,xn.Nagpur],cost:7},{nodes:[xn.Bhopal,xn.Indore],cost:4},{nodes:[xn.Surat,xn.Mumbai1],cost:6},{nodes:[xn.Agra,xn.Kanpur],cost:8},{nodes:[xn.Kanpur,xn.Lakhnau],cost:3},{nodes:[xn.Lakhnau,xn.Varanasi],cost:7}],layout:"Portrait",mapPosition:[200,-60],adjustRatio:[1.25,1.25],resupply:[[[4,5,4],[5,6,4],[6,7,5],[7,8,6],[8,10,7]],[[1,2,2],[2,2,2],[2,3,3],[3,4,4],[4,5,5]],[[1,3,4],[1,3,4],[3,4,6],[4,5,7],[4,7,9]],[[1,1,1],[1,1,1],[1,2,1],[2,2,2],[2,3,2]]],startingResources:[24,21,20,2],startingSupply:[24,24,24,8],maxPriceAvailable:[3,5,8],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],garbagePrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6],uraniumPrices:[1,2,3,4,5,6,7,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Je);if("original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[Yt(3,"India"),Yt(4,"India"),Yt(5,"India"),Yt(6,"India")],o=[Yt(7,"India"),Yt(8,"India"),Yt(9,"India"),Yt(10,"India")]}else{var c=De(a.splice(0,12),t()+""),u=c.splice(0,8);u=u.sort((function(e,n){return e.number-n.number})),r=u.slice(0,4),o=u.slice(4);var l=c.shift(),d=a.pop();a=De(a,t()+""),2==e?(c=c.slice(1),a=De(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=De(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=De(a.slice(3).concat(c),t()+"")):a=De(a.concat(c),t()+""),a.unshift(l),a.push(d)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"The power grid will suffer a power outage if too many cities are built in one round, penalizing players $3 per city built.\nPlayers take turns buying one resource at a time. The resource market is limited in steps 1 and 2.\nGarbage plants are less efficient. Their cost is one higher, but their storage capacity is not changed.\nPlayers must power as many cities as possible in each round."};(function(e){e["Brown"]="brown",e["Purple"]="purple",e["Red"]="red",e["Green"]="green",e["Yellow"]="yellow",e["Blue"]="blue"})(Pn||(Pn={})),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"}(Sn||(Sn={}));var Cn,Bn,Rn={name:"Italy",cities:[{name:Sn.Siracusa,region:Pn.Brown,x:1048,y:471},{name:Sn.Reggiodical,region:Pn.Brown,x:1013,y:346},{name:Sn.Cosenza,region:Pn.Brown,x:960,y:240},{name:Sn.Messina,region:Pn.Brown,x:975,y:365},{name:Sn.Palermo,region:Pn.Brown,x:875,y:468},{name:Sn.Catania,region:Pn.Brown,x:1007,y:460},{name:Sn.Brindisi,region:Pn.Purple,x:945,y:4},{name:Sn.Taranto,region:Pn.Brown,x:933,y:92},{name:Sn.Bari,region:Pn.Purple,x:871,y:32},{name:Sn.Foggia,region:Pn.Purple,x:777,y:69},{name:Sn.Pesara,region:Pn.Purple,x:646,y:76},{name:Sn.Napoli,region:Pn.Purple,x:747,y:222},{name:Sn.Salerno,region:Pn.Purple,x:799,y:212},{name:Sn.Roma,region:Pn.Purple,x:583,y:228},{name:Sn.Ancona,region:Pn.Red,x:549,y:16},{name:Sn.Rimini,region:Pn.Red,x:459,y:13},{name:Sn.Ravenna,region:Pn.Red,x:401,y:-5},{name:Sn.Sanmarino,region:Pn.Red,x:456,y:88},{name:Sn.Perugia,region:Pn.Red,x:507,y:123},{name:Sn.Frienze,region:Pn.Red,x:389,y:159},{name:Sn.Udine,region:Pn.Green,x:358,y:-207},{name:Sn.Trieste,region:Pn.Green,x:410,y:-181},{name:Sn.Bolanzo,region:Pn.Green,x:197,y:-172},{name:Sn.Mestre,region:Pn.Green,x:318,y:-115},{name:Sn.Venezia,region:Pn.Green,x:349,y:-103},{name:Sn.Vicenza,region:Pn.Green,x:235,y:-89},{name:Sn.Padua,region:Pn.Green,x:279,y:-72},{name:Sn.Torino,region:Pn.Blue,x:57,y:215},{name:Sn.Bergamo,region:Pn.Blue,x:125,y:14},{name:Sn.Milano,region:Pn.Blue,x:123,y:102},{name:Sn.Brescia,region:Pn.Blue,x:182,y:2},{name:Sn.Picenza,region:Pn.Blue,x:182,y:105},{name:Sn.Genova,region:Pn.Blue,x:182,y:217},{name:Sn.Verona,region:Pn.Blue,x:231,y:-13},{name:Sn.Lovorno,region:Pn.Red,x:333,y:216},{name:Sn.Ferrara,region:Pn.Yellow,x:333,y:-3},{name:Sn.Bologna,region:Pn.Yellow,x:350,y:85},{name:Sn.Modena,region:Pn.Yellow,x:303,y:72},{name:Sn.Reggio,region:Pn.Yellow,x:263,y:96},{name:Sn.Pisa,region:Pn.Yellow,x:304,y:197},{name:Sn.Parma,region:Pn.Yellow,x:224,y:81},{name:Sn.Laspezia,region:Pn.Yellow,x:245,y:206}],connections:[{nodes:[Sn.Palermo,Sn.Catania],cost:15},{nodes:[Sn.Catania,Sn.Siracusa],cost:3},{nodes:[Sn.Catania,Sn.Messina],cost:6},{nodes:[Sn.Messina,Sn.Palermo],cost:15},{nodes:[Sn.Messina,Sn.Reggiodical],cost:3},{nodes:[Sn.Reggiodical,Sn.Cosenza],cost:13},{nodes:[Sn.Cosenza,Sn.Salerno],cost:18},{nodes:[Sn.Cosenza,Sn.Taranto],cost:15},{nodes:[Sn.Taranto,Sn.Brindisi],cost:4},{nodes:[Sn.Brindisi,Sn.Bari],cost:7},{nodes:[Sn.Bari,Sn.Taranto],cost:7},{nodes:[Sn.Taranto,Sn.Salerno],cost:19},{nodes:[Sn.Salerno,Sn.Bari],cost:16},{nodes:[Sn.Bari,Sn.Foggia],cost:8},{nodes:[Sn.Foggia,Sn.Salerno],cost:10},{nodes:[Sn.Salerno,Sn.Napoli],cost:3},{nodes:[Sn.Napoli,Sn.Foggia],cost:12},{nodes:[Sn.Napoli,Sn.Roma],cost:14},{nodes:[Sn.Roma,Sn.Foggia],cost:22},{nodes:[Sn.Foggia,Sn.Pesara],cost:10},{nodes:[Sn.Pesara,Sn.Roma],cost:14},{nodes:[Sn.Roma,Sn.Ancona],cost:17},{nodes:[Sn.Roma,Sn.Perugia],cost:13},{nodes:[Sn.Perugia,Sn.Sanmarino],cost:12},{nodes:[Sn.Sanmarino,Sn.Rimini],cost:0},{nodes:[Sn.Rimini,Sn.Ancona],cost:6},{nodes:[Sn.Ancona,Sn.Perugia],cost:10},{nodes:[Sn.Ancona,Sn.Pesara],cost:9},{nodes:[Sn.Roma,Sn.Frienze],cost:20},{nodes:[Sn.Lovorno,Sn.Roma],cost:19},{nodes:[Sn.Frienze,Sn.Perugia],cost:13},{nodes:[Sn.Frienze,Sn.Sanmarino],cost:12},{nodes:[Sn.Genova,Sn.Torino],cost:12},{nodes:[Sn.Torino,Sn.Milano],cost:8},{nodes:[Sn.Milano,Sn.Bergamo],cost:3},{nodes:[Sn.Bergamo,Sn.Bolanzo],cost:12},{nodes:[Sn.Bolanzo,Sn.Brescia],cost:12},{nodes:[Sn.Bolanzo,Sn.Mestre],cost:12},{nodes:[Sn.Bolanzo,Sn.Udine],cost:14},{nodes:[Sn.Udine,Sn.Trieste],cost:4},{nodes:[Sn.Udine,Sn.Venezia],cost:7},{nodes:[Sn.Venezia,Sn.Mestre],cost:0},{nodes:[Sn.Genova,Sn.Laspezia],cost:5},{nodes:[Sn.Laspezia,Sn.Pisa],cost:5},{nodes:[Sn.Pisa,Sn.Lovorno],cost:0},{nodes:[Sn.Genova,Sn.Milano],cost:9},{nodes:[Sn.Milano,Sn.Picenza],cost:4},{nodes:[Sn.Picenza,Sn.Parma],cost:4},{nodes:[Sn.Parma,Sn.Reggio],cost:2},{nodes:[Sn.Reggio,Sn.Modena],cost:2},{nodes:[Sn.Modena,Sn.Bologna],cost:3},{nodes:[Sn.Bologna,Sn.Pisa],cost:12},{nodes:[Sn.Pisa,Sn.Reggio],cost:10},{nodes:[Sn.Laspezia,Sn.Parma],cost:9},{nodes:[Sn.Laspezia,Sn.Reggio],cost:9},{nodes:[Sn.Genova,Sn.Picenza],cost:7},{nodes:[Sn.Genova,Sn.Parma],cost:11},{nodes:[Sn.Milano,Sn.Brescia],cost:4},{nodes:[Sn.Brescia,Sn.Bergamo],cost:3},{nodes:[Sn.Brescia,Sn.Verona],cost:4},{nodes:[Sn.Brescia,Sn.Picenza],cost:5},{nodes:[Sn.Bolanzo,Sn.Vicenza],cost:10},{nodes:[Sn.Vicenza,Sn.Padua],cost:3},{nodes:[Sn.Vicenza,Sn.Verona],cost:3},{nodes:[Sn.Verona,Sn.Parma],cost:6},{nodes:[Sn.Parma,Sn.Brescia],cost:6},{nodes:[Sn.Verona,Sn.Padua],cost:5},{nodes:[Sn.Padua,Sn.Mestre],cost:3},{nodes:[Sn.Venezia,Sn.Ravenna],cost:12},{nodes:[Sn.Ravenna,Sn.Ferrara],cost:4},{nodes:[Sn.Ferrara,Sn.Venezia],cost:9},{nodes:[Sn.Ferrara,Sn.Padua],cost:7},{nodes:[Sn.Ferrara,Sn.Verona],cost:7},{nodes:[Sn.Verona,Sn.Modena],cost:8},{nodes:[Sn.Frienze,Sn.Pisa],cost:5},{nodes:[Sn.Frienze,Sn.Ravenna],cost:10},{nodes:[Sn.Ravenna,Sn.Rimini],cost:4},{nodes:[Sn.Frienze,Sn.Bologna],cost:8},{nodes:[Sn.Bologna,Sn.Ravenna],cost:4},{nodes:[Sn.Bologna,Sn.Ferrara],cost:3},{nodes:[Sn.Ferrara,Sn.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"})(Cn||(Cn={})),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"}(Bn||(Bn={}));var An,Ln,On={name:"Japan",cities:[{name:Bn.Asahikawa,region:Cn.Brown,x:3384,y:1014},{name:Bn.Sapporo,region:Cn.Brown,x:3028,y:982,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Hakodate,region:Cn.Brown,x:2622,y:1112},{name:Bn.Admori,region:Cn.Brown,x:3818,y:1336},{name:Bn.Morioka,region:Cn.Brown,x:3636,y:1646,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Akita,region:Cn.Brown,x:3472,y:1480},{name:Bn.Sendai,region:Cn.Brown,x:3408,y:1886},{name:Bn.Niigata,region:Cn.Green,x:2874,y:1628},{name:Bn.Koriyama,region:Cn.Green,x:3086,y:1932,slotCosts:[10,15]},{name:Bn.Nagano,region:Cn.Green,x:2486,y:1722},{name:Bn.Saitama,region:Cn.Green,x:2450,y:1986,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Tokyo,region:Cn.Green,x:2524,y:2122,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Chiba,region:Cn.Green,x:2650,y:2316},{name:Bn.Yokohama,region:Cn.Green,x:2306,y:2244,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Kanazawa,region:Cn.Purple,x:2207,y:1385},{name:Bn.Toyama,region:Cn.Purple,x:2257,y:1595,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Kyoto,region:Cn.Purple,x:1765,y:1595},{name:Bn.Osaka,region:Cn.Purple,x:1517,y:1631,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Nagoya,region:Cn.Purple,x:1942,y:1751},{name:Bn.Kofu,region:Cn.Purple,x:2179,y:1897},{name:Bn.Hamamatsu,region:Cn.Purple,x:1958,y:2024,slotCosts:[10,15]},{name:Bn.Kobe,region:Cn.Yellow,x:1555,y:1451,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Matsue,region:Cn.Yellow,x:1457,y:1006,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Okayama,region:Cn.Yellow,x:1390,y:1286},{name:Bn.Takamatsu,region:Cn.Yellow,x:1268,y:1507},{name:Bn.Kochi,region:Cn.Yellow,x:974,y:1472,slotCosts:[10,15]},{name:Bn.Matsuyama,region:Cn.Yellow,x:1036,y:1268},{name:Bn.Hiroshima,region:Cn.Yellow,x:1103,y:1078},{name:Bn.Shimonoseki,region:Cn.Red,x:856,y:962},{name:Bn.Oita,region:Cn.Red,x:731,y:1166,slotCosts:[10,15]},{name:Bn.Miyazaki,region:Cn.Red,x:469,y:1318,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Kagoshima,region:Cn.Red,x:157,y:1255},{name:Bn.Kumamoto,region:Cn.Red,x:457,y:1045},{name:Bn.Fukuoka,region:Cn.Red,x:644,y:823,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Nagasaki,region:Cn.Red,x:313,y:875}],layout:"Portrait",adjustRatio:[.28,.28],mapPosition:[0,120],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[21,15,9,3],startingCities:["Fukuoka","Kobe","Osaka","Sapporo","Tokyo","Yokohama"],mapSpecificRules:"Each player can have two separate networks.\nFirst houses must be placed in one of six starting cities: Fukuoka, Kobe, Osaka, Sapporo, Tokyo, or Yokohama.\nStarting cities have two first-connection spots (cost 10 Elektro each); two players can build there in Step 1.\nIn Step 3, a third connection spot opens in starting cities (cost 20 Elektro).\nSome smaller cities have only two building spots (costs 10 and 15, or 15 and 20 from Step 2).\nIf all spots in every starting city are taken, a player is forced to play with a single network.",connections:[{nodes:[Bn.Nagasaki,Bn.Fukuoka],cost:10},{nodes:[Bn.Fukuoka,Bn.Shimonoseki],cost:10},{nodes:[Bn.Shimonoseki,Bn.Hiroshima],cost:12},{nodes:[Bn.Hiroshima,Bn.Matsue],cost:13},{nodes:[Bn.Kumamoto,Bn.Kagoshima],cost:13},{nodes:[Bn.Kagoshima,Bn.Miyazaki],cost:8},{nodes:[Bn.Miyazaki,Bn.Kumamoto],cost:11},{nodes:[Bn.Kumamoto,Bn.Oita],cost:12},{nodes:[Bn.Oita,Bn.Miyazaki],cost:12},{nodes:[Bn.Oita,Bn.Matsuyama],cost:14},{nodes:[Bn.Matsuyama,Bn.Kochi],cost:7},{nodes:[Bn.Kochi,Bn.Takamatsu],cost:9},{nodes:[Bn.Hiroshima,Bn.Okayama],cost:11},{nodes:[Bn.Okayama,Bn.Matsue],cost:11},{nodes:[Bn.Okayama,Bn.Kobe],cost:9},{nodes:[Bn.Kobe,Bn.Matsue],cost:16},{nodes:[Bn.Matsuyama,Bn.Takamatsu],cost:10},{nodes:[Bn.Takamatsu,Bn.Okayama],cost:9},{nodes:[Bn.Osaka,Bn.Nagoya],cost:9},{nodes:[Bn.Nagoya,Bn.Kyoto],cost:9},{nodes:[Bn.Kyoto,Bn.Kobe],cost:3},{nodes:[Bn.Osaka,Bn.Kyoto],cost:0},{nodes:[Bn.Kyoto,Bn.Kanazawa],cost:19},{nodes:[Bn.Kanazawa,Bn.Toyama],cost:3},{nodes:[Bn.Kanazawa,Bn.Nagoya],cost:16},{nodes:[Bn.Nagoya,Bn.Toyama],cost:15},{nodes:[Bn.Toyama,Bn.Nagano],cost:9},{nodes:[Bn.Nagano,Bn.Niigata],cost:12},{nodes:[Bn.Niigata,Bn.Akita],cost:16},{nodes:[Bn.Hamamatsu,Bn.Kofu],cost:12},{nodes:[Bn.Kofu,Bn.Nagoya],cost:15},{nodes:[Bn.Nagoya,Bn.Hamamatsu],cost:6},{nodes:[Bn.Kofu,Bn.Saitama],cost:8},{nodes:[Bn.Saitama,Bn.Tokyo],cost:0},{nodes:[Bn.Tokyo,Bn.Yokohama],cost:0},{nodes:[Bn.Tokyo,Bn.Chiba],cost:4},{nodes:[Bn.Chiba,Bn.Sendai],cost:21},{nodes:[Bn.Tokyo,Bn.Koriyama],cost:14},{nodes:[Bn.Koriyama,Bn.Niigata],cost:11},{nodes:[Bn.Saitama,Bn.Nagano],cost:17},{nodes:[Bn.Saitama,Bn.Niigata],cost:21},{nodes:[Bn.Koriyama,Bn.Sendai],cost:7},{nodes:[Bn.Sendai,Bn.Akita],cost:14},{nodes:[Bn.Akita,Bn.Koriyama],cost:21},{nodes:[Bn.Sendai,Bn.Morioka],cost:10},{nodes:[Bn.Morioka,Bn.Akita],cost:7},{nodes:[Bn.Akita,Bn.Admori],cost:10},{nodes:[Bn.Admori,Bn.Morioka],cost:10},{nodes:[Bn.Admori,Bn.Hakodate],cost:15},{nodes:[Bn.Hakodate,Bn.Sapporo],cost:14},{nodes:[Bn.Sapporo,Bn.Asahikawa],cost:8},{nodes:[Bn.Kumamoto,Bn.Shimonoseki],cost:16},{nodes:[Bn.Kumamoto,Bn.Fukuoka],cost:8}]},jn=c({},On);(function(e){e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Pink"]="pink"})(An||(An={})),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"}(Ln||(Ln={}));var Gn,Dn,zn={name:"Korea",cities:[{name:Ln.Gyeongju,region:An.Yellow,x:2161,y:2980},{name:Ln.Ulsan,region:An.Yellow,x:2185,y:3226},{name:Ln.Busan,region:An.Yellow,x:2041,y:3440},{name:Ln.Jinju,region:An.Yellow,x:1676,y:3431},{name:Ln.Daegu,region:An.Yellow,x:1876,y:3062},{name:Ln.Andong,region:An.Yellow,x:1987,y:2737},{name:Ln.Sangju,region:An.Yellow,x:1747,y:2827},{name:Ln.Rasun,region:An.Red,x:2485,y:361},{name:Ln.Cheongjin,region:An.Red,x:2309,y:491},{name:Ln.Gyeongseong,region:An.Red,x:2209,y:689},{name:Ln.Seongjin,region:An.Red,x:2060,y:1001},{name:Ln.Hyesan,region:An.Red,x:1783,y:665},{name:Ln.Hamheung,region:An.Red,x:1516,y:1283},{name:Ln.Wonsan,region:An.Red,x:1484,y:1600},{name:Ln.Samcheok,region:An.Brown,x:2171,y:2437},{name:Ln.Donghae,region:An.Brown,x:2041,y:2299},{name:Ln.Taeraek,region:An.Brown,x:1999,y:2528},{name:Ln.Gangneung,region:An.Brown,x:1949,y:2092},{name:Ln.Sokcho,region:An.Brown,x:1832,y:1915},{name:Ln.Wonju,region:An.Brown,x:1735,y:2293},{name:Ln.Chuncheon,region:An.Brown,x:1594,y:2056},{name:Ln.Chungju,region:An.Green,x:1744,y:2552},{name:Ln.Cheongju,region:An.Green,x:1547,y:2645},{name:Ln.Jeju,region:An.Green,x:1223,y:4051},{name:Ln.Gwangju,region:An.Green,x:1309,y:3380},{name:Ln.Naju,region:An.Green,x:1121,y:3569},{name:Ln.Jeonju,region:An.Green,x:1363,y:3109},{name:Ln.Daejeon,region:An.Green,x:1462,y:2839},{name:Ln.Yongin,region:An.Purple,x:1532,y:2371},{name:Ln.Seoul,region:An.Purple,x:1400,y:2203},{name:Ln.Suwon,region:An.Purple,x:1366,y:2488},{name:Ln.Goyang,region:An.Purple,x:1219,y:2270},{name:Ln.Anyang,region:An.Purple,x:1156,y:2446},{name:Ln.Incheon,region:An.Purple,x:1028,y:2311},{name:Ln.Gaesung,region:An.Purple,x:1171,y:2042},{name:Ln.Ganggye,region:An.Pink,x:1213,y:809},{name:Ln.Haeju,region:An.Pink,x:856,y:2135},{name:Ln.Pyeongyang,region:An.Pink,x:938,y:1642},{name:Ln.Hwangju,region:An.Pink,x:901,y:1886},{name:Ln.Nampo,region:An.Pink,x:677,y:1763},{name:Ln.Anju,region:An.Pink,x:812,y:1391},{name:Ln.Sinuiju,region:An.Pink,x:433,y:1105}],connections:[{nodes:[Ln.Naju,Ln.Jeju],cost:19},{nodes:[Ln.Naju,Ln.Jinju],cost:15},{nodes:[Ln.Jinju,Ln.Gwangju],cost:14},{nodes:[Ln.Gwangju,Ln.Naju],cost:2},{nodes:[Ln.Gwangju,Ln.Jeonju],cost:11},{nodes:[Ln.Jeonju,Ln.Jinju],cost:15},{nodes:[Ln.Jinju,Ln.Busan],cost:11},{nodes:[Ln.Jinju,Ln.Daegu],cost:11},{nodes:[Ln.Daegu,Ln.Jeonju],cost:16},{nodes:[Ln.Daegu,Ln.Busan],cost:12},{nodes:[Ln.Busan,Ln.Ulsan],cost:7},{nodes:[Ln.Ulsan,Ln.Daegu],cost:10},{nodes:[Ln.Jeonju,Ln.Daejeon],cost:9},{nodes:[Ln.Daejeon,Ln.Daegu],cost:15},{nodes:[Ln.Andong,Ln.Gyeongju],cost:11},{nodes:[Ln.Gyeongju,Ln.Daegu],cost:7},{nodes:[Ln.Gyeongju,Ln.Ulsan],cost:3},{nodes:[Ln.Daegu,Ln.Sangju],cost:9},{nodes:[Ln.Sangju,Ln.Daejeon],cost:8},{nodes:[Ln.Daegu,Ln.Andong],cost:10},{nodes:[Ln.Andong,Ln.Sangju],cost:6},{nodes:[Ln.Andong,Ln.Taeraek],cost:8},{nodes:[Ln.Taeraek,Ln.Samcheok],cost:5},{nodes:[Ln.Samcheok,Ln.Donghae],cost:0},{nodes:[Ln.Donghae,Ln.Gangneung],cost:4},{nodes:[Ln.Chungju,Ln.Taeraek],cost:13},{nodes:[Ln.Andong,Ln.Chungju],cost:11},{nodes:[Ln.Chungju,Ln.Cheongju],cost:7},{nodes:[Ln.Cheongju,Ln.Sangju],cost:8},{nodes:[Ln.Sangju,Ln.Chungju],cost:9},{nodes:[Ln.Daejeon,Ln.Cheongju],cost:4},{nodes:[Ln.Wonju,Ln.Donghae],cost:14},{nodes:[Ln.Wonju,Ln.Taeraek],cost:13},{nodes:[Ln.Chungju,Ln.Wonju],cost:5},{nodes:[Ln.Wonju,Ln.Gangneung],cost:12},{nodes:[Ln.Wonju,Ln.Sokcho],cost:15},{nodes:[Ln.Sokcho,Ln.Gangneung],cost:6},{nodes:[Ln.Chuncheon,Ln.Wonju],cost:7},{nodes:[Ln.Sinuiju,Ln.Ganggye],cost:25},{nodes:[Ln.Ganggye,Ln.Hyesan],cost:20},{nodes:[Ln.Sinuiju,Ln.Anju],cost:13},{nodes:[Ln.Anju,Ln.Ganggye],cost:22},{nodes:[Ln.Ganggye,Ln.Hamheung],cost:19},{nodes:[Ln.Hamheung,Ln.Anju],cost:20},{nodes:[Ln.Anju,Ln.Nampo],cost:10},{nodes:[Ln.Anju,Ln.Pyeongyang],cost:7},{nodes:[Ln.Pyeongyang,Ln.Nampo],cost:5},{nodes:[Ln.Nampo,Ln.Hwangju],cost:4},{nodes:[Ln.Hwangju,Ln.Pyeongyang],cost:4},{nodes:[Ln.Pyeongyang,Ln.Wonsan],cost:18},{nodes:[Ln.Pyeongyang,Ln.Hamheung],cost:23},{nodes:[Ln.Hamheung,Ln.Wonsan],cost:11},{nodes:[Ln.Pyeongyang,Ln.Gaesung],cost:14},{nodes:[Ln.Gaesung,Ln.Haeju],cost:8},{nodes:[Ln.Haeju,Ln.Hwangju],cost:8},{nodes:[Ln.Gaesung,Ln.Goyang],cost:7},{nodes:[Ln.Anyang,Ln.Suwon],cost:3},{nodes:[Ln.Suwon,Ln.Yongin],cost:2},{nodes:[Ln.Goyang,Ln.Incheon],cost:0},{nodes:[Ln.Incheon,Ln.Anyang],cost:0},{nodes:[Ln.Goyang,Ln.Seoul],cost:0},{nodes:[Ln.Suwon,Ln.Cheongju],cost:10},{nodes:[Ln.Seoul,Ln.Yongin],cost:2},{nodes:[Ln.Gaesung,Ln.Chuncheon],cost:13},{nodes:[Ln.Gaesung,Ln.Wonsan],cost:18},{nodes:[Ln.Wonsan,Ln.Sokcho],cost:18},{nodes:[Ln.Wonsan,Ln.Chuncheon],cost:19},{nodes:[Ln.Sokcho,Ln.Chuncheon],cost:10},{nodes:[Ln.Chuncheon,Ln.Seoul],cost:8},{nodes:[Ln.Chuncheon,Ln.Yongin],cost:9},{nodes:[Ln.Yongin,Ln.Wonju],cost:8},{nodes:[Ln.Yongin,Ln.Chungju],cost:10},{nodes:[Ln.Yongin,Ln.Cheongju],cost:10},{nodes:[Ln.Rasun,Ln.Cheongjin],cost:8},{nodes:[Ln.Cheongjin,Ln.Gyeongseong],cost:4},{nodes:[Ln.Gyeongseong,Ln.Seongjin],cost:16},{nodes:[Ln.Hyesan,Ln.Gyeongseong],cost:18},{nodes:[Ln.Hyesan,Ln.Seongjin],cost:14},{nodes:[Ln.Seongjin,Ln.Hamheung],cost:17},{nodes:[Ln.Hamheung,Ln.Hyesan],cost:23}],layout:"Portrait",adjustRatio:[.25,.25],mapPosition:[40,30],viewBox:[1480,1180],supplyPosition:[675,1040],resupply:[[[2,2,2],[2,3,2],[3,3,2],[3,4,3],[4,5,3]],[[1,1,3],[1,2,3],[2,3,3],[3,3,4],[3,4,4]],[[1,1,2],[1,1,2],[1,2,2],[2,2,3],[2,3,3]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],resupplyNorth:[[[1,2,1],[2,2,1],[2,3,2],[2,3,2],[3,4,3]],[[1,1,1],[1,1,1],[1,1,2],[1,2,2],[2,2,3]],[[0,1,1],[0,1,1],[1,1,2],[1,1,2],[1,2,3]]],startingResources:[12,12,4,2],startingResourcesNorth:[12,6,2],startingSupply:[24,24,24,12],coalPrices:[1,2,3,4,5,5,6,6,7,7,8,8],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8],garbagePrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8],uraniumPrices:[1,2,3,4,5,6,7,8,10,12,14,16],coalPricesNorth:[1,1,2,2,3,3,4,4,5,6,7,8],oilPricesNorth:[1,2,3,4,5,6,7,8],garbagePricesNorth:[1,2,3,4,5,6,7,8],mapSpecificRules:"Korea has two separate resource markets: North and South.\nOn your buying turn, choose one side — all resources you buy that turn must come from that side. The next turn you may choose the other side.\nThe North market has no uranium track; uranium is only available from the South.\nBoth markets share a single supply pool. During bureaucracy, North restocks first, then South from whatever remains."};(function(e){e["Pink"]="pink",e["Green"]="green",e["Orange"]="orange",e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown"})(Gn||(Gn={})),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"}(Dn||(Dn={}));var Nn,Tn,En={name:"Middle East",cities:[{name:Dn.Mashhad,region:Gn.Pink,x:859,y:327},{name:Dn.Corgan,region:Gn.Pink,x:734,y:287},{name:Dn.Tehran,region:Gn.Pink,x:633,y:342},{name:Dn.Tabriz,region:Gn.Pink,x:450,y:251},{name:Dn.Mosul,region:Gn.Pink,x:352,y:307},{name:Dn.Kermanshah,region:Gn.Pink,x:503,y:391},{name:Dn.Baghdad,region:Gn.Pink,x:393,y:406},{name:Dn.Isfahan,region:Gn.Green,x:621,y:436},{name:Dn.Yazo,region:Gn.Green,x:720,y:472},{name:Dn.Zahedan,region:Gn.Green,x:896,y:547},{name:Dn.Kerman,region:Gn.Green,x:784,y:534},{name:Dn.Shiraz,region:Gn.Green,x:651,y:557},{name:Dn.Bandarabbas,region:Gn.Green,x:756,y:629},{name:Dn.Chabahar,region:Gn.Green,x:898,y:687},{name:Dn.Dubai,region:Gn.Orange,x:752,y:690},{name:Dn.Muscat,region:Gn.Orange,x:828,y:773},{name:Dn.Abudhari,region:Gn.Orange,x:692,y:747},{name:Dn.Alain,region:Gn.Orange,x:715,y:812},{name:Dn.Salalah,region:Gn.Orange,x:694,y:981},{name:Dn.Doha,region:Gn.Orange,x:596,y:713},{name:Dn.Manama,region:Gn.Orange,x:532,y:652},{name:Dn.Ahvaz,region:Gn.Yellow,x:555,y:499},{name:Dn.Basra,region:Gn.Yellow,x:452,y:519},{name:Dn.Najaf,region:Gn.Yellow,x:356,y:478},{name:Dn.Kuwaitcity,region:Gn.Yellow,x:500,y:580},{name:Dn.Buraydah,region:Gn.Yellow,x:360,y:674},{name:Dn.Riyadh,region:Gn.Yellow,x:443,y:741},{name:Dn.Medina,region:Gn.Yellow,x:264,y:738},{name:Dn.Alhasahah,region:Gn.Red,x:248,y:300},{name:Dn.Aleppo,region:Gn.Red,x:132,y:315},{name:Dn.Damascus,region:Gn.Red,x:186,y:433},{name:Dn.Amman,region:Gn.Red,x:171,y:493},{name:Dn.Beirut,region:Gn.Red,x:94,y:401},{name:Dn.Jerusalem,region:Gn.Red,x:76,y:481},{name:Dn.Aqaba,region:Gn.Red,x:103,y:563},{name:Dn.Mukalla,region:Gn.Brown,x:555,y:1059},{name:Dn.Sanaa,region:Gn.Brown,x:426,y:1018},{name:Dn.Aden,region:Gn.Brown,x:431,y:1105},{name:Dn.Alhudaydah,region:Gn.Brown,x:317,y:1057},{name:Dn.Abha,region:Gn.Brown,x:306,y:938},{name:Dn.Mecca,region:Gn.Brown,x:280,y:850},{name:Dn.Jeddah,region:Gn.Brown,x:190,y:800}],connections:[{nodes:[Dn.Tabriz,Dn.Tehran],cost:13},{nodes:[Dn.Tehran,Dn.Corgan],cost:9},{nodes:[Dn.Corgan,Dn.Mashhad],cost:12},{nodes:[Dn.Mashhad,Dn.Zahedan],cost:20},{nodes:[Dn.Zahedan,Dn.Kerman],cost:10},{nodes:[Dn.Kerman,Dn.Yazo],cost:7},{nodes:[Dn.Yazo,Dn.Mashhad],cost:18},{nodes:[Dn.Mashhad,Dn.Tehran],cost:19},{nodes:[Dn.Tehran,Dn.Yazo],cost:12},{nodes:[Dn.Yazo,Dn.Shiraz],cost:9},{nodes:[Dn.Shiraz,Dn.Kerman],cost:11},{nodes:[Dn.Yazo,Dn.Isfahan],cost:7},{nodes:[Dn.Isfahan,Dn.Shiraz],cost:10},{nodes:[Dn.Isfahan,Dn.Tehran],cost:9},{nodes:[Dn.Tehran,Dn.Kermanshah],cost:13},{nodes:[Dn.Kermanshah,Dn.Isfahan],cost:13},{nodes:[Dn.Isfahan,Dn.Ahvaz],cost:11},{nodes:[Dn.Ahvaz,Dn.Shiraz],cost:11},{nodes:[Dn.Ahvaz,Dn.Kermanshah],cost:11},{nodes:[Dn.Kermanshah,Dn.Tabriz],cost:13},{nodes:[Dn.Tabriz,Dn.Mosul],cost:13},{nodes:[Dn.Mosul,Dn.Baghdad],cost:8},{nodes:[Dn.Baghdad,Dn.Kermanshah],cost:8},{nodes:[Dn.Basra,Dn.Ahvaz],cost:3},{nodes:[Dn.Ahvaz,Dn.Kuwaitcity],cost:7},{nodes:[Dn.Kuwaitcity,Dn.Basra],cost:5},{nodes:[Dn.Basra,Dn.Najaf],cost:10},{nodes:[Dn.Najaf,Dn.Baghdad],cost:4},{nodes:[Dn.Baghdad,Dn.Basra],cost:12},{nodes:[Dn.Alhasahah,Dn.Mosul],cost:4},{nodes:[Dn.Alhasahah,Dn.Baghdad],cost:11},{nodes:[Dn.Baghdad,Dn.Damascus],cost:16},{nodes:[Dn.Damascus,Dn.Najaf],cost:15},{nodes:[Dn.Alhasahah,Dn.Damascus],cost:14},{nodes:[Dn.Damascus,Dn.Amman],cost:4},{nodes:[Dn.Amman,Dn.Aqaba],cost:7},{nodes:[Dn.Aqaba,Dn.Jerusalem],cost:6},{nodes:[Dn.Jerusalem,Dn.Amman],cost:3},{nodes:[Dn.Jerusalem,Dn.Beirut],cost:6},{nodes:[Dn.Beirut,Dn.Damascus],cost:4},{nodes:[Dn.Damascus,Dn.Aleppo],cost:8},{nodes:[Dn.Aleppo,Dn.Beirut],cost:9},{nodes:[Dn.Aleppo,Dn.Alhasahah],cost:7},{nodes:[Dn.Baghdad,Dn.Tabriz],cost:18},{nodes:[Dn.Zahedan,Dn.Chabahar],cost:13},{nodes:[Dn.Zahedan,Dn.Bandarabbas],cost:14},{nodes:[Dn.Bandarabbas,Dn.Kerman],cost:13},{nodes:[Dn.Shiraz,Dn.Bandarabbas],cost:14},{nodes:[Dn.Bandarabbas,Dn.Chabahar],cost:15},{nodes:[Dn.Kuwaitcity,Dn.Manama],cost:12},{nodes:[Dn.Manama,Dn.Doha],cost:6},{nodes:[Dn.Doha,Dn.Abudhari],cost:9},{nodes:[Dn.Abudhari,Dn.Dubai],cost:2},{nodes:[Dn.Dubai,Dn.Muscat],cost:9},{nodes:[Dn.Muscat,Dn.Alain],cost:7},{nodes:[Dn.Alain,Dn.Abudhari],cost:3},{nodes:[Dn.Alain,Dn.Dubai],cost:3},{nodes:[Dn.Riyadh,Dn.Alain],cost:23},{nodes:[Dn.Doha,Dn.Riyadh],cost:12},{nodes:[Dn.Riyadh,Dn.Manama],cost:10},{nodes:[Dn.Riyadh,Dn.Kuwaitcity],cost:12},{nodes:[Dn.Kuwaitcity,Dn.Buraydah],cost:12},{nodes:[Dn.Buraydah,Dn.Riyadh],cost:7},{nodes:[Dn.Buraydah,Dn.Medina],cost:10},{nodes:[Dn.Medina,Dn.Riyadh],cost:15},{nodes:[Dn.Buraydah,Dn.Najaf],cost:14},{nodes:[Dn.Aqaba,Dn.Jeddah],cost:23},{nodes:[Dn.Aqaba,Dn.Medina],cost:17},{nodes:[Dn.Medina,Dn.Jeddah],cost:7},{nodes:[Dn.Jeddah,Dn.Mecca],cost:1},{nodes:[Dn.Mecca,Dn.Medina],cost:7},{nodes:[Dn.Mecca,Dn.Riyadh],cost:17},{nodes:[Dn.Riyadh,Dn.Abha],cost:19},{nodes:[Dn.Abha,Dn.Mecca],cost:12},{nodes:[Dn.Salalah,Dn.Muscat],cost:21},{nodes:[Dn.Alain,Dn.Salalah],cost:18},{nodes:[Dn.Salalah,Dn.Mukalla],cost:15},{nodes:[Dn.Salalah,Dn.Sanaa],cost:25},{nodes:[Dn.Sanaa,Dn.Mukalla],cost:14},{nodes:[Dn.Mukalla,Dn.Aden],cost:13},{nodes:[Dn.Aden,Dn.Alhudaydah],cost:9},{nodes:[Dn.Alhudaydah,Dn.Abha],cost:10},{nodes:[Dn.Abha,Dn.Sanaa],cost:11},{nodes:[Dn.Sanaa,Dn.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"})(Nn||(Nn={})),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"}(Tn||(Tn={}));var Kn,In,Un,Wn={name:"North America",cities:[{name:Tn.Edmonton,region:Nn.Pink,x:325,y:71},{name:Tn.Calgary,region:Nn.Pink,x:250,y:190},{name:Tn.Vancouver,region:Nn.Pink,x:114,y:266},{name:Tn.Seattle,region:Nn.Pink,x:100,y:387},{name:Tn.Regina,region:Nn.Pink,x:536,y:277},{name:Tn.Winnipeg,region:Nn.Pink,x:830,y:272},{name:Tn.Minneapolis,region:Nn.Pink,x:907,y:486},{name:Tn.Portland,region:Nn.Brown,x:122,y:516},{name:Tn.SanFrancisco,region:Nn.Brown,x:135,y:660},{name:Tn.LosAngeles,region:Nn.Brown,x:160,y:911},{name:Tn.SanDiego,region:Nn.Brown,x:223,y:1007},{name:Tn.SaltLakeCity,region:Nn.Brown,x:380,y:555},{name:Tn.LasVegas,region:Nn.Brown,x:322,y:760},{name:Tn.Denver,region:Nn.Brown,x:569,y:694},{name:Tn.Albuquerque,region:Nn.Orange,x:539,y:941},{name:Tn.Juarez,region:Nn.Orange,x:558,y:1043},{name:Tn.Chihuahua,region:Nn.Orange,x:577,y:1183},{name:Tn.Monterrey,region:Nn.Orange,x:791,y:1292},{name:Tn.Guadalajara,region:Nn.Orange,x:715,y:1391},{name:Tn.MexicoCityN,region:Nn.Orange,x:918,y:1410},{name:Tn.MexicoCityS,region:Nn.Orange,x:918,y:1474},{name:Tn.SanAntonio,region:Nn.Green,x:767,y:1172},{name:Tn.DallasFortWorth,region:Nn.Green,x:850,y:1020},{name:Tn.Houston,region:Nn.Green,x:931,y:1095},{name:Tn.NewOrleans,region:Nn.Green,x:1126,y:1095},{name:Tn.Atlanta,region:Nn.Green,x:1318,y:1021},{name:Tn.Jacksonville,region:Nn.Green,x:1398,y:1109},{name:Tn.Miami,region:Nn.Green,x:1398,y:1235},{name:Tn.Milwaukee,region:Nn.Blue,x:1165,y:502},{name:Tn.Chicago,region:Nn.Blue,x:1148,y:601},{name:Tn.KansasCity,region:Nn.Blue,x:825,y:720},{name:Tn.StLouis,region:Nn.Blue,x:1047,y:768},{name:Tn.Indianapolis,region:Nn.Blue,x:1206,y:694},{name:Tn.OklahomaCity,region:Nn.Blue,x:800,y:870},{name:Tn.Memphis,region:Nn.Blue,x:1099,y:938},{name:Tn.Toronto,region:Nn.Yellow,x:1488,y:513},{name:Tn.Detroit,region:Nn.Yellow,x:1390,y:590},{name:Tn.Pittsburgh,region:Nn.Yellow,x:1524,y:659},{name:Tn.Columbus,region:Nn.Yellow,x:1398,y:733},{name:Tn.Nashville,region:Nn.Yellow,x:1233,y:826},{name:Tn.Washington,region:Nn.Yellow,x:1554,y:829},{name:Tn.Charlotte,region:Nn.Yellow,x:1480,y:965},{name:Tn.Quebec,region:Nn.Red,x:1911,y:354},{name:Tn.Ottawa,region:Nn.Red,x:1653,y:458},{name:Tn.Montreal,region:Nn.Red,x:1875,y:461},{name:Tn.NewYorkN,region:Nn.Red,x:1730,y:598},{name:Tn.NewYorkS,region:Nn.Red,x:1730,y:648},{name:Tn.Boston,region:Nn.Red,x:1928,y:579},{name:Tn.Philadelphia,region:Nn.Red,x:1724,y:755}],connections:[{nodes:[Tn.Edmonton,Tn.Calgary],cost:5},{nodes:[Tn.Calgary,Tn.Vancouver],cost:16},{nodes:[Tn.Vancouver,Tn.Seattle],cost:4},{nodes:[Tn.Edmonton,Tn.Regina],cost:15},{nodes:[Tn.Calgary,Tn.Regina],cost:14},{nodes:[Tn.Vancouver,Tn.Regina],cost:28},{nodes:[Tn.Regina,Tn.Winnipeg],cost:11},{nodes:[Tn.Winnipeg,Tn.Minneapolis],cost:13},{nodes:[Tn.Seattle,Tn.Portland],cost:5},{nodes:[Tn.Regina,Tn.SaltLakeCity],cost:29},{nodes:[Tn.Regina,Tn.Denver],cost:24},{nodes:[Tn.Winnipeg,Tn.Denver],cost:26},{nodes:[Tn.Minneapolis,Tn.Denver],cost:23},{nodes:[Tn.Portland,Tn.SanFrancisco],cost:20},{nodes:[Tn.SanFrancisco,Tn.LosAngeles],cost:12},{nodes:[Tn.LosAngeles,Tn.SanDiego],cost:3},{nodes:[Tn.Portland,Tn.SaltLakeCity],cost:22},{nodes:[Tn.SanFrancisco,Tn.SaltLakeCity],cost:22},{nodes:[Tn.SanFrancisco,Tn.LasVegas],cost:16},{nodes:[Tn.SaltLakeCity,Tn.LasVegas],cost:14},{nodes:[Tn.LasVegas,Tn.LosAngeles],cost:8},{nodes:[Tn.SaltLakeCity,Tn.Denver],cost:14},{nodes:[Tn.LasVegas,Tn.Denver],cost:25},{nodes:[Tn.LosAngeles,Tn.Albuquerque],cost:25},{nodes:[Tn.LasVegas,Tn.Albuquerque],cost:18},{nodes:[Tn.Denver,Tn.Albuquerque],cost:12},{nodes:[Tn.SanDiego,Tn.Juarez],cost:22},{nodes:[Tn.Albuquerque,Tn.Juarez],cost:9},{nodes:[Tn.Juarez,Tn.Chihuahua],cost:8},{nodes:[Tn.Chihuahua,Tn.Monterrey],cost:14},{nodes:[Tn.Chihuahua,Tn.Guadalajara],cost:23},{nodes:[Tn.Monterrey,Tn.Guadalajara],cost:16},{nodes:[Tn.Monterrey,Tn.MexicoCityS],cost:17},{nodes:[Tn.Guadalajara,Tn.MexicoCityS],cost:10},{nodes:[Tn.MexicoCityN,Tn.MexicoCityS],cost:0},{nodes:[Tn.Albuquerque,Tn.OklahomaCity],cost:18},{nodes:[Tn.Juarez,Tn.DallasFortWorth],cost:19},{nodes:[Tn.Juarez,Tn.SanAntonio],cost:18},{nodes:[Tn.Chihuahua,Tn.SanAntonio],cost:16},{nodes:[Tn.Monterrey,Tn.SanAntonio],cost:10},{nodes:[Tn.Milwaukee,Tn.Chicago],cost:3},{nodes:[Tn.Chicago,Tn.KansasCity],cost:16},{nodes:[Tn.Chicago,Tn.StLouis],cost:9},{nodes:[Tn.Chicago,Tn.Indianapolis],cost:6},{nodes:[Tn.KansasCity,Tn.StLouis],cost:8},{nodes:[Tn.StLouis,Tn.Indianapolis],cost:8},{nodes:[Tn.KansasCity,Tn.OklahomaCity],cost:10},{nodes:[Tn.KansasCity,Tn.Memphis],cost:14},{nodes:[Tn.StLouis,Tn.Memphis],cost:9},{nodes:[Tn.OklahomaCity,Tn.Memphis],cost:15},{nodes:[Tn.Milwaukee,Tn.Minneapolis],cost:10},{nodes:[Tn.KansasCity,Tn.Minneapolis],cost:14},{nodes:[Tn.KansasCity,Tn.Denver],cost:19},{nodes:[Tn.OklahomaCity,Tn.Denver],cost:17},{nodes:[Tn.OklahomaCity,Tn.DallasFortWorth],cost:7},{nodes:[Tn.Memphis,Tn.DallasFortWorth],cost:15},{nodes:[Tn.Memphis,Tn.NewOrleans],cost:14},{nodes:[Tn.Memphis,Tn.Atlanta],cost:12},{nodes:[Tn.DallasFortWorth,Tn.SanAntonio],cost:9},{nodes:[Tn.DallasFortWorth,Tn.Houston],cost:8},{nodes:[Tn.DallasFortWorth,Tn.NewOrleans],cost:16},{nodes:[Tn.SanAntonio,Tn.Houston],cost:6},{nodes:[Tn.Houston,Tn.NewOrleans],cost:12},{nodes:[Tn.NewOrleans,Tn.Atlanta],cost:16},{nodes:[Tn.NewOrleans,Tn.Jacksonville],cost:20},{nodes:[Tn.Atlanta,Tn.Jacksonville],cost:10},{nodes:[Tn.Jacksonville,Tn.Miami],cost:12},{nodes:[Tn.Atlanta,Tn.Nashville],cost:9},{nodes:[Tn.Atlanta,Tn.Charlotte],cost:8},{nodes:[Tn.Jacksonville,Tn.Charlotte],cost:12},{nodes:[Tn.Toronto,Tn.Detroit],cost:8},{nodes:[Tn.Toronto,Tn.Pittsburgh],cost:11},{nodes:[Tn.Detroit,Tn.Columbus],cost:7},{nodes:[Tn.Columbus,Tn.Pittsburgh],cost:6},{nodes:[Tn.Nashville,Tn.Columbus],cost:15},{nodes:[Tn.Nashville,Tn.Washington],cost:22},{nodes:[Tn.Nashville,Tn.Charlotte],cost:12},{nodes:[Tn.Columbus,Tn.Washington],cost:12},{nodes:[Tn.Washington,Tn.Pittsburgh],cost:7},{nodes:[Tn.Washington,Tn.Charlotte],cost:12},{nodes:[Tn.Detroit,Tn.Chicago],cost:10},{nodes:[Tn.Columbus,Tn.Chicago],cost:10},{nodes:[Tn.Columbus,Tn.Indianapolis],cost:7},{nodes:[Tn.Nashville,Tn.Indianapolis],cost:9},{nodes:[Tn.Nashville,Tn.StLouis],cost:9},{nodes:[Tn.Nashville,Tn.Memphis],cost:7},{nodes:[Tn.Toronto,Tn.Ottawa],cost:8},{nodes:[Tn.Toronto,Tn.NewYorkS],cost:14},{nodes:[Tn.Pittsburgh,Tn.NewYorkS],cost:11},{nodes:[Tn.Pittsburgh,Tn.Philadelphia],cost:9},{nodes:[Tn.Washington,Tn.Philadelphia],cost:5},{nodes:[Tn.Quebec,Tn.Montreal],cost:5},{nodes:[Tn.Montreal,Tn.Boston],cost:9},{nodes:[Tn.Ottawa,Tn.Montreal],cost:3},{nodes:[Tn.Ottawa,Tn.NewYorkS],cost:13},{nodes:[Tn.Montreal,Tn.NewYorkS],cost:12},{nodes:[Tn.NewYorkS,Tn.Boston],cost:7},{nodes:[Tn.NewYorkS,Tn.Philadelphia],cost:3},{nodes:[Tn.NewYorkN,Tn.NewYorkS],cost:0}],layout:"Landscape",adjustRatio:[.5,.38],mapPosition:[70,50],mapRotation:-5,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"})(In||(In={})),function(e){e["Oulu"]="Oulu",e["Kuopid"]="Kuopid",e["Tampere"]="Tampere",e["Helsinki"]="Helsinki",e["Espoo"]="Espoo",e["Pori"]="Pori",e["Turku"]="Turku",e["Uppsala"]="Uppsala",e["Stockholm"]="Stockholm",e["Vasteras"]="Vasteras",e["Drebro"]="Drebro",e["Sundsvall"]="Sundsvall",e["Lulea"]="Lulea",e["Ostersund"]="Ostersund",e["Tallinn"]="Tallinn",e["Tartu"]="Tartu",e["Daugavpils"]="Daugavpils",e["Vilnius"]="Vilnius",e["Kaunas"]="Kaunas",e["Rica"]="Rica",e["Klaipeda"]="Klaipeda",e["Karlstad"]="Karlstad",e["Linkopinc"]="Linkopinc",e["Jonkoping"]="Jonkoping",e["Visby"]="Visby",e["Kristianstad"]="Kristianstad",e["Malmo"]="Malmo",e["Goteborg"]="Goteborg",e["Aalborg"]="Aalborg",e["Aarhus"]="Aarhus",e["Kobenhavn"]="Kobenhavn",e["Nykobingfalster"]="Nykobing Falster",e["Ringkobing"]="Ringkobing",e["Esbjerg"]="Esbjerg",e["Odense"]="Odense",e["Tromso"]="Tromso",e["Bood"]="Bood",e["Trondheim"]="Trondheim",e["Oslo"]="Oslo",e["Arendal"]="Arendal",e["Bergen"]="Bergen",e["Stavanger"]="Stavanger"}(Un||(Un={}));var Fn,Yn,Hn={name:"Northern Europe",cities:[{name:Un.Oulu,region:In.Brown,x:514,y:376},{name:Un.Kuopid,region:In.Brown,x:551,y:474},{name:Un.Tampere,region:In.Brown,x:492,y:544},{name:Un.Helsinki,region:In.Brown,x:530,y:602},{name:Un.Espoo,region:In.Brown,x:457,y:603},{name:Un.Pori,region:In.Brown,x:400,y:526},{name:Un.Turku,region:In.Brown,x:409,y:593},{name:Un.Uppsala,region:In.Yellow,x:350,y:585},{name:Un.Stockholm,region:In.Yellow,x:380,y:660},{name:Un.Vasteras,region:In.Yellow,x:295,y:576},{name:Un.Drebro,region:In.Yellow,x:295,y:628},{name:Un.Sundsvall,region:In.Yellow,x:332,y:506},{name:Un.Lulea,region:In.Yellow,x:423,y:345},{name:Un.Ostersund,region:In.Yellow,x:272,y:462},{name:Un.Tallinn,region:In.Pink,x:475,y:656},{name:Un.Tartu,region:In.Pink,x:544,y:689},{name:Un.Daugavpils,region:In.Pink,x:547,y:771},{name:Un.Vilnius,region:In.Pink,x:520,y:819},{name:Un.Kaunas,region:In.Pink,x:458,y:811},{name:Un.Rica,region:In.Pink,x:472,y:734},{name:Un.Klaipeda,region:In.Pink,x:411,y:784},{name:Un.Karlstad,region:In.Purple,x:246,y:629},{name:Un.Linkopinc,region:In.Purple,x:309,y:676},{name:Un.Jonkoping,region:In.Purple,x:285,y:712},{name:Un.Visby,region:In.Purple,x:364,y:717},{name:Un.Kristianstad,region:In.Purple,x:330,y:750},{name:Un.Malmo,region:In.Purple,x:287,y:787},{name:Un.Goteborg,region:In.Purple,x:231,y:700},{name:Un.Aalborg,region:In.Orange,x:177,y:717},{name:Un.Aarhus,region:In.Orange,x:195,y:758},{name:Un.Kobenhavn,region:In.Orange,x:228,y:792},{name:Un.Nykobingfalster,region:In.Orange,x:238,y:842},{name:Un.Ringkobing,region:In.Orange,x:120,y:733},{name:Un.Esbjerg,region:In.Orange,x:104,y:787},{name:Un.Odense,region:In.Orange,x:148,y:824},{name:Un.Tromso,region:In.Red,x:371,y:122},{name:Un.Bood,region:In.Red,x:276,y:254},{name:Un.Trondheim,region:In.Red,x:173,y:450},{name:Un.Oslo,region:In.Red,x:176,y:606},{name:Un.Arendal,region:In.Red,x:145,y:651},{name:Un.Bergen,region:In.Red,x:68,y:586},{name:Un.Stavanger,region:In.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:(Kn={},i(Kn,In.Orange,[{number:19,type:ve.Oil,cost:2,citiesPowered:4},{number:26,type:ve.Oil,cost:3,citiesPowered:5}]),i(Kn,In.Red,[{number:7,type:ve.Wind,cost:0,citiesPowered:1},{number:46,type:ve.Wind,cost:0,citiesPowered:6}]),i(Kn,In.Purple,[{number:10,type:ve.Uranium,cost:2,citiesPowered:3},{number:39,type:ve.Wind,cost:0,citiesPowered:5}]),i(Kn,In.Yellow,[{number:21,type:ve.Wind,cost:0,citiesPowered:2},{number:25,type:ve.Uranium,cost:1,citiesPowered:4}]),i(Kn,In.Brown,[{number:32,type:ve.Garbage,cost:2,citiesPowered:6},{number:44,type:ve.Uranium,cost:1,citiesPowered:7}]),i(Kn,In.Pink,[{number:18,type:ve.Oil,cost:1,citiesPowered:3},{number:22,type:ve.Wind,cost:0,citiesPowered:3}]),Kn),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:[Un.Bood,Un.Tromso],cost:17},{nodes:[Un.Tromso,Un.Oulu],cost:25},{nodes:[Un.Oulu,Un.Kuopid],cost:10},{nodes:[Un.Lulea,Un.Tromso],cost:19},{nodes:[Un.Lulea,Un.Oulu],cost:13},{nodes:[Un.Oulu,Un.Pori],cost:15},{nodes:[Un.Oulu,Un.Tampere],cost:14},{nodes:[Un.Sundsvall,Un.Lulea],cost:16},{nodes:[Un.Lulea,Un.Bood],cost:16},{nodes:[Un.Bood,Un.Ostersund],cost:18},{nodes:[Un.Ostersund,Un.Lulea],cost:17},{nodes:[Un.Lulea,Un.Pori],cost:22},{nodes:[Un.Pori,Un.Sundsvall],cost:17},{nodes:[Un.Bood,Un.Trondheim],cost:21},{nodes:[Un.Trondheim,Un.Bergen],cost:17},{nodes:[Un.Trondheim,Un.Oslo],cost:17},{nodes:[Un.Oslo,Un.Ostersund],cost:18},{nodes:[Un.Ostersund,Un.Karlstad],cost:16},{nodes:[Un.Bergen,Un.Oslo],cost:15},{nodes:[Un.Oslo,Un.Stavanger],cost:11},{nodes:[Un.Stavanger,Un.Arendal],cost:8},{nodes:[Un.Arendal,Un.Oslo],cost:7},{nodes:[Un.Bergen,Un.Stavanger],cost:9},{nodes:[Un.Arendal,Un.Ringkobing],cost:19},{nodes:[Un.Ringkobing,Un.Esbjerg],cost:4},{nodes:[Un.Esbjerg,Un.Odense],cost:5},{nodes:[Un.Odense,Un.Nykobingfalster],cost:8},{nodes:[Un.Arendal,Un.Aalborg],cost:16},{nodes:[Un.Arendal,Un.Goteborg],cost:19},{nodes:[Un.Goteborg,Un.Oslo],cost:11},{nodes:[Un.Oslo,Un.Karlstad],cost:7},{nodes:[Un.Karlstad,Un.Goteborg],cost:9},{nodes:[Un.Karlstad,Un.Jonkoping],cost:9},{nodes:[Un.Karlstad,Un.Linkopinc],cost:7},{nodes:[Un.Tampere,Un.Kuopid],cost:10},{nodes:[Un.Tampere,Un.Pori],cost:4},{nodes:[Un.Tampere,Un.Turku],cost:5},{nodes:[Un.Tampere,Un.Espoo],cost:5},{nodes:[Un.Tampere,Un.Helsinki],cost:6},{nodes:[Un.Helsinki,Un.Espoo],cost:2},{nodes:[Un.Espoo,Un.Tallinn],cost:7},{nodes:[Un.Tallinn,Un.Helsinki],cost:7},{nodes:[Un.Visby,Un.Kristianstad],cost:13},{nodes:[Un.Visby,Un.Klaipeda],cost:19},{nodes:[Un.Visby,Un.Rica],cost:20},{nodes:[Un.Rica,Un.Tallinn],cost:11},{nodes:[Un.Tallinn,Un.Tartu],cost:5},{nodes:[Un.Tartu,Un.Daugavpils],cost:9},{nodes:[Un.Rica,Un.Tartu],cost:7},{nodes:[Un.Daugavpils,Un.Kaunas],cost:7},{nodes:[Un.Kaunas,Un.Vilnius],cost:3},{nodes:[Un.Kaunas,Un.Klaipeda],cost:7},{nodes:[Un.Klaipeda,Un.Rica],cost:8},{nodes:[Un.Rica,Un.Kaunas],cost:8},{nodes:[Un.Rica,Un.Daugavpils],cost:7},{nodes:[Un.Daugavpils,Un.Vilnius],cost:5},{nodes:[Un.Vasteras,Un.Sundsvall],cost:10},{nodes:[Un.Sundsvall,Un.Ostersund],cost:7},{nodes:[Un.Uppsala,Un.Stockholm],cost:2},{nodes:[Un.Uppsala,Un.Turku],cost:15},{nodes:[Un.Uppsala,Un.Pori],cost:17},{nodes:[Un.Uppsala,Un.Sundsvall],cost:11},{nodes:[Un.Vasteras,Un.Drebro],cost:5},{nodes:[Un.Drebro,Un.Linkopinc],cost:3},{nodes:[Un.Linkopinc,Un.Stockholm],cost:7},{nodes:[Un.Visby,Un.Stockholm],cost:12},{nodes:[Un.Visby,Un.Linkopinc],cost:9},{nodes:[Un.Jonkoping,Un.Malmo],cost:10},{nodes:[Un.Jonkoping,Un.Kristianstad],cost:8},{nodes:[Un.Kristianstad,Un.Malmo],cost:3},{nodes:[Un.Malmo,Un.Kobenhavn],cost:3},{nodes:[Un.Kobenhavn,Un.Nykobingfalster],cost:6},{nodes:[Un.Odense,Un.Aarhus],cost:7},{nodes:[Un.Aarhus,Un.Aalborg],cost:3},{nodes:[Un.Aalborg,Un.Goteborg],cost:11},{nodes:[Un.Kobenhavn,Un.Goteborg],cost:18},{nodes:[Un.Goteborg,Un.Jonkoping],cost:4},{nodes:[Un.Trondheim,Un.Ostersund],cost:9},{nodes:[Un.Vasteras,Un.Stockholm],cost:4},{nodes:[Un.Esbjerg,Un.Aarhus],cost:5},{nodes:[Un.Jonkoping,Un.Linkopinc],cost:5},{nodes:[Un.Kobenhavn,Un.Jonkoping],cost:12},{nodes:[Un.Karlstad,Un.Drebro],cost:4},{nodes:[Un.Vasteras,Un.Uppsala],cost:2},{nodes:[Un.Odense,Un.Kobenhavn],cost:7},{nodes:[Un.Kobenhavn,Un.Aarhus],cost:10},{nodes:[Un.Ringkobing,Un.Aalborg],cost:5},{nodes:[Un.Linkopinc,Un.Kristianstad],cost:9},{nodes:[Un.Drebro,Un.Stockholm],cost:7},{nodes:[Un.Espoo,Un.Turku],cost:4},{nodes:[Un.Pori,Un.Turku],cost:4}]};(function(e){e["Green"]="green",e["Brown"]="brown",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple"})(Fn||(Fn={})),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"}(Yn||(Yn={}));var Vn,Jn,$n={name:"Quebec",cities:[{name:Yn.Septiles,region:Fn.Green,x:3524,y:228},{name:Yn.Portcartier,region:Fn.Green,x:3328,y:370},{name:Yn.Baiecomeau,region:Fn.Green,x:3066,y:630},{name:Yn.Chicoutimi,region:Fn.Green,x:2392,y:898},{name:Yn.Alma,region:Fn.Green,x:2172,y:844},{name:Yn.Roberval,region:Fn.Green,x:1944,y:950},{name:Yn.Jonquiere,region:Fn.Green,x:2240,y:1052},{name:Yn.Gaspe,region:Fn.Brown,x:4014,y:808},{name:Yn.Steannedesmonts,region:Fn.Brown,x:3512,y:708},{name:Yn.Matane,region:Fn.Brown,x:3244,y:808},{name:Yn.Rimouski,region:Fn.Brown,x:2990,y:946},{name:Yn.Pointealacroix,region:Fn.Brown,x:3492,y:1094},{name:Yn.Riviereduloup,region:Fn.Brown,x:2780,y:1208},{name:Yn.Montmagny,region:Fn.Brown,x:2522,y:1534},{name:Yn.Stgeorges,region:Fn.Pink,x:2506,y:1836},{name:Yn.Sherbrooke,region:Fn.Pink,x:2242,y:2128},{name:Yn.Victoriaville,region:Fn.Pink,x:2178,y:1822},{name:Yn.Stsimeon,region:Fn.Pink,x:2576,y:1146},{name:Yn.Charlesbourg,region:Fn.Pink,x:2246,y:1434},{name:Yn.Quebec,region:Fn.Pink,x:2302,y:1536},{name:Yn.Beauport,region:Fn.Pink,x:2196,y:1524},{name:Yn.Granby,region:Fn.Red,x:1974,y:2160},{name:Yn.Sthyacinthe,region:Fn.Red,x:1796,y:2038},{name:Yn.Brossard,region:Fn.Red,x:1790,y:2296},{name:Yn.Valleyfield,region:Fn.Red,x:1576,y:2306},{name:Yn.Vaudreuildorion,region:Fn.Red,x:1414,y:2186},{name:Yn.Montreal,region:Fn.Red,x:1624,y:2052},{name:Yn.Pointeclaire,region:Fn.Red,x:1510,y:2060},{name:Yn.Shawinigan,region:Fn.Yellow,x:1864,y:1448},{name:Yn.Troisrivieres,region:Fn.Yellow,x:1918,y:1650},{name:Yn.Drummondville,region:Fn.Yellow,x:1984,y:1886},{name:Yn.Repentigny,region:Fn.Yellow,x:1696,y:1820},{name:Yn.Longueuil,region:Fn.Yellow,x:1598,y:1964},{name:Yn.Laval,region:Fn.Yellow,x:1512,y:1990},{name:Yn.Lachute,region:Fn.Yellow,x:1364,y:1944},{name:Yn.Amos,region:Fn.Purple,x:492,y:868},{name:Yn.Valdor,region:Fn.Purple,x:570,y:1098},{name:Yn.Rouynnoranda,region:Fn.Purple,x:236,y:1028},{name:Yn.Montlaurier,region:Fn.Purple,x:1180,y:1630},{name:Yn.Maniwaki,region:Fn.Purple,x:964,y:1760},{name:Yn.Gatineau,region:Fn.Purple,x:1076,y:2096},{name:Yn.Hull,region:Fn.Purple,x:862,y:2104}],connections:[{nodes:[Yn.Maniwaki,Yn.Montlaurier],cost:5},{nodes:[Yn.Maniwaki,Yn.Valdor],cost:24},{nodes:[Yn.Valdor,Yn.Amos],cost:8},{nodes:[Yn.Amos,Yn.Rouynnoranda],cost:9},{nodes:[Yn.Rouynnoranda,Yn.Valdor],cost:12},{nodes:[Yn.Hull,Yn.Maniwaki],cost:15},{nodes:[Yn.Hull,Yn.Gatineau],cost:0},{nodes:[Yn.Gatineau,Yn.Montlaurier],cost:16},{nodes:[Yn.Montlaurier,Yn.Lachute],cost:18},{nodes:[Yn.Shawinigan,Yn.Troisrivieres],cost:3},{nodes:[Yn.Troisrivieres,Yn.Drummondville],cost:9},{nodes:[Yn.Drummondville,Yn.Victoriaville],cost:6},{nodes:[Yn.Victoriaville,Yn.Stgeorges],cost:10},{nodes:[Yn.Stgeorges,Yn.Sherbrooke],cost:15},{nodes:[Yn.Sherbrooke,Yn.Granby],cost:8},{nodes:[Yn.Granby,Yn.Sthyacinthe],cost:4},{nodes:[Yn.Sthyacinthe,Yn.Drummondville],cost:6},{nodes:[Yn.Troisrivieres,Yn.Victoriaville],cost:9},{nodes:[Yn.Victoriaville,Yn.Sherbrooke],cost:9},{nodes:[Yn.Sherbrooke,Yn.Drummondville],cost:9},{nodes:[Yn.Sthyacinthe,Yn.Repentigny],cost:7},{nodes:[Yn.Sthyacinthe,Yn.Brossard],cost:5},{nodes:[Yn.Brossard,Yn.Valleyfield],cost:8},{nodes:[Yn.Valleyfield,Yn.Vaudreuildorion],cost:4},{nodes:[Yn.Gatineau,Yn.Lachute],cost:14},{nodes:[Yn.Montlaurier,Yn.Shawinigan],cost:28},{nodes:[Yn.Shawinigan,Yn.Beauport],cost:14},{nodes:[Yn.Beauport,Yn.Troisrivieres],cost:15},{nodes:[Yn.Troisrivieres,Yn.Repentigny],cost:13},{nodes:[Yn.Repentigny,Yn.Longueuil],cost:3},{nodes:[Yn.Laval,Yn.Lachute],cost:6},{nodes:[Yn.Vaudreuildorion,Yn.Pointeclaire],cost:3},{nodes:[Yn.Montreal,Yn.Brossard],cost:4},{nodes:[Yn.Laval,Yn.Longueuil],cost:0},{nodes:[Yn.Pointeclaire,Yn.Montreal],cost:0},{nodes:[Yn.Montreal,Yn.Longueuil],cost:0},{nodes:[Yn.Pointeclaire,Yn.Laval],cost:0},{nodes:[Yn.Beauport,Yn.Charlesbourg],cost:0},{nodes:[Yn.Charlesbourg,Yn.Quebec],cost:0},{nodes:[Yn.Quebec,Yn.Beauport],cost:0},{nodes:[Yn.Victoriaville,Yn.Beauport],cost:12},{nodes:[Yn.Quebec,Yn.Stgeorges],cost:12},{nodes:[Yn.Stgeorges,Yn.Montmagny],cost:12},{nodes:[Yn.Montmagny,Yn.Riviereduloup],cost:16},{nodes:[Yn.Jonquiere,Yn.Charlesbourg],cost:21},{nodes:[Yn.Montmagny,Yn.Quebec],cost:5},{nodes:[Yn.Stsimeon,Yn.Charlesbourg],cost:18},{nodes:[Yn.Drummondville,Yn.Granby],cost:4},{nodes:[Yn.Roberval,Yn.Shawinigan],cost:25},{nodes:[Yn.Jonquiere,Yn.Stsimeon],cost:16},{nodes:[Yn.Roberval,Yn.Jonquiere],cost:10},{nodes:[Yn.Jonquiere,Yn.Alma],cost:4},{nodes:[Yn.Alma,Yn.Chicoutimi],cost:4},{nodes:[Yn.Jonquiere,Yn.Chicoutimi],cost:0},{nodes:[Yn.Chicoutimi,Yn.Baiecomeau],cost:23},{nodes:[Yn.Stsimeon,Yn.Baiecomeau],cost:23},{nodes:[Yn.Baiecomeau,Yn.Portcartier],cost:16},{nodes:[Yn.Septiles,Yn.Portcartier],cost:6},{nodes:[Yn.Riviereduloup,Yn.Rimouski],cost:12},{nodes:[Yn.Rimouski,Yn.Matane],cost:11},{nodes:[Yn.Matane,Yn.Pointealacroix],cost:15},{nodes:[Yn.Matane,Yn.Steannedesmonts],cost:10},{nodes:[Yn.Pointealacroix,Yn.Steannedesmonts],cost:16},{nodes:[Yn.Steannedesmonts,Yn.Gaspe],cost:21},{nodes:[Yn.Gaspe,Yn.Pointealacroix],cost:25}],layout:"Portrait",adjustRatio:[.25,.35],mapPosition:[-20,75],resupply:[[[3,3,3],[4,4,3],[5,4,4],[5,5,5],[7,6,6]],[[2,2,3],[2,3,3],[3,4,4],[4,5,4],[5,6,5]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[21,21,6,2],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){var i=a.filter((function(e){return[13,18,22].includes(e.number)})),s=a.filter((function(e){return(e.type==ve.Wind||e.type==ve.Nuclear)&&![13,18,22].includes(e.number)})),c=a.filter((function(e){return e.type!=ve.Wind&&e.type!=ve.Nuclear}));a=c.slice(8),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)];var u=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(s),a=De(a,t()+""),a=i.concat(a),a.push(u)}else{var l=a.pop(),d=a.filter((function(e){return e.number>=3&&e.number<=10})),f=a.filter((function(e){return 13==e.number})),p=a.filter((function(e){return 18==e.number||22==e.number})),h=a.filter((function(e){return![13,18,22].includes(e.number)&&(e.type==ve.Wind||e.type==ve.Nuclear)})),g=a.filter((function(e){return e.type!=ve.Wind&&e.number>=11&&e.number<=15})),y=a.filter((function(e){return e.type!=ve.Wind&&e.type!=ve.Nuclear&&e.number>=16}));2==e?(g=De(g,t()+"").slice(1),y=De(y,t()+"").slice(5)):3==e?(g=De(g,t()+"").slice(2),y=De(y,t()+"").slice(6)):4==e&&(g=De(g,t()+"").slice(1),y=De(y,t()+"").slice(3));var m=De(d.concat(f).concat(g),t()+""),v=m.splice(0,8);v=v.sort((function(e,n){return e.number-n.number})),r=v.splice(0,4),o=v;var b=m.splice(0,1);a=m.concat(h).concat(y),a=De(a,t()+""),a=b.concat(p).concat(a).concat([l])}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Put power plants 13, 18, 22 on top of the deck. Ecological power plants will never be put on the bottom of the deck."};(function(e){e["Green"]="green",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple",e["Brown"]="brown"})(Vn||(Vn={})),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"}(Jn||(Jn={}));var qn,Zn,Xn={name:"Russia",cities:[{name:Jn.Murmansk,region:Vn.Green,x:1574,y:351},{name:Jn.Arkhangelsk,region:Vn.Green,x:1456,y:695},{name:Jn.Syktyvkar,region:Vn.Green,x:1669,y:1005},{name:Jn.Kirov,region:Vn.Green,x:1457,y:1172},{name:Jn.Kazan,region:Vn.Green,x:1378,y:1478},{name:Jn.Cheboksary,region:Vn.Green,x:1200,y:1328},{name:Jn.Ulyanovsk,region:Vn.Green,x:884,y:1448},{name:Jn.Tula,region:Vn.Pink,x:485,y:1077},{name:Jn.Kaliningrad,region:Vn.Pink,x:394,y:606},{name:Jn.Ryazan,region:Vn.Pink,x:793,y:1193},{name:Jn.Nizhnynovgorod,region:Vn.Pink,x:1129,y:1116},{name:Jn.Moscow,region:Vn.Pink,x:763,y:961},{name:Jn.Stpetersburg,region:Vn.Pink,x:883,y:597},{name:Jn.Yaroslavl,region:Vn.Pink,x:1018,y:915},{name:Jn.Chita,region:Vn.Red,x:4168,y:2048},{name:Jn.Bratsk,region:Vn.Red,x:3599,y:1808},{name:Jn.Krasnoyarsk,region:Vn.Red,x:3230,y:1930},{name:Jn.Kemerovd,region:Vn.Red,x:2953,y:1987},{name:Jn.Novokuznetsk,region:Vn.Red,x:3041,y:2159},{name:Jn.Irkutsk,region:Vn.Red,x:3721,y:2162},{name:Jn.Ulanude,region:Vn.Red,x:4030,y:2228},{name:Jn.Norilsk,region:Vn.Yellow,x:3001,y:856},{name:Jn.Surgut,region:Vn.Yellow,x:2348,y:1411},{name:Jn.Tyumen,region:Vn.Yellow,x:2060,y:1627},{name:Jn.Tomsk,region:Vn.Yellow,x:2773,y:1835},{name:Jn.Novosibirsk,region:Vn.Yellow,x:2647,y:2005},{name:Jn.Barnaul,region:Vn.Yellow,x:2662,y:2191},{name:Jn.Omsk,region:Vn.Yellow,x:2195,y:1957},{name:Jn.Chelyabinsk,region:Vn.Purple,x:1768,y:1865},{name:Jn.Ufa,region:Vn.Purple,x:1472,y:1907},{name:Jn.Perm,region:Vn.Purple,x:1688,y:1388},{name:Jn.Yekaterinburg,region:Vn.Purple,x:1757,y:1620},{name:Jn.Orenburg,region:Vn.Purple,x:1250,y:1997},{name:Jn.Naberezhnyechelny,region:Vn.Purple,x:1427,y:1709},{name:Jn.Samara,region:Vn.Purple,x:1132,y:1701},{name:Jn.Astrakhan,region:Vn.Brown,x:619,y:2092},{name:Jn.Makhachkala,region:Vn.Brown,x:317,y:2262},{name:Jn.Saratov,region:Vn.Brown,x:808,y:1661},{name:Jn.Volgograd,region:Vn.Brown,x:589,y:1795},{name:Jn.Krasnodar,region:Vn.Brown,x:260,y:1865},{name:Jn.Rostov,region:Vn.Brown,x:311,y:1658},{name:Jn.Voronezh,region:Vn.Brown,x:485,y:1409}],connections:[{nodes:[Jn.Kaliningrad,Jn.Stpetersburg],cost:15},{nodes:[Jn.Stpetersburg,Jn.Murmansk],cost:19},{nodes:[Jn.Murmansk,Jn.Arkhangelsk],cost:15},{nodes:[Jn.Arkhangelsk,Jn.Stpetersburg],cost:14},{nodes:[Jn.Tula,Jn.Kaliningrad],cost:20},{nodes:[Jn.Tula,Jn.Moscow],cost:3},{nodes:[Jn.Moscow,Jn.Ryazan],cost:3},{nodes:[Jn.Ryazan,Jn.Voronezh],cost:5},{nodes:[Jn.Voronezh,Jn.Tula],cost:5},{nodes:[Jn.Tula,Jn.Stpetersburg],cost:13},{nodes:[Jn.Tula,Jn.Ryazan],cost:0},{nodes:[Jn.Stpetersburg,Jn.Moscow],cost:10},{nodes:[Jn.Moscow,Jn.Yaroslavl],cost:3},{nodes:[Jn.Yaroslavl,Jn.Nizhnynovgorod],cost:4},{nodes:[Jn.Nizhnynovgorod,Jn.Moscow],cost:7},{nodes:[Jn.Yaroslavl,Jn.Stpetersburg],cost:9},{nodes:[Jn.Yaroslavl,Jn.Arkhangelsk],cost:12},{nodes:[Jn.Arkhangelsk,Jn.Syktyvkar],cost:10},{nodes:[Jn.Syktyvkar,Jn.Surgut],cost:21},{nodes:[Jn.Perm,Jn.Syktyvkar],cost:8},{nodes:[Jn.Syktyvkar,Jn.Kirov],cost:6},{nodes:[Jn.Syktyvkar,Jn.Nizhnynovgorod],cost:11},{nodes:[Jn.Nizhnynovgorod,Jn.Arkhangelsk],cost:15},{nodes:[Jn.Nizhnynovgorod,Jn.Cheboksary],cost:3},{nodes:[Jn.Cheboksary,Jn.Ulyanovsk],cost:4},{nodes:[Jn.Ulyanovsk,Jn.Voronezh],cost:11},{nodes:[Jn.Voronezh,Jn.Volgograd],cost:8},{nodes:[Jn.Volgograd,Jn.Saratov],cost:6},{nodes:[Jn.Saratov,Jn.Samara],cost:5},{nodes:[Jn.Samara,Jn.Ulyanovsk],cost:3},{nodes:[Jn.Ulyanovsk,Jn.Kazan],cost:3},{nodes:[Jn.Kazan,Jn.Samara],cost:4},{nodes:[Jn.Samara,Jn.Naberezhnyechelny],cost:5},{nodes:[Jn.Cheboksary,Jn.Kazan],cost:2},{nodes:[Jn.Cheboksary,Jn.Kirov],cost:5},{nodes:[Jn.Kirov,Jn.Kazan],cost:5},{nodes:[Jn.Kazan,Jn.Perm],cost:8},{nodes:[Jn.Kazan,Jn.Naberezhnyechelny],cost:3},{nodes:[Jn.Naberezhnyechelny,Jn.Ufa],cost:4},{nodes:[Jn.Ufa,Jn.Orenburg],cost:6},{nodes:[Jn.Orenburg,Jn.Samara],cost:6},{nodes:[Jn.Orenburg,Jn.Naberezhnyechelny],cost:7},{nodes:[Jn.Ufa,Jn.Chelyabinsk],cost:8},{nodes:[Jn.Chelyabinsk,Jn.Yekaterinburg],cost:3},{nodes:[Jn.Yekaterinburg,Jn.Perm],cost:5},{nodes:[Jn.Perm,Jn.Kirov],cost:6},{nodes:[Jn.Chelyabinsk,Jn.Tyumen],cost:5},{nodes:[Jn.Tyumen,Jn.Surgut],cost:10},{nodes:[Jn.Syktyvkar,Jn.Tyumen],cost:17},{nodes:[Jn.Tyumen,Jn.Yekaterinburg],cost:5},{nodes:[Jn.Chelyabinsk,Jn.Omsk],cost:13},{nodes:[Jn.Omsk,Jn.Tyumen],cost:9},{nodes:[Jn.Tyumen,Jn.Tomsk],cost:19},{nodes:[Jn.Tomsk,Jn.Surgut],cost:15},{nodes:[Jn.Tomsk,Jn.Novosibirsk],cost:4},{nodes:[Jn.Novosibirsk,Jn.Barnaul],cost:4},{nodes:[Jn.Barnaul,Jn.Omsk],cost:11},{nodes:[Jn.Omsk,Jn.Novosibirsk],cost:10},{nodes:[Jn.Omsk,Jn.Tomsk],cost:12},{nodes:[Jn.Rostov,Jn.Krasnodar],cost:4},{nodes:[Jn.Krasnodar,Jn.Volgograd],cost:9},{nodes:[Jn.Volgograd,Jn.Astrakhan],cost:6},{nodes:[Jn.Krasnodar,Jn.Makhachkala],cost:14},{nodes:[Jn.Makhachkala,Jn.Astrakhan],cost:8},{nodes:[Jn.Makhachkala,Jn.Volgograd],cost:11},{nodes:[Jn.Rostov,Jn.Volgograd],cost:7},{nodes:[Jn.Ryazan,Jn.Ulyanovsk],cost:9},{nodes:[Jn.Ulyanovsk,Jn.Saratov],cost:6},{nodes:[Jn.Saratov,Jn.Voronezh],cost:8},{nodes:[Jn.Rostov,Jn.Voronezh],cost:9},{nodes:[Jn.Naberezhnyechelny,Jn.Perm],cost:6},{nodes:[Jn.Naberezhnyechelny,Jn.Yekaterinburg],cost:8},{nodes:[Jn.Ufa,Jn.Yekaterinburg],cost:6},{nodes:[Jn.Chita,Jn.Ulanude],cost:6},{nodes:[Jn.Ulanude,Jn.Irkutsk],cost:6},{nodes:[Jn.Irkutsk,Jn.Novokuznetsk],cost:21},{nodes:[Jn.Novokuznetsk,Jn.Kemerovd],cost:3},{nodes:[Jn.Kemerovd,Jn.Tomsk],cost:3},{nodes:[Jn.Novosibirsk,Jn.Novokuznetsk],cost:5},{nodes:[Jn.Novosibirsk,Jn.Kemerovd],cost:4},{nodes:[Jn.Novokuznetsk,Jn.Barnaul],cost:6},{nodes:[Jn.Kemerovd,Jn.Krasnoyarsk],cost:7},{nodes:[Jn.Krasnoyarsk,Jn.Novokuznetsk],cost:7},{nodes:[Jn.Krasnoyarsk,Jn.Irkutsk],cost:17},{nodes:[Jn.Krasnoyarsk,Jn.Bratsk],cost:10},{nodes:[Jn.Bratsk,Jn.Tomsk],cost:17},{nodes:[Jn.Bratsk,Jn.Irkutsk],cost:10},{nodes:[Jn.Bratsk,Jn.Ulanude],cost:14},{nodes:[Jn.Tomsk,Jn.Norilsk],cost:24},{nodes:[Jn.Norilsk,Jn.Bratsk],cost:29},{nodes:[Jn.Norilsk,Jn.Surgut],cost:19}],adjustRatio:[.25,.25],resupply:[[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[3,4,3],[3,4,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,3],[2,2,3],[3,3,4],[4,3,5],[4,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[18,24,0,7],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ve),o=[],a=[],i=r.pop();if("original"==n){o=r.filter((function(e){return e.number>=3&&e.number<=5})),a=r.filter((function(e){return e.number>=7&&e.number<=9}));var s=Yt(10),c=Yt(11),u=Yt(13),l=r.filter((function(e){return 12==e.number||e.number>=15})),d=De(l,t()+"");2==e||3==e?d=d.slice(8):4==e&&(d=d.slice(4));var f=d.slice(0,3).concat(s,c);f=De(f,t()+""),r=[u].concat(f,d.slice(3),i)}else{var p=r.filter((function(e){return e.number<=15&&6!=e.number&&14!=e.number})),h=De(p,t()+""),g=r.filter((function(e){return e.number>=16})),y=De(g,t()+"");2==e?y=y.slice(6):3==e?y=y.slice(8):4==e&&(y=y.slice(4));var m=h.slice(0,6),v=h.slice(6);m=m.sort((function(e,n){return e.number-n.number})),o=m.slice(0,3),a=m.slice(3),r=v.concat(y,i)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:r}},mapSpecificRules:"The power plant market is restricted, and the rules for removing old plants are changed."};(function(e){e["Orange"]="orange",e["Green"]="green",e["Yellow"]="yellow",e["Brown"]="brown",e["Red"]="red"})(qn||(qn={})),function(e){e["Zimbabwe"]="Zimbabwe",e["Musina"]="Musina",e["Botswana"]="Botswana",e["Polokwane"]="Polokwane",e["PretoriaN"]="Pretoria N",e["PretoriaS"]="Pretoria S",e["Rustenburg"]="Rustenburg",e["Mozambique"]="Mozambique",e["Mbombela"]="Mbombela",e["Eswatini"]="Eswatini",e["Germiston"]="Germiston",e["JohannesburgN"]="Johannesburg N",e["JohannesburgS"]="Johannesburg S",e["Ladysmith"]="Ladysmith",e["Newcastle"]="Newcastle",e["Pietermaritzburg"]="Pietermaritzburg",e["DurbanN"]="Durban N",e["DurbanS"]="Durban S",e["Mthatha"]="Mthatha",e["Lesotho"]="Lesotho",e["Bloemfontein"]="Bloemfontein",e["Klerksdorp"]="Klerksdorp",e["Welkom"]="Welkom",e["Kuruman"]="Kuruman",e["Kimberly"]="Kimberly",e["Upington"]="Upington",e["Springbok"]="Springbok",e["Namibia"]="Namibia",e["DeAar"]="De Aar",e["BeaufortWest"]="Beaufort West",e["EastLondon"]="East London",e["PortElizabeth"]="Port Elizabeth",e["George"]="George",e["CapeTownN"]="Cape Town N",e["CapeTownS"]="Cape Town S"}(Zn||(Zn={}));var Qn,et,nt={name:"South Africa",cities:[{name:Zn.Zimbabwe,region:qn.Orange,x:903,y:50,singleOccupancy:!0},{name:Zn.Musina,region:qn.Orange,x:874,y:134},{name:Zn.Botswana,region:qn.Orange,x:560,y:187,singleOccupancy:!0},{name:Zn.Polokwane,region:qn.Orange,x:802,y:189},{name:Zn.PretoriaN,region:qn.Orange,x:759,y:261},{name:Zn.PretoriaS,region:qn.Orange,x:759,y:291},{name:Zn.Rustenburg,region:qn.Orange,x:632,y:232},{name:Zn.Mozambique,region:qn.Green,x:1011,y:170,singleOccupancy:!0},{name:Zn.Mbombela,region:qn.Green,x:891,y:275},{name:Zn.Eswatini,region:qn.Green,x:926,y:351,singleOccupancy:!0},{name:Zn.Germiston,region:qn.Green,x:836,y:351},{name:Zn.JohannesburgN,region:qn.Green,x:753,y:343},{name:Zn.JohannesburgS,region:qn.Green,x:754,y:371},{name:Zn.Ladysmith,region:qn.Green,x:823,y:456},{name:Zn.Newcastle,region:qn.Yellow,x:957,y:478},{name:Zn.Pietermaritzburg,region:qn.Yellow,x:851,y:511},{name:Zn.DurbanN,region:qn.Yellow,x:894,y:563},{name:Zn.DurbanS,region:qn.Yellow,x:893,y:592},{name:Zn.Mthatha,region:qn.Yellow,x:791,y:663},{name:Zn.Lesotho,region:qn.Yellow,x:759,y:523,singleOccupancy:!0},{name:Zn.Bloemfontein,region:qn.Yellow,x:656,y:509},{name:Zn.Klerksdorp,region:qn.Brown,x:660,y:362},{name:Zn.Welkom,region:qn.Brown,x:652,y:431},{name:Zn.Kuruman,region:qn.Brown,x:499,y:386},{name:Zn.Kimberly,region:qn.Brown,x:564,y:496},{name:Zn.Upington,region:qn.Brown,x:378,y:453},{name:Zn.Springbok,region:qn.Brown,x:211,y:530},{name:Zn.Namibia,region:qn.Brown,x:189,y:311,singleOccupancy:!0},{name:Zn.DeAar,region:qn.Red,x:539,y:665},{name:Zn.BeaufortWest,region:qn.Red,x:427,y:705},{name:Zn.EastLondon,region:qn.Red,x:722,y:750},{name:Zn.PortElizabeth,region:qn.Red,x:600,y:811},{name:Zn.George,region:qn.Red,x:439,y:811},{name:Zn.CapeTownN,region:qn.Red,x:233,y:783},{name:Zn.CapeTownS,region:qn.Red,x:231,y:812}],connections:[{nodes:[Zn.Springbok,Zn.Namibia],cost:30},{nodes:[Zn.Bloemfontein,Zn.Lesotho],cost:30},{nodes:[Zn.Germiston,Zn.Eswatini],cost:30},{nodes:[Zn.Mbombela,Zn.Mozambique],cost:30},{nodes:[Zn.Botswana,Zn.Rustenburg],cost:30},{nodes:[Zn.Zimbabwe,Zn.Musina],cost:30},{nodes:[Zn.CapeTownS,Zn.CapeTownN],cost:0},{nodes:[Zn.CapeTownS,Zn.George],cost:16},{nodes:[Zn.George,Zn.PortElizabeth],cost:12},{nodes:[Zn.PortElizabeth,Zn.EastLondon],cost:13},{nodes:[Zn.EastLondon,Zn.Mthatha],cost:8},{nodes:[Zn.Mthatha,Zn.DurbanS],cost:13},{nodes:[Zn.DurbanS,Zn.DurbanN],cost:0},{nodes:[Zn.DurbanN,Zn.Pietermaritzburg],cost:3},{nodes:[Zn.DurbanN,Zn.Newcastle],cost:9},{nodes:[Zn.Newcastle,Zn.Pietermaritzburg],cost:9},{nodes:[Zn.Pietermaritzburg,Zn.Ladysmith],cost:5},{nodes:[Zn.Ladysmith,Zn.Newcastle],cost:10},{nodes:[Zn.Bloemfontein,Zn.Mthatha],cost:18},{nodes:[Zn.Bloemfontein,Zn.EastLondon],cost:22},{nodes:[Zn.EastLondon,Zn.DeAar],cost:22},{nodes:[Zn.DeAar,Zn.PortElizabeth],cost:18},{nodes:[Zn.George,Zn.DeAar],cost:17},{nodes:[Zn.DeAar,Zn.BeaufortWest],cost:10},{nodes:[Zn.BeaufortWest,Zn.George],cost:8},{nodes:[Zn.BeaufortWest,Zn.CapeTownN],cost:22},{nodes:[Zn.CapeTownN,Zn.Springbok],cost:22},{nodes:[Zn.Springbok,Zn.BeaufortWest],cost:24},{nodes:[Zn.DeAar,Zn.Springbok],cost:26},{nodes:[Zn.Springbok,Zn.Upington],cost:16},{nodes:[Zn.Upington,Zn.DeAar],cost:16},{nodes:[Zn.DeAar,Zn.Bloemfontein],cost:13},{nodes:[Zn.Bloemfontein,Zn.Kimberly],cost:6},{nodes:[Zn.Kimberly,Zn.DeAar],cost:10},{nodes:[Zn.Kimberly,Zn.Upington],cost:14},{nodes:[Zn.Kimberly,Zn.Welkom],cost:9},{nodes:[Zn.Welkom,Zn.Bloemfontein],cost:6},{nodes:[Zn.Bloemfontein,Zn.Ladysmith],cost:19},{nodes:[Zn.Mthatha,Zn.Pietermaritzburg],cost:12},{nodes:[Zn.Upington,Zn.Kuruman],cost:11},{nodes:[Zn.Musina,Zn.Polokwane],cost:8},{nodes:[Zn.Polokwane,Zn.PretoriaN],cost:11},{nodes:[Zn.PretoriaN,Zn.PretoriaS],cost:0},{nodes:[Zn.PretoriaS,Zn.JohannesburgN],cost:2},{nodes:[Zn.JohannesburgN,Zn.JohannesburgS],cost:0},{nodes:[Zn.JohannesburgS,Zn.Germiston],cost:1},{nodes:[Zn.JohannesburgN,Zn.Mbombela],cost:13},{nodes:[Zn.Mbombela,Zn.Germiston],cost:13},{nodes:[Zn.PretoriaN,Zn.Mbombela],cost:13},{nodes:[Zn.Mbombela,Zn.Polokwane],cost:10},{nodes:[Zn.Musina,Zn.Mbombela],cost:15},{nodes:[Zn.PretoriaN,Zn.Rustenburg],cost:4},{nodes:[Zn.Rustenburg,Zn.JohannesburgN],cost:4},{nodes:[Zn.JohannesburgN,Zn.Klerksdorp],cost:7},{nodes:[Zn.Klerksdorp,Zn.Welkom],cost:5},{nodes:[Zn.Bloemfontein,Zn.JohannesburgS],cost:16},{nodes:[Zn.Kuruman,Zn.Rustenburg],cost:18},{nodes:[Zn.Klerksdorp,Zn.Kuruman],cost:12},{nodes:[Zn.Kuruman,Zn.Kimberly],cost:8},{nodes:[Zn.JohannesburgS,Zn.Ladysmith],cost:13},{nodes:[Zn.Ladysmith,Zn.Germiston],cost:13}],resupply:[[[4,7,5],[4,7,5],[5,8,6],[6,9,7],[7,10,8]],[[1,2,1],[1,2,1],[2,3,2],[2,4,3],[4,5,4]],[[1,3,3],[1,3,3],[2,4,4],[3,4,5],[3,6,6]],[[1,1,2],[1,1,2],[2,2,3],[2,3,3],[2,3,4]]],layout:"Landscape",adjustRatio:[.9,.75],mapPosition:[70,50],mapRotation:0,startingResources:[24,15,12,3],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve).filter((function(e){return 7!==e.number}));if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(8),Yt(9),Yt(10),Yt(11)]}else{var u=De(a.splice(0,12),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Coal storage: there is a separate storage space below the resource market, empty at game start. Coal used to power plants returns to this storage space (not the main supply). The resource-market refill draws coal from storage first, then from the main supply. Players can always buy coal for $8 from the storage space (in addition to the standard market price). Metropolises: Cape Town, Durban, Johannesburg and Pretoria each consist of two cities (N and S) connected by a 0-cost edge. Cross-border connections: the six 30-Elektro connections to neighboring countries (Namibia, Botswana, Zimbabwe, Mozambique, Eswatini, Lesotho) are available from the start of the game. The 30 Elektro is the complete cost — no house-base cost is added on top. Only a single player can build on each cross-border space (cap of 1 instead of the standard 3). Power plant 07 is removed from the deck."};(function(e){e["Pink"]="pink",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Red"]="red",e["Yellow"]="yellow"})(Qn||(Qn={})),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"}(et||(et={}));var tt,rt,ot={name:"Spain & Portugal",cities:[{name:et.Evora,region:Qn.Yellow,x:890,y:1780},{name:et.Faro,region:Qn.Yellow,x:822,y:2348},{name:et.Portimao,region:Qn.Yellow,x:592,y:2218},{name:et.Setubal,region:Qn.Yellow,x:578,y:1864},{name:et.Lisboa,region:Qn.Yellow,x:572,y:1586},{name:et.Porto,region:Qn.Yellow,x:736,y:1052},{name:et.Braga,region:Qn.Yellow,x:990,y:828},{name:et.Gerona,region:Qn.Pink,x:3728,y:666},{name:et.Barcelona,region:Qn.Pink,x:3538,y:848},{name:et.Tarragona,region:Qn.Pink,x:3312,y:970},{name:et.Lerida,region:Qn.Pink,x:3166,y:752},{name:et.Castellondelaplana,region:Qn.Pink,x:3010,y:1284},{name:et.Valencia,region:Qn.Pink,x:2938,y:1580},{name:et.Alicante,region:Qn.Pink,x:2936,y:1922},{name:et.Sansebastian,region:Qn.Brown,x:2498,y:278},{name:et.Pamplona,region:Qn.Brown,x:2648,y:484},{name:et.Zaragoza,region:Qn.Brown,x:2760,y:810},{name:et.Madrid,region:Qn.Brown,x:2088,y:1170},{name:et.Logrono,region:Qn.Brown,x:2310,y:622},{name:et.Bilbao,region:Qn.Brown,x:2264,y:226},{name:et.Santander,region:Qn.Brown,x:2022,y:252},{name:et.Gijon,region:Qn.Green,x:1672,y:190},{name:et.Leon,region:Qn.Green,x:1604,y:518},{name:et.Valladolid,region:Qn.Green,x:1850,y:782},{name:et.Salamanca,region:Qn.Green,x:1564,y:1032},{name:et.Orense,region:Qn.Green,x:1072,y:532},{name:et.Lacoruna,region:Qn.Green,x:982,y:184},{name:et.Santiagodecompostela,region:Qn.Green,x:772,y:394},{name:et.Cuenca,region:Qn.Purple,x:2464,y:1300},{name:et.Albacete,region:Qn.Purple,x:2532,y:1684},{name:et.Murcia,region:Qn.Purple,x:2678,y:2056},{name:et.Toledo,region:Qn.Purple,x:1920,y:1400},{name:et.Ciudadreal,region:Qn.Purple,x:1982,y:1714},{name:et.Caceres,region:Qn.Purple,x:1354,y:1432},{name:et.Merida,region:Qn.Purple,x:1318,y:1764},{name:et.Almeria,region:Qn.Red,x:2402,y:2440},{name:et.Granada,region:Qn.Red,x:2044,y:2272},{name:et.Cordoba,region:Qn.Red,x:1728,y:2074},{name:et.Malaga,region:Qn.Red,x:1782,y:2484},{name:et.Cadiz,region:Qn.Red,x:1290,y:2552},{name:et.Sevilla,region:Qn.Red,x:1390,y:2168},{name:et.Huelva,region:Qn.Red,x:1082,y:2196}],connections:[{nodes:[et.Huelva,et.Faro],cost:6},{nodes:[et.Faro,et.Portimao],cost:4},{nodes:[et.Portimao,et.Setubal],cost:12},{nodes:[et.Setubal,et.Evora],cost:6},{nodes:[et.Evora,et.Merida],cost:9},{nodes:[et.Merida,et.Sevilla],cost:14},{nodes:[et.Sevilla,et.Cadiz],cost:8},{nodes:[et.Cadiz,et.Malaga],cost:12},{nodes:[et.Malaga,et.Granada],cost:7},{nodes:[et.Granada,et.Almeria],cost:9},{nodes:[et.Almeria,et.Murcia],cost:13},{nodes:[et.Murcia,et.Alicante],cost:4},{nodes:[et.Alicante,et.Valencia],cost:9},{nodes:[et.Valencia,et.Castellondelaplana],cost:4},{nodes:[et.Albacete,et.Almeria],cost:19},{nodes:[et.Albacete,et.Murcia],cost:10},{nodes:[et.Albacete,et.Alicante],cost:11},{nodes:[et.Albacete,et.Valencia],cost:11},{nodes:[et.Albacete,et.Cuenca],cost:8},{nodes:[et.Albacete,et.Ciudadreal],cost:13},{nodes:[et.Albacete,et.Granada],cost:19},{nodes:[et.Albacete,et.Toledo],cost:14},{nodes:[et.Toledo,et.Madrid],cost:6},{nodes:[et.Madrid,et.Cuenca],cost:11},{nodes:[et.Cuenca,et.Valencia],cost:13},{nodes:[et.Cuenca,et.Castellondelaplana],cost:14},{nodes:[et.Castellondelaplana,et.Tarragona],cost:12},{nodes:[et.Toledo,et.Caceres],cost:16},{nodes:[et.Caceres,et.Merida],cost:4},{nodes:[et.Merida,et.Ciudadreal],cost:16},{nodes:[et.Ciudadreal,et.Granada],cost:16},{nodes:[et.Granada,et.Cordoba],cost:11},{nodes:[et.Cordoba,et.Malaga],cost:11},{nodes:[et.Malaga,et.Sevilla],cost:12},{nodes:[et.Sevilla,et.Cordoba],cost:8},{nodes:[et.Cordoba,et.Ciudadreal],cost:10},{nodes:[et.Merida,et.Cordoba],cost:14},{nodes:[et.Huelva,et.Cadiz],cost:9},{nodes:[et.Huelva,et.Sevilla],cost:6},{nodes:[et.Merida,et.Huelva],cost:15},{nodes:[et.Huelva,et.Evora],cost:12},{nodes:[et.Evora,et.Faro],cost:13},{nodes:[et.Faro,et.Setubal],cost:14},{nodes:[et.Setubal,et.Lisboa],cost:4},{nodes:[et.Lisboa,et.Evora],cost:9},{nodes:[et.Lisboa,et.Merida],cost:16},{nodes:[et.Caceres,et.Ciudadreal],cost:16},{nodes:[et.Toledo,et.Cuenca],cost:13},{nodes:[et.Salamanca,et.Toledo],cost:14},{nodes:[et.Salamanca,et.Madrid],cost:14},{nodes:[et.Salamanca,et.Caceres],cost:13},{nodes:[et.Porto,et.Lisboa],cost:18},{nodes:[et.Porto,et.Salamanca],cost:19},{nodes:[et.Porto,et.Caceres],cost:21},{nodes:[et.Caceres,et.Lisboa],cost:19},{nodes:[et.Ciudadreal,et.Toledo],cost:7},{nodes:[et.Braga,et.Porto],cost:3},{nodes:[et.Braga,et.Salamanca],cost:19},{nodes:[et.Salamanca,et.Valladolid],cost:7},{nodes:[et.Valladolid,et.Madrid],cost:13},{nodes:[et.Madrid,et.Zaragoza],cost:19},{nodes:[et.Zaragoza,et.Lerida],cost:8},{nodes:[et.Lerida,et.Tarragona],cost:6},{nodes:[et.Tarragona,et.Barcelona],cost:6},{nodes:[et.Lerida,et.Castellondelaplana],cost:13},{nodes:[et.Castellondelaplana,et.Zaragoza],cost:15},{nodes:[et.Zaragoza,et.Cuenca],cost:16},{nodes:[et.Braga,et.Valladolid],cost:24},{nodes:[et.Lerida,et.Barcelona],cost:10},{nodes:[et.Barcelona,et.Gerona],cost:6},{nodes:[et.Gerona,et.Lerida],cost:13},{nodes:[et.Lerida,et.Pamplona],cost:17},{nodes:[et.Pamplona,et.Zaragoza],cost:11},{nodes:[et.Zaragoza,et.Logrono],cost:11},{nodes:[et.Logrono,et.Madrid],cost:18},{nodes:[et.Santiagodecompostela,et.Braga],cost:11},{nodes:[et.Braga,et.Orense],cost:9},{nodes:[et.Orense,et.Santiagodecompostela],cost:7},{nodes:[et.Santiagodecompostela,et.Lacoruna],cost:4},{nodes:[et.Lacoruna,et.Gijon],cost:9},{nodes:[et.Gijon,et.Santander],cost:11},{nodes:[et.Santander,et.Bilbao],cost:6},{nodes:[et.Bilbao,et.Sansebastian],cost:5},{nodes:[et.Sansebastian,et.Pamplona],cost:6},{nodes:[et.Pamplona,et.Logrono],cost:7},{nodes:[et.Logrono,et.Sansebastian],cost:9},{nodes:[et.Bilbao,et.Logrono],cost:9},{nodes:[et.Logrono,et.Santander],cost:13},{nodes:[et.Santander,et.Valladolid],cost:16},{nodes:[et.Valladolid,et.Logrono],cost:15},{nodes:[et.Leon,et.Santander],cost:13},{nodes:[et.Gijon,et.Leon],cost:9},{nodes:[et.Leon,et.Valladolid],cost:9},{nodes:[et.Valladolid,et.Orense],cost:22},{nodes:[et.Orense,et.Leon],cost:14},{nodes:[et.Gijon,et.Orense],cost:10},{nodes:[et.Orense,et.Lacoruna],cost:6}],layout:"Portrait",adjustRatio:[.315,.315],mapPosition:[-135,60],resupply:[[[3,4,2],[4,5,2],[4,6,3],[4,7,3],[6,8,4]],[[2,3,5],[2,4,5],[3,5,6],[4,6,7],[5,7,9]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[0,2,1],[0,2,1],[0,4,1],[0,5,1],[0,5,2]]],startingResources:[24,18,9,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if(a=a.filter((function(e){return![18,22,27].includes(e.number)})),"original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var c=De(a.splice(0,13),t()+""),u=c.splice(0,8);u=u.sort((function(e,n){return e.number-n.number})),r=u.slice(0,4),o=u.slice(4);var l=c.shift(),d=a.pop();a=De(a,t()+""),2==e?(c=c.slice(1),a=De(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=De(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=De(a.slice(3).concat(c),t()+"")):a=De(a.concat(c),t()+""),a.unshift(l),a.push(d)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Remove power plants 18, 22 and 27 from the deck. Place them on top of the deck at the start of Step 2.\nYou cannot buy a nuclear power plant if you only have cities in Portugal."};(function(e){e["Red"]="red",e["Pink"]="pink",e["Yellow"]="yellow",e["Brown"]="brown",e["Orange"]="orange",e["Green"]="green"})(tt||(tt={})),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"}(rt||(rt={}));var at={name:"UK & Ireland",cities:[{name:rt.Norwich,region:tt.Red,island:"gb",x:646,y:702},{name:rt.London1,region:tt.Red,island:"gb",x:554,y:756},{name:rt.London2,region:tt.Red,island:"gb",x:550,y:780},{name:rt.Brighton,region:tt.Red,island:"gb",x:537,y:837},{name:rt.Southampton,region:tt.Red,island:"gb",x:451,y:805},{name:rt.Plymouth,region:tt.Red,island:"gb",x:312,y:814},{name:rt.Leicester,region:tt.Red,island:"gb",x:540,y:680},{name:rt.Bristol,region:tt.Red,island:"gb",x:425,y:762},{name:rt.Newcastleupontyne,region:tt.Pink,island:"gb",x:550,y:414},{name:rt.Leeds,region:tt.Pink,island:"gb",x:559,y:541},{name:rt.Sheffield,region:tt.Pink,island:"gb",x:530,y:590},{name:rt.Nottingham,region:tt.Pink,island:"gb",x:531,y:632},{name:rt.Birmingham,region:tt.Pink,island:"gb",x:465,y:663},{name:rt.Manchester,region:tt.Pink,island:"gb",x:479,y:543},{name:rt.Liverpool,region:tt.Pink,island:"gb",x:433,y:576},{name:rt.Newportcasnewydd,region:tt.Yellow,island:"gb",x:425,y:722},{name:rt.Bangor,region:tt.Yellow,island:"gb",x:348,y:574},{name:rt.Aberystwyth,region:tt.Yellow,island:"gb",x:357,y:639},{name:rt.Swanseaabertawe,region:tt.Yellow,island:"gb",x:346,y:706},{name:rt.Cardiffcaerdydd,region:tt.Yellow,island:"gb",x:357,y:741},{name:rt.Haverfordwesthwlffordd,region:tt.Yellow,island:"gb",x:303,y:673},{name:rt.Invernessinbhirnis,region:tt.Brown,island:"gb",x:479,y:208},{name:rt.Aberdeenobardheathain,region:tt.Brown,island:"gb",x:588,y:245},{name:rt.Dundeedundeach,region:tt.Brown,island:"gb",x:552,y:286},{name:rt.Perthpeairt,region:tt.Brown,island:"gb",x:489,y:307},{name:rt.Edinburgh,region:tt.Brown,island:"gb",x:494,y:350},{name:rt.Dumfries,region:tt.Brown,island:"gb",x:441,y:417},{name:rt.Glasgow,region:tt.Brown,island:"gb",x:422,y:335},{name:rt.Coleraine,region:tt.Orange,island:"ie",x:330,y:367},{name:rt.Derry,region:tt.Orange,island:"ie",x:256,y:362},{name:rt.Belfast,region:tt.Orange,island:"ie",x:342,y:421},{name:rt.Newry,region:tt.Orange,island:"ie",x:298,y:462},{name:rt.Omagh,region:tt.Orange,island:"ie",x:260,y:403},{name:rt.Sligo,region:tt.Green,island:"ie",x:181,y:411},{name:rt.Dublin,region:tt.Green,island:"ie",x:274,y:530},{name:rt.Waterford,region:tt.Green,island:"ie",x:210,y:611},{name:rt.Cork,region:tt.Green,island:"ie",x:114,y:626},{name:rt.Athlone,region:tt.Green,island:"ie",x:200,y:489},{name:rt.Galway,region:tt.Green,island:"ie",x:112,y:486},{name:rt.Limerick,region:tt.Green,island:"ie",x:122,y:546}],connections:[{nodes:[rt.Nottingham,rt.Leicester],cost:4},{nodes:[rt.London1,rt.London2],cost:0},{nodes:[rt.London2,rt.Brighton],cost:6},{nodes:[rt.Brighton,rt.Southampton],cost:7},{nodes:[rt.Southampton,rt.Plymouth],cost:19},{nodes:[rt.Plymouth,rt.Bristol],cost:14},{nodes:[rt.Bristol,rt.Newportcasnewydd],cost:7},{nodes:[rt.Cardiffcaerdydd,rt.Swanseaabertawe],cost:7},{nodes:[rt.Swanseaabertawe,rt.Newportcasnewydd],cost:8},{nodes:[rt.Newportcasnewydd,rt.Cardiffcaerdydd],cost:3},{nodes:[rt.Bristol,rt.Southampton],cost:11},{nodes:[rt.Southampton,rt.London2],cost:9},{nodes:[rt.London2,rt.Bristol],cost:14},{nodes:[rt.London1,rt.Newportcasnewydd],cost:16},{nodes:[rt.Haverfordwesthwlffordd,rt.Aberystwyth],cost:9},{nodes:[rt.Haverfordwesthwlffordd,rt.Swanseaabertawe],cost:8},{nodes:[rt.Swanseaabertawe,rt.Aberystwyth],cost:11},{nodes:[rt.Aberystwyth,rt.Bangor],cost:11},{nodes:[rt.Bangor,rt.Liverpool],cost:9},{nodes:[rt.Liverpool,rt.Aberystwyth],cost:16},{nodes:[rt.Aberystwyth,rt.Newportcasnewydd],cost:14},{nodes:[rt.Aberystwyth,rt.Birmingham],cost:16},{nodes:[rt.Birmingham,rt.Liverpool],cost:12},{nodes:[rt.Birmingham,rt.Newportcasnewydd],cost:9},{nodes:[rt.London1,rt.Norwich],cost:11},{nodes:[rt.Norwich,rt.Leicester],cost:12},{nodes:[rt.Leicester,rt.London1],cost:10},{nodes:[rt.London1,rt.Birmingham],cost:13},{nodes:[rt.Birmingham,rt.Leicester],cost:6},{nodes:[rt.Birmingham,rt.Nottingham],cost:7},{nodes:[rt.Nottingham,rt.Sheffield],cost:6},{nodes:[rt.Sheffield,rt.Leeds],cost:5},{nodes:[rt.Leeds,rt.Manchester],cost:8},{nodes:[rt.Manchester,rt.Sheffield],cost:8},{nodes:[rt.Sheffield,rt.Liverpool],cost:12},{nodes:[rt.Liverpool,rt.Nottingham],cost:15},{nodes:[rt.Manchester,rt.Dumfries],cost:18},{nodes:[rt.Manchester,rt.Newcastleupontyne],cost:15},{nodes:[rt.Newcastleupontyne,rt.Dumfries],cost:12},{nodes:[rt.Dumfries,rt.Edinburgh],cost:12},{nodes:[rt.Edinburgh,rt.Newcastleupontyne],cost:13},{nodes:[rt.Newcastleupontyne,rt.Leeds],cost:13},{nodes:[rt.Dumfries,rt.Glasgow],cost:11},{nodes:[rt.Glasgow,rt.Edinburgh],cost:7},{nodes:[rt.Glasgow,rt.Perthpeairt],cost:10},{nodes:[rt.Perthpeairt,rt.Dundeedundeach],cost:3},{nodes:[rt.Glasgow,rt.Invernessinbhirnis],cost:20},{nodes:[rt.Invernessinbhirnis,rt.Perthpeairt],cost:14},{nodes:[rt.Invernessinbhirnis,rt.Dundeedundeach],cost:14},{nodes:[rt.Invernessinbhirnis,rt.Aberdeenobardheathain],cost:15},{nodes:[rt.Aberdeenobardheathain,rt.Dundeedundeach],cost:10},{nodes:[rt.Limerick,rt.Cork],cost:12},{nodes:[rt.Cork,rt.Waterford],cost:8},{nodes:[rt.Waterford,rt.Limerick],cost:11},{nodes:[rt.Limerick,rt.Galway],cost:10},{nodes:[rt.Galway,rt.Sligo],cost:10},{nodes:[rt.Sligo,rt.Derry],cost:10},{nodes:[rt.Derry,rt.Coleraine],cost:6},{nodes:[rt.Coleraine,rt.Belfast],cost:8},{nodes:[rt.Belfast,rt.Newry],cost:6},{nodes:[rt.Newry,rt.Dublin],cost:10},{nodes:[rt.Dublin,rt.Waterford],cost:13},{nodes:[rt.Galway,rt.Athlone],cost:8},{nodes:[rt.Athlone,rt.Sligo],cost:9},{nodes:[rt.Athlone,rt.Limerick],cost:9},{nodes:[rt.Limerick,rt.Dublin],cost:16},{nodes:[rt.Dublin,rt.Athlone],cost:9},{nodes:[rt.Athlone,rt.Newry],cost:12},{nodes:[rt.Athlone,rt.Omagh],cost:14},{nodes:[rt.Omagh,rt.Newry],cost:8},{nodes:[rt.Omagh,rt.Belfast],cost:10},{nodes:[rt.Belfast,rt.Derry],cost:10},{nodes:[rt.Omagh,rt.Derry],cost:5},{nodes:[rt.Omagh,rt.Sligo],cost:10}],layout:"Portrait",adjustRatio:[1.1,1.1],mapPosition:[10,-75],mapRotation:0,resupply:[[[3,4,3],[3,5,3],[4,6,4],[4,7,5],[6,8,6]],[[2,3,2],[2,4,2],[3,5,3],[4,6,4],[5,7,5]],[[1,2,2],[1,2,2],[2,3,3],[3,3,5],[3,5,5]],[[1,1,1],[1,2,1],[1,3,1],[2,4,2],[2,4,3]]],startingResources:[24,18,12,0],startingSupply:[24,24,24,12],crossIslandSurcharge:20,setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.splice(a.length-2,0,c),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var u=De(a.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.splice(a.length-2,0,f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Two networks: Ireland (Green and Orange regions) and Great Britain (Red, Pink, Yellow, Brown) have no sea connection. A player may run one network on each island. Starting a second network on the other island costs an extra 20 Elektro on top of the normal first-house cost. Nuclear restriction: a player whose network is entirely in the Republic of Ireland (Green region) cannot bid on or auction a nuclear power plant until they build a city in Scotland, Wales, England, or Northern Ireland. Early Step 3: the Step 3 card is placed 3rd from last in the deck (two plants below it). Step 2 begins when a player connects their 7th city (6th for 6 players)."},it=[Ye,kn,sn,ot,bn,Mn,Rn,$n,En,pn,rn,Xn,ln,en,Hn,zn,yn,Wn,nt,at,Ze,On],st=[He,_n,sn,ot,bn,Mn,Rn,$n,En,pn,rn,Xn,ln,en,Hn,zn,yn,Wn,nt,at,Ze,jn];const ct=Math.pow(2,-52),ut=new Uint32Array(512);class lt{static from(e,n=wt,t=xt){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 lt(o)}constructor(e){const n=e.length>>1;if(n>0&&"number"!==typeof e[0])throw new Error("Expected coords to contain numbers.");this.coords=e;const t=Math.max(2*n-5,0);this._triangles=new Uint32Array(3*t),this._halfedges=new Int32Array(3*t),this._hashSize=Math.ceil(Math.sqrt(n)),this._hullPrev=new Uint32Array(n),this._hullNext=new Uint32Array(n),this._hullTri=new Uint32Array(n),this._hullHash=new Int32Array(this._hashSize).fill(-1),this._ids=new Uint32Array(n),this._dists=new Float64Array(n),this.update()}update(){const{coords:e,_hullPrev:n,_hullNext:t,_hullTri:r,_hullHash:o}=this,a=e.length>>1;let i=1/0,s=1/0,c=-1/0,u=-1/0;for(let S=0;S<a;S++){const n=e[2*S],t=e[2*S+1];n<i&&(i=n),t<s&&(s=t),n>c&&(c=n),t>u&&(u=t),this._ids[S]=S}const l=(i+c)/2,d=(s+u)/2;let f,p,h,g=1/0;for(let S=0;S<a;S++){const n=ft(l,d,e[2*S],e[2*S+1]);n<g&&(f=S,g=n)}const y=e[2*f],m=e[2*f+1];g=1/0;for(let S=0;S<a;S++){if(S===f)continue;const n=ft(y,m,e[2*S],e[2*S+1]);n<g&&n>0&&(p=S,g=n)}let v=e[2*p],b=e[2*p+1],w=1/0;for(let S=0;S<a;S++){if(S===f||S===p)continue;const n=yt(y,m,v,b,e[2*S],e[2*S+1]);n<w&&(h=S,w=n)}let x=e[2*h],k=e[2*h+1];if(w===1/0){for(let r=0;r<a;r++)this._dists[r]=e[2*r]-e[0]||e[2*r+1]-e[1];vt(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(ht(y,m,v,b,x,k)){const e=p,n=v,t=b;p=h,v=x,b=k,h=e,x=n,k=t}const _=mt(y,m,v,b,x,k);this._cx=_.x,this._cy=_.y;for(let S=0;S<a;S++)this._dists[S]=ft(e[2*S],e[2*S+1],_.x,_.y);vt(this._ids,this._dists,0,a-1),this._hullStart=f;let P=3;t[f]=n[h]=p,t[p]=n[f]=h,t[h]=n[p]=f,r[f]=0,r[p]=1,r[h]=2,o.fill(-1),o[this._hashKey(y,m)]=f,o[this._hashKey(v,b)]=p,o[this._hashKey(x,k)]=h,this.trianglesLen=0,this._addTriangle(f,p,h,-1,-1,-1);for(let S,M,C=0;C<this._ids.length;C++){const a=this._ids[C],i=e[2*a],s=e[2*a+1];if(C>0&&Math.abs(i-S)<=ct&&Math.abs(s-M)<=ct)continue;if(S=i,M=s,a===f||a===p||a===h)continue;let c=0;for(let e=0,n=this._hashKey(i,s);e<this._hashSize;e++)if(c=o[(n+e)%this._hashSize],-1!==c&&c!==t[c])break;c=n[c];let u,l=c;while(u=t[l],!ht(i,s,e[2*l],e[2*l+1],e[2*u],e[2*u+1]))if(l=u,l===c){l=-1;break}if(-1===l)continue;let d=this._addTriangle(l,a,t[l],-1,-1,r[l]);r[a]=this._legalize(d+2),r[l]=d,P++;let g=t[l];while(u=t[g],ht(i,s,e[2*g],e[2*g+1],e[2*u],e[2*u+1]))d=this._addTriangle(g,a,u,r[a],-1,r[g]),r[a]=this._legalize(d+2),t[g]=g,P--,g=u;if(l===c)while(u=n[l],ht(i,s,e[2*u],e[2*u+1],e[2*l],e[2*l+1]))d=this._addTriangle(u,a,l,-1,r[l],r[u]),this._legalize(d+2),r[u]=d,t[l]=l,P--,l=u;this._hullStart=n[a]=l,t[l]=n[g]=a,t[a]=g,o[this._hashKey(i,s)]=a,o[this._hashKey(e[2*l],e[2*l+1])]=l}this.hull=new Uint32Array(P);for(let S=0,M=this._hullStart;S<P;S++)this.hull[S]=M,M=t[M];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(e,n){return Math.floor(dt(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=ut[--o];continue}const c=i-i%3,u=s+(e+1)%3,l=c+(i+2)%3,d=n[a],f=n[e],p=n[u],h=n[l],g=gt(r[2*d],r[2*d+1],r[2*f],r[2*f+1],r[2*p],r[2*p+1],r[2*h],r[2*h+1]);if(g){n[e]=h,n[i]=d;const r=t[l];if(-1===r){let n=this._hullStart;do{if(this._hullTri[n]===l){this._hullTri[n]=e;break}n=this._hullPrev[n]}while(n!==this._hullStart)}this._link(e,r),this._link(i,t[a]),this._link(a,l);const s=c+(i+1)%3;o<ut.length&&(ut[o++]=s)}else{if(0===o)break;e=ut[--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 dt(e,n){const t=e/(Math.abs(e)+Math.abs(n));return(n>0?3-t:1+t)/4}function ft(e,n,t,r){const o=e-t,a=n-r;return o*o+a*a}function pt(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 ht(e,n,t,r,o,a){const i=pt(o,a,e,n,t,r)||pt(e,n,t,r,o,a)||pt(t,r,o,a,e,n);return i<0}function gt(e,n,t,r,o,a,i,s){const c=e-i,u=n-s,l=t-i,d=r-s,f=o-i,p=a-s,h=c*c+u*u,g=l*l+d*d,y=f*f+p*p;return c*(d*y-g*p)-u*(l*y-g*f)+h*(l*p-d*f)<0}function yt(e,n,t,r,o,a){const i=t-e,s=r-n,c=o-e,u=a-n,l=i*i+s*s,d=c*c+u*u,f=.5/(i*u-s*c),p=(u*l-s*d)*f,h=(i*d-c*l)*f;return p*p+h*h}function mt(e,n,t,r,o,a){const i=t-e,s=r-n,c=o-e,u=a-n,l=i*i+s*s,d=c*c+u*u,f=.5/(i*u-s*c),p=e+(u*l-s*d)*f,h=n+(i*d-c*l)*f;return{x:p,y:h}}function vt(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?(vt(e,n,a,r),vt(e,n,t,i-1)):(vt(e,n,t,i-1),vt(e,n,a,r))}}function bt(e,n,t){const r=e[n];e[n]=e[t],e[t]=r}function wt(e){return e[0]}function xt(e){return e[1]}function kt(e,n,t){var r=_(new Set(e.cities.map((function(e){return e.region})))),o=Array(7*n).fill(0).map((function(e){return{name:"",region:"",x:0,y:0}})),a=[420,490,490],i=[490,560,700],s=a[n-3],c=i[n-3],u=70,l=Math.ceil(s/u),d=Math.ceil(c/u),f=l*d,p=Array(f).fill(-1);e.mapPosition=[100,200],e.layout="Portrait";var h=Array(f).fill(0).map((function(e,n){return n}));o.forEach((function(e,n){var r=h[Math.floor(t()*h.length)],o=Math.floor(r/l),a=r%l;e.x=Math.floor(2*a*u),e.y=Math.floor(o*u),o%2===0&&(e.x+=u);var i=2*t()*Math.PI,s=t()*u/2;e.x+=s*Math.cos(i),e.y+=s*Math.sin(i),h=h.filter((function(e){return e!==r})),p[r]=n}));for(var g=Array(o.length).fill(0).map((function(e){return Array(o.length).fill(0)})),y=Array(o.length).fill(0).map((function(e){return Array(o.length).fill(null)})),m=lt.from(o,(function(e){return e.x}),(function(e){return e.y})),v=0;v<m.triangles.length;v+=3){var b=o[m.triangles[v]],w=o[m.triangles[v+1]],x=o[m.triangles[v+2]],k=g[m.triangles[v]][m.triangles[v+1]],P=k?Math.pow(k,2):Math.pow(b.x-w.x,2)+Math.pow(b.y-w.y,2),S=k||(g[m.triangles[v+1]][m.triangles[v]]=g[m.triangles[v]][m.triangles[v+1]]=Math.sqrt(P));k=g[m.triangles[v]][m.triangles[v+2]];var M=k?Math.pow(k,2):Math.pow(b.x-x.x,2)+Math.pow(b.y-x.y,2),C=k||(g[m.triangles[v+2]][m.triangles[v]]=g[m.triangles[v]][m.triangles[v+2]]=Math.sqrt(M));k=g[m.triangles[v+1]][m.triangles[v+2]];var B=k?Math.pow(k,2):Math.pow(w.x-x.x,2)+Math.pow(w.y-x.y,2),R=k||(g[m.triangles[v+2]][m.triangles[v+1]]=g[m.triangles[v+1]][m.triangles[v+2]]=Math.sqrt(B)),A=Math.acos((P+M-B)/(2*S*C)),L=Math.acos((P+B-M)/(2*S*R)),O=Math.PI-A-L,j=105*Math.PI/180;!1!==y[m.triangles[v]][m.triangles[v+1]]&&O<j?(y[m.triangles[v]][m.triangles[v+1]]=!0,y[m.triangles[v+1]][m.triangles[v]]=!0):(y[m.triangles[v]][m.triangles[v+1]]=!1,y[m.triangles[v+1]][m.triangles[v]]=!1),!1!==y[m.triangles[v]][m.triangles[v+2]]&&L<j?(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<j?(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 G=0,D=1e3,z=0;z<o.length;z++)for(var N=0;N<z;N++)if(y[z][N]){var T=g[z][N];G=Math.max(G,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=_t(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 F=0;F<W;F++)if(y[W][F]){var Y=o[W],H=o[F],V=g[W][F];U.push({nodes:[Y.name,H.name],cost:Math.floor(5*V/u)})}return e.cities=o,e.connections=U,e}function _t(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=Pt(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=Pt(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 Pt(e,n){return(e[0]-n[0])*(e[0]-n[0])+(e[1]-n[1])*(e[1]-n[1])}var St=["limegreen","mediumorchid","red","dodgerblue","yellow","brown"],Mt=[10,7,7,7,6],Ct=[9,6,6,6,5],Bt=[10,7,7,7,6],Rt=[21,17,17,15,14],At=[18,17,17,15,14],Lt=[10,22,33,44,54,64,73,82,90,98,105,112,118,124,129,134,138,142,145,148,150,150],Ot=[3,3,4,5,5];function jt(e,n,t,r){var o,a,i=Object(we["cloneDeep"])(Ve);if("original"==n){i=i.slice(8);var s=i.splice(2,1)[0],c=i.pop();i=De(i,t()+""),2==e||3==e?i=i.slice(8):4==e&&(i=i.slice(4)),i.unshift(s),i.push(c),o=[Yt(3),Yt(4),Yt(5),Yt(6)],a=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var u=De(i.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),o=l.slice(0,4),a=l.slice(4);var d=u.shift(),f=i.pop();i=De(i,t()+""),2==e?(u=u.slice(1),i=De(i.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),i=De(i.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),i=De(i.slice(3).concat(u),t()+"")):r&&(i=De(i.concat(u),t()+"")),i.unshift(d),i.push(f)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:i}}function Gt(e,n,t,r,o){var a,i,s,u,l,d,f,p,h=n.fastBid,g=void 0!==h&&h,y=n.map,m=void 0===y?"USA":y,v=n.variant,b=void 0===v?"original":v,w=n.showMoney,x=void 0!==w&&w,k=n.useNewRechargedSetup,_=void 0===k||k,S=n.trackTotalSpent,M=void 0===S||S,C=n.randomizeMap,B=void 0!==C&&C;t=null!==(a=t)&&void 0!==a?a:Math.random().toString();var R=Oe()(t),A="original"==b?it.find((function(e){return e.name==m})):st.find((function(e){return e.name==m}));if(!A)throw new Error('Map "'.concat(m,'" not found for variant "').concat(b,'"'));var L,O,j,G=Object(we["cloneDeep"])(A);if(r)j=r,L=j.splice(0,4),O=j.splice(0,4);else if(G.setupDeck){var D=G.setupDeck(e,b,R);L=D.actualMarket,O=D.futureMarket,j=D.powerPlantsDeck}else{var z=jt(e,b,R,_);L=z.actualMarket,O=z.futureMarket,j=z.powerPlantsDeck}var N,T,E,K,I,U,W,F,Y=Object(we["range"])(e).map((function(e){return{id:e,powerPlants:[],coalCapacity:0,coalLeft:0,oilCapacity:0,oilLeft:0,garbageCapacity:0,garbageLeft:0,uraniumCapacity:0,uraniumLeft:0,hybridCapacity:0,hybridLeft:0,money:50,housesLeft:22,cities:[],powerPlantsNotUsed:[],availableMoves:null,lastMove:null,isDropped:!1,isAI:!1,bid:0,passed:!1,skipAuction:!1,citiesPowered:0,resourcesUsed:[],totalIncome:0,totalSpentCities:0,totalSpentConnections:0,totalSpentPlants:0,totalSpentResources:0,usedFreeJump:!1}})),H=Y.length-2,V=Object(we["range"])(e),J=V[0];if(G.resupplyNorth&&(I=G.resupplyNorth[0],U=G.resupplyNorth[1],W=G.resupplyNorth[2]),G.resupply?(N=G.resupply[0],T=G.resupply[1],E=G.resupply[2],K=G.resupply[3]):(N=[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],T=[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],E=[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],K=[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]),"Portrait"==G.layout||B){var $="USA"===G.name&&"recharged"===b;G.viewBox=G.viewBox||[1480,1060],G.adjustRatio=G.adjustRatio||[1,1],G.playerOrderPosition=G.playerOrderPosition||[1160,160],G.cityCountPosition=G.cityCountPosition||[0,0],G.powerPlantMarketPosition=G.powerPlantMarketPosition||[745,0],G.actualMarketWidth=G.actualMarketWidth||430,G.mapPosition=G.mapPosition||[0,0],G.buttonsPosition=G.buttonsPosition||[1305,0],G.playerBoardsPosition=G.playerBoardsPosition||[1105,240],G.roundInfoPosition=G.roundInfoPosition||[20,920],G.supplyPosition=G.supplyPosition||[$?480:675,920]}else G.viewBox=G.viewBox||[1465,860],G.adjustRatio=G.adjustRatio||[1,1],G.playerOrderPosition=G.playerOrderPosition||[1160,140],G.cityCountPosition=G.cityCountPosition||[0,0],G.powerPlantMarketPosition=G.powerPlantMarketPosition||[745,0],G.actualMarketWidth=G.actualMarketWidth||430,G.mapPosition=G.mapPosition||[-10,0],G.buttonsPosition=G.buttonsPosition||[1305,0],G.playerBoardsPosition=G.playerBoardsPosition||[1105,200],G.roundInfoPosition=G.roundInfoPosition||[20,590],G.supplyPosition=G.supplyPosition||[0,720];B?F=kt(G,Ot[H],R):function(){G.cities=G.cities.map((function(e){return c(c({},e),{},{x:e.x*G.adjustRatio[0],y:e.y*G.adjustRatio[1]})}));var e=G.cities.filter((function(e,n){return G.cities.findIndex((function(n){return n.region==e.region}))==n})).map((function(e){return e.region})),n=G.connections.map((function(e){return e.nodes.map((function(e){return G.cities.find((function(n){return n.name==e})).region}))})),t=e.map((function(t){return e.filter((function(e){return t!=e&&n.some((function(n){return n.includes(t)&&n.includes(e)}))}))})),r=new Set;while(r.size!=Math.min(Ot[H],e.length)){var o=e[Math.floor(R()*e.length)];(0==r.size||t[e.indexOf(o)].some((function(e){return r.has(e)}))||"UK & Ireland"===G.name||"Australia"===G.name)&&(r.add(o),"Italy"===G.name&&r.has("red")&&r.has("green")&&r.has("blue")&&r.clear())}var a=Object(we["cloneDeep"])(G);if(a.cities=a.cities.filter((function(e){return r.has(e.region)})),a.connections=a.connections.filter((function(e){return e.nodes.map((function(e){return G.cities.find((function(n){return n.name==e})).region})).every((function(e){return r.has(e)}))})),F=a,G.regionalPowerPlants){var i,s=P(r);try{for(s.s();!(i=s.n()).done;){var u=i.value,l=G.regionalPowerPlants[u];if(l){var d,f=P(l);try{var p=function(){var e=d.value,n=function(n){var t=n.findIndex((function(n){return n.number===e.number}));-1!==t&&(n[t]=c({},e))};n(L),n(O),n(j)};for(f.s();!(d=f.n()).done;)p()}catch(h){f.e(h)}finally{f.f()}}}}catch(h){s.e(h)}finally{s.f()}}}();var q=G.startingResources?G.startingResources[0]:24,Z=G.startingResources?G.startingResources[1]:18,X=G.startingResources?G.startingResources[2]:"original"==b?6:9,Q=G.startingResources?G.startingResources[3]:2,ee=G.startingSupply?G.startingSupply[0]:24,ne=G.startingSupply?G.startingSupply[1]:24,te=G.startingSupply?G.startingSupply[2]:24,re=G.startingSupply?G.startingSupply[3]:12,oe=null===(i=G.startingResourcesNorth)||void 0===i?void 0:i[0],ae=null===(s=G.startingResourcesNorth)||void 0===s?void 0:s[1],ie=null===(u=G.startingResourcesNorth)||void 0===u?void 0:u[2],se=ee-q-(null!==oe&&void 0!==oe?oe:0),ce=ne-Z-(null!==ae&&void 0!==ae?ae:0),ue=te-X-(null!==ie&&void 0!==ie?ie:0),le=re-Q,de=Object(we["cloneDeep"])(null!==(l=G.coalPrices)&&void 0!==l?l:Ae.coal),fe=Object(we["cloneDeep"])(null!==(d=G.oilPrices)&&void 0!==d?d:Ae.oil),pe=Object(we["cloneDeep"])(null!==(f=G.garbagePrices)&&void 0!==f?f:Ae.garbage),he=Object(we["cloneDeep"])(null!==(p=G.uraniumPrices)&&void 0!==p?p:Ae.uranium),ge=G.coalPricesNorth?Object(we["cloneDeep"])(G.coalPricesNorth):void 0,ye=G.oilPricesNorth?Object(we["cloneDeep"])(G.oilPricesNorth):void 0,me=G.garbagePricesNorth?Object(we["cloneDeep"])(G.garbagePricesNorth):void 0,ve="South Africa"==(o||F).name,xe={map:o||F,players:Y,playerOrder:V,currentPlayers:[J],powerPlantsDeck:j,coalSupply:se,oilSupply:ce,garbageSupply:ue,uraniumSupply:le,coalStorage:ve?0:void 0,coalResupply:N,oilResupply:T,garbageResupply:E,uraniumResupply:K,coalMarket:q,oilMarket:Z,garbageMarket:X,uraniumMarket:Q,uraniumMineMarket:"Australia"==(o||F).name?[2,2,2,2,2,2]:void 0,coalPrices:de,oilPrices:fe,garbagePrices:pe,uraniumPrices:he,coalMarketNorth:oe,oilMarketNorth:ae,garbageMarketNorth:ie,coalResupplyNorth:I,oilResupplyNorth:U,garbageResupplyNorth:W,coalPricesNorth:ge,oilPricesNorth:ye,garbagePricesNorth:me,actualMarket:L,futureMarket:O,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:_,trackTotalSpent:M},log:[],hiddenLog:[],seed:t,round:1,auctionSkips:0,citiesToStep2:"Baden-Württemberg"==(o||F).name?Ct[e-2]:"UK & Ireland"==(o||F).name?Bt[e-2]:Mt[e-2],citiesToEndGame:"South Africa"==(o||F).name?At[e-2]:"UK & Ireland"==(o||F).name&&2==e?Math.min(Rt[e-2],(o||F).cities.length):Rt[e-2],resourceResupply:["[".concat(N[H][0],", ").concat(T[H][0],", ").concat(E[H][0],", ").concat(K[H][0],"]"),"[".concat(N[H][1],", ").concat(T[H][1],", ").concat(E[H][1],", ").concat(K[H][1],"]"),"[".concat(N[H][2],", ").concat(T[H][2],", ").concat(E[H][2],", ").concat(K[H][2],"]")],resourceResupplyNorth:I&&U&&W?["[".concat(I[H][0],", ").concat(U[H][0],", ").concat(W[H][0],"]"),"[".concat(I[H][1],", ").concat(U[H][1],", ").concat(W[H][1],"]"),"[".concat(I[H][2],", ").concat(U[H][2],", ").concat(W[H][2],"]")]:void 0,paymentTable:Lt,variant:b,minimunBid:0,plantDiscountActive:"recharged"==b&&"China"!=(o||F).name&&"Russia"!=(o||F).name&&"Baden-Württemberg"!=(o||F).name,discardSmallestPlant:!1,cardsLeft:j.length,nextCardWeak:"recharged"==b,card39Bought:!1,knownPowerPlantDeck:L.concat(O),knownPowerPlantDeckStep3:[],powerPlantDeckAfterStep3:void 0};return xe.log.push({type:"event",event:"Game Start!"}),"Middle East"==xe.map.name&&Kt(xe),xe.players[J].availableMoves=ze(xe,xe.players[J]),xe}function Dt(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(ir(e),Ue()(e.currentPlayers.includes(t),"It is not your turn!"),Ue()(i,"You are not allowed to run the command "+n.name),o&&n.name==_e.DiscardPowerPlant&&a.powerPlants[a.powerPlants.length-1].number==n.data||Ue()(i.some((function(e){return Object(we["isEqual"])(e,n.data)})),"Wrong argument for the command "+n.name),n.name){case _e.ChoosePowerPlant: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(Vt(a)," chooses Power Plant <b>").concat(n.data,"</b>.")});var c=s[0];Qt(e,c,e.minimunBid),1==e.round&&er(e),(ke(e,c)<=3||2==e.players.length&&4==ke(e,c))&&("China"==e.map.name&&3!=e.step||Et(e),Xt(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(Vt(a)," chooses Power Plant <b>").concat(n.data,"</b> to initiate an auction.")}),e.options.fastBid&&(e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].skipAuction&&!e.players[n].isDropped})));break;case _e.Bid:je(n),e.options.fastBid?(e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," bids $").concat(n.data,"."),pretty:"".concat(Vt(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),sr(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(Vt(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),rr(e));break;case _e.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(Vt(a)," passes.")}),e.phase){case be.Auction:var u;if(void 0==e.chosenPowerPlant)if(a.skipAuction=!0,e.auctionSkips++,1==e.auctionSkips&&"Russia"==e.map.name&&(null===(u=e.actualMarket)||void 0===u?void 0:u.length)>0&&(e.log.push({type:"event",event:"First pass, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),Et(e)),e.players.some((function(e){return!e.skipAuction&&!e.isDropped})))ar(e);else{if(e.auctionSkips==e.players.length&&"Baden-Württemberg"==e.map.name){for(var l=[],d=0;d<2&&e.actualMarket.length>0;d++)l.push(e.actualMarket[0].number),e.actualMarket.shift(),Et(e);e.log.push({type:"event",event:"Everyone passed, removing the two lowest numbered Power Plants (".concat(l.join(", "),").")})}else e.auctionSkips==e.players.length&&"original"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&(e.log.push({type:"event",event:"Everyone passed, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),Et(e));Xt(e)}else if(e.options.fastBid)e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," passes."),pretty:"".concat(Vt(a)," passes.")}),sr(e,a,0);else{a.passed=!0;var f=e.players.filter((function(e){return!e.passed&&!e.skipAuction&&!e.isDropped}));if(1==f.length){var p=f[0];Qt(e,p,p.bid),(ke(e,p)>4||e.players.length>2&&ke(e,p)>3)&&!p.isDropped?nr(e,p.id):("China"==e.map.name&&3!=e.step||Et(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),ar(e,!0)):Xt(e))}else rr(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),nr(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,or(e))):or(e),"India"==e.map.name)while(e.players[e.currentPlayers[0]].passed)or(e);break;case be.Building:if(a.passed=!0,0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var h=Math.max.apply(Math,_(e.players.map((function(e){return e.cities.length}))));if(1==e.step){var g=e.players.reduce((function(e,n){return e+n.cities.length}),0),y=g>=e.map.cities.length;if((h>=e.citiesToStep2||y)&&"Middle East"!=e.map.name){var m=e.actualMarket.shift();if(e.log.push({type:"event",event:"Starting Step 2, Power Plant ".concat(null===m||void 0===m?void 0:m.number," discarded.")}),e.step=2,"Spain & Portugal"==e.map.name&&(e.powerPlantsDeck.find((function(e){return 18==e.number}))||(e.powerPlantsDeck.unshift(Yt(27)),e.powerPlantsDeck.unshift(Yt(22)),e.powerPlantsDeck.unshift(Yt(18)))),"Europe"==e.map.name){var v=[].concat(_(e.actualMarket),_(e.futureMarket));v.sort((function(e,n){return e.number-n.number})),e.actualMarket=v.slice(0,4),e.futureMarket=v.slice(4)}else Et(e)}}h>=e.citiesToEndGame?(e.phase=be.GameEnd,e.currentPlayers=[],$t(e),"India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&e.players.forEach((function(n){var t=e.paymentTable[n.citiesPowered]-3*n.cities.length;n.money+=Math.max(t,0),n.totalIncome+=Math.max(t,0)})),e.uraniumMineMarket&&_(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Ce(e,t);if(r.mines>0&&r.income>0){var o,a=null!==(o=t.name)&&void 0!==o?o:"Player ".concat(t.id);e.log.push({type:"event",event:"".concat(a," sells uranium for ").concat(r.income," Elektro (").concat(r.cities," cities × $").concat(r.price,", ").concat(r.mines," mine(s)).")})}})),e.log.push({type:"event",event:"Game Ended!"})):(e.players.forEach((function(e){e.passed=e.isDropped,e.powerPlantsNotUsed=e.powerPlants.map((function(e){return e.number}))})),e.phase=be.Bureaucracy,e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped})),"India"==e.map.name&&(e.players.forEach((function(n){return n.targetCitiesPowered=qt(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?Wt(e):0==e.futureMarket.length&&(e.step=3,Ut(e)))}else or(e);break;case be.Bureaucracy:a.passed=!0;var b=Math.min(a.cities.length,a.citiesPowered),w=e.paymentTable[b];if("India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&(w-=3*a.cities.length,w=Math.max(w,0)),a.money+=w,e.options.trackTotalSpent&&(a.totalIncome+=w),a.citiesPowered=0,"India"==e.map.name&&(a.targetCitiesPowered=0),0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var x,k,P,S,M,C,B,R;if(e.uraniumMineMarket){_(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Ce(e,t);if(r.mines>0){var o,a=null!==(o=t.name)&&void 0!==o?o:"Player ".concat(t.id);e.log.push({type:"event",event:r.income>0?"".concat(a," sells uranium for ").concat(r.income," Elektro (").concat(r.cities," cities × $").concat(r.price,", ").concat(r.mines," mine(s))."):"".concat(a,"'s uranium mines earn nothing (market full).")})}}));var A=Be(e,e.map.uraniumMineResupply[e.players.length-2][e.step-1]);A>0&&e.log.push({type:"event",event:"Removing ".concat(A," uranium from the mine market (cheapest slots).")})}var L,O,j=(null!==(x=null===(k=e.coalPrices)||void 0===k?void 0:k.length)&&void 0!==x?x:Ae[me.Coal].length)-e.coalMarket,G=(null!==(P=null===(S=e.oilPrices)||void 0===S?void 0:S.length)&&void 0!==P?P:Ae[me.Oil].length)-e.oilMarket,D=(null!==(M=null===(C=e.garbagePrices)||void 0===C?void 0:C.length)&&void 0!==M?M:Ae[me.Garbage].length)-e.garbageMarket,z=(null!==(B=null===(R=e.uraniumPrices)||void 0===R?void 0:R.length)&&void 0!==B?B:Ae[me.Uranium].length)-e.uraniumMarket,N=0,T=0,E=0;if(e.coalResupplyNorth){var K=e.coalPricesNorth.length-e.coalMarketNorth,I=e.oilPricesNorth.length-e.oilMarketNorth,U=e.garbagePricesNorth.length-e.garbageMarketNorth;N=Math.min(e.coalSupply,e.coalResupplyNorth[e.players.length-2][e.step-1],K),e.coalMarketNorth+=N,e.coalSupply-=N,T=Math.min(e.oilSupply,e.oilResupplyNorth[e.players.length-2][e.step-1],I),e.oilMarketNorth+=T,e.oilSupply-=T,E=Math.min(e.garbageSupply,e.garbageResupplyNorth[e.players.length-2][e.step-1],U),e.garbageMarketNorth+=E,e.garbageSupply-=E}if(void 0!==e.coalStorage){var W=Math.min(e.coalResupply[e.players.length-2][e.step-1],j),F=Math.min(e.coalStorage,W),Y=Math.min(e.coalSupply,W-F);L=F+Y,e.coalMarket+=L,e.coalStorage-=F,e.coalSupply-=Y}else L=Math.min(e.coalSupply,e.coalResupply[e.players.length-2][e.step-1],j),e.coalMarket+=L,e.coalSupply-=L;if("Middle East"==e.map.name){0==e.oilMarket&&(e.oilPrices=Ae[me.Oil]),O=e.oilResupply[e.players.length-2][e.step-1];for(var H=0;H<O;H++)e.oilSupply>0?(e.oilMarket++,e.oilSupply--):(e.oilPrices.pop(),e.oilPrices.unshift(1))}else O=Math.min(e.oilSupply,e.oilResupply[e.players.length-2][e.step-1],G),e.oilMarket+=O,e.oilSupply-=O;var V=Math.min(e.garbageSupply,e.garbageResupply[e.players.length-2][e.step-1],D);e.garbageMarket+=V,e.garbageSupply-=V;var J=0;if(("recharged"!=e.options.variant||"Germany"!=e.options.map&&"Italy"!=e.options.map||!e.card39Bought)&&(J=Math.min(e.uraniumSupply,e.uraniumResupply[e.players.length-2][e.step-1],z),e.uraniumMarket+=J,e.uraniumSupply-=J),e.coalResupplyNorth?e.log.push({type:"event",event:"Resupplying resources — North: [".concat(N,", ").concat(T,", ").concat(E,"], South: [").concat(L,", ").concat(O,", ").concat(V,", ").concat(J,"].")}):e.log.push({type:"event",event:"Resupplying resources: [".concat(L,", ").concat(O,", ").concat(V,", ").concat(J,"].")}),"Middle East"==e.map.name&&2==e.step&&e.futureMarket.length>0){var $=e.futureMarket.pop();e.log.push({type:"event",event:"Putting Power Plant ".concat($.number," on the bottom of the deck.")}),e.powerPlantsDeck.push($),Et(e),$=e.futureMarket.length?e.futureMarket.pop():e.actualMarket.pop(),e.log.push({type:"event",event:"Putting Power Plant ".concat($.number," on the bottom of the deck.")}),e.powerPlantsDeck.push($),Et(e)}else if(e.futureMarket.length>0){if("Benelux"==e.map.name&&("original"==e.options.variant||e.discardSmallestPlant)){var q=e.actualMarket[0];e.log.push({type:"event",event:"Removing smallest plant, Power Plant ".concat(q.number,".")}),e.actualMarket.shift(),Et(e),e.discardSmallestPlant=!1}var Z;if("Quebec"==e.map.name){var X=e.futureMarket.filter((function(e){return e.type!=ve.Wind}));if(Z=X.pop(),Z)e.futureMarket=e.futureMarket.filter((function(e){var n;return e.number!=(null===(n=Z)||void 0===n?void 0:n.number)}));else{var Q=e.actualMarket.filter((function(e){return e.type!=ve.Wind}));Z=Q.pop(),Z&&(e.actualMarket=e.actualMarket.filter((function(e){var n;return e.number!=(null===(n=Z)||void 0===n?void 0:n.number)})))}}else Z=e.futureMarket.pop();Z&&(e.log.push({type:"event",event:"Putting Power Plant ".concat(Z.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Z),Et(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(),Et(e));e.round++,"Baden-Württemberg"!=e.map.name&&er(e),e.players.forEach((function(e){e.passed=e.isDropped})),e.auctionSkips=0,e.actualMarket.length>0?(e.phase=be.Auction,0==e.futureMarket.length&&"China"!=e.map.name&&(e.step=3,Ut(e)),e.plantDiscountActive="recharged"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name,nr(e,e.playerOrder[0])):Xt(e)}else e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped}));break}break;case _e.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(Vt(a)," discards Power Plant <b>").concat(n.data,"</b>.")});var ee=a.powerPlants.find((function(e){return e.number==n.data}));if(a.powerPlants=a.powerPlants.filter((function(e){return e.number!=n.data})),Tt(a),n.extra){var ne=[];switch(ee.type){case ve.Coal:e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],ne.push(n.extra[0]+" Coal");break;case ve.Oil:e.oilSupply+=n.extra[0],a.oilLeft-=n.extra[0],ne.push(n.extra[0]+" Oil");break;case ve.Garbage:e.garbageSupply+=n.extra[0],a.garbageLeft-=n.extra[0],ne.push(n.extra[0]+" Garbage");break;case ve.Uranium:e.uraniumSupply+=n.extra[0],a.uraniumLeft-=n.extra[0],ne.push(n.extra[0]+" Uranium");break;case ve.Hybrid:n.extra[0]>0&&(e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],ne.push(n.extra[0]+" Coal")),n.extra[1]>0&&(e.oilSupply+=n.extra[1],a.oilLeft-=n.extra[1],ne.push(n.extra[1]+" Oil"));break}e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discards Power Plant ").concat(n.data," and ").concat(ne.join(", "),"."),pretty:"".concat(Vt(a)," discards Power Plant <b>").concat(n.data,"</b> and ").concat(ne.join(", "),".")}),"China"==e.map.name&&3!=e.step||Et(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?ar(e,!0):Xt(e)}else{var te=[],re=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+re&&te.push(me.Coal),re=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+re&&te.push(me.Oil),a.garbageLeft>a.garbageCapacity&&(e.garbageSupply+=a.garbageLeft-a.garbageCapacity,a.garbageLeft=a.garbageCapacity),a.uraniumLeft>a.uraniumCapacity&&(e.uraniumSupply+=a.uraniumLeft-a.uraniumCapacity,a.uraniumLeft=a.uraniumCapacity),1==te.length&&(te[0]==me.Coal?(e.coalSupply+=a.coalLeft-a.coalCapacity,a.coalLeft=a.coalCapacity):te[0]==me.Oil&&(e.oilSupply+=a.oilLeft-a.oilCapacity,a.oilLeft=a.oilCapacity),te.pop()),0==te.length&&("China"==e.map.name&&3!=e.step||Et(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?ar(e,!0):Xt(e))}break;case _e.DiscardResources:je(n),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discarded a ").concat(n.data,"."),pretty:"".concat(Vt(a)," discarded a <b>").concat(n.data,"</b>.")}),n.data==me.Coal?(a.coalLeft--,e.coalSupply++):n.data==me.Oil&&(a.oilLeft--,e.oilSupply++);var oe=[],ae=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+ae&&oe.push(me.Coal),ae=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+ae&&oe.push(me.Oil),1==oe.length&&(oe[0]==me.Coal?a.coalLeft--:oe[0]==me.Oil&&a.oilLeft--,oe.pop()),0==oe.length&&("China"==e.map.name&&3!=e.step||Et(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?ar(e,!0):Xt(e));break;case _e.BuyResource:je(n),e.chosenResource=n.data.resource,n.data.side&&(e.chosenSide=n.data.side);var ie,se="north"===n.data.side;switch(n.data.resource){case me.Coal:if(se){var ce=e.coalPricesNorth;ie=ce[ce.length-e.coalMarketNorth],a.coalLeft++,e.coalMarketNorth--}else if(n.data.fromStorage)ie=8,a.coalLeft++,e.coalStorage--;else if(0==e.coalMarket)ie=8,a.coalLeft++,e.coalSupply--,n.fromSupply=!0;else{var ue,le=null!==(ue=e.coalPrices)&&void 0!==ue?ue:Ae[me.Coal];ie=le[le.length-e.coalMarket],a.coalLeft++,e.coalMarket--}break;case me.Oil:if(se){var de=e.oilPricesNorth;ie=de[de.length-e.oilMarketNorth],a.oilLeft++,e.oilMarketNorth--}else{var fe,pe=null!==(fe=e.oilPrices)&&void 0!==fe?fe:Ae[me.Oil];ie=pe[pe.length-e.oilMarket],a.oilLeft++,e.oilMarket--}break;case me.Garbage:if(se){var he=e.garbagePricesNorth;ie=he[he.length-e.garbageMarketNorth],a.garbageLeft++,e.garbageMarketNorth--}else{var ge,ye=null!==(ge=e.garbagePrices)&&void 0!==ge?ge:Ae[me.Garbage];if(ie=ye[ye.length-e.garbageMarket],"Central Europe"==e.map.name){var xe=a.cities.filter((function(e){return"Wien"==e.name}));(null===xe||void 0===xe?void 0:xe.length)>0&&ie--}a.garbageLeft++,e.garbageMarket--}break;case me.Uranium:var Pe,Se=null!==(Pe=e.uraniumPrices)&&void 0!==Pe?Pe:Ae[me.Uranium];ie=Se[Se.length-e.uraniumMarket],a.uraniumLeft++,e.uraniumMarket--;break}a.money-=ie,e.options.trackTotalSpent&&(a.totalSpentResources+=ie),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," buys ").concat(n.data.resource," for $").concat(ie,"."),pretty:"".concat(Vt(a)," buys <b>").concat(n.data.resource,'</b> for <span style="color: green">$').concat(ie,"</span>.")});break;case _e.Build:je(n);var Me=!1;if("Japan"===e.map.name&&!a.usedFreeJump&&a.cities.length>=1)if(1===e.round&&e.map.startingCities){var Re=new Set(e.map.startingCities);Re.has(n.data.name)&&(Me=!0)}else n.data.freeJump&&(Me=!0);var Le=e.players.filter((function(e){return e.cities.find((function(e){return e.name==n.data.name}))})).length;if(a.cities.push({name:n.data.name,position:Le}),a.money-=n.data.price,e.options.trackTotalSpent){var Oe=e.map.cities.find((function(e){return e.name==n.data.name}));Oe.singleOccupancy?a.totalSpentConnections+=n.data.price:(a.totalSpentCities+=10+5*Le,a.totalSpentConnections+=n.data.price-(10+5*Le))}e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," builds on ").concat(n.data.name," for $").concat(n.data.price,"."),pretty:"".concat(Vt(a)," builds on <b>").concat(n.data.name,'</b> for <span style="color: green">$').concat(n.data.price,"</span>.")}),Me&&(a.usedFreeJump=!0),"India"==e.map.name&&e.citiesBuiltInCurrentRound++,"original"==e.options.variant&&e.actualMarket.length>0&&a.cities.length>=e.actualMarket[0].number&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name&&(e.actualMarket.shift(),Et(e));break;case _e.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(Vt(a)," uses Power Plant <b>").concat(n.data.powerPlant,"</b>.")});break;case _e.Undo:je(n);var Ge=a.lastMove;switch(null===Ge||void 0===Ge?void 0:Ge.name){case _e.ChoosePowerPlant:39==Ge.data&&(e.card39Bought=!1),Ge.usedPlantDiscount&&(e.plantDiscountActive=!0),e.chosenPowerPlant=void 0,e.auctioningPlayer=void 0,e.currentPlayers=[a.id],e.log.pop();break;case _e.BuyResource:var De,Te="north"===Ge.data.side;switch(Ge.data.resource){case me.Coal:if(Te){a.coalLeft--,e.coalMarketNorth++;var Ee=e.coalPricesNorth;De=Ee[Ee.length-e.coalMarketNorth]}else if(Ge.data.fromStorage)De=8,a.coalLeft--,e.coalStorage++;else if(Ge.fromSupply)De=8,a.coalLeft--,e.coalSupply++;else{var Ke;a.coalLeft--,e.coalMarket++;var Ie=null!==(Ke=e.coalPrices)&&void 0!==Ke?Ke:Ae[me.Coal];De=Ie[Ie.length-e.coalMarket]}break;case me.Oil:if(Te){a.oilLeft--,e.oilMarketNorth++;var We=e.oilPricesNorth;De=We[We.length-e.oilMarketNorth]}else{var Fe;a.oilLeft--,e.oilMarket++;var Ye=null!==(Fe=e.oilPrices)&&void 0!==Fe?Fe:Ae[me.Oil];De=Ye[Ye.length-e.oilMarket]}break;case me.Garbage:if(Te){a.garbageLeft--,e.garbageMarketNorth++;var He=e.garbagePricesNorth;De=He[He.length-e.garbageMarketNorth]}else{var Ve;a.garbageLeft--,e.garbageMarket++;var Je=null!==(Ve=e.garbagePrices)&&void 0!==Ve?Ve:Ae[me.Garbage];if(De=Je[Je.length-e.garbageMarket],"Central Europe"==e.map.name){var $e=a.cities.filter((function(e){return"Wien"==e.name}));(null===$e||void 0===$e?void 0:$e.length)>0&&De--}}break;case me.Uranium:var qe;a.uraniumLeft--,e.uraniumMarket++;var Ze=null!==(qe=e.uraniumPrices)&&void 0!==qe?qe:Ae[me.Uranium];De=Ze[Ze.length-e.uraniumMarket];break}if(a.money+=De,e.options.trackTotalSpent&&(a.totalSpentResources-=De),"India"==e.map.name&&(e.chosenResource=void 0),e.log.pop(),"Korea"==e.map.name&&e.chosenSide){for(var Xe=!1,Qe=e.log.length-1;Qe>=0;Qe--){var en=e.log[Qe];if("move"===en.type){Xe=en.player===t&&en.move.name===_e.BuyResource;break}}Xe||(e.chosenSide=void 0)}break;case _e.Build:a.cities.pop(),a.money+=Ge.data.price;var nn=e.players.filter((function(e){return e.cities.find((function(e){return e.name==Ge.data.name}))})).length;if(e.options.trackTotalSpent&&(a.totalSpentCities-=10+5*nn,a.totalSpentConnections-=Ge.data.price-(10+5*nn)),e.log.pop(),"India"==e.map.name&&e.citiesBuiltInCurrentRound--,"Japan"===e.map.name&&a.usedFreeJump){var tn=Ne(e.map.connections,a.cities.map((function(e){return e.name})));tn<2&&(a.usedFreeJump=!1)}break;case _e.UsePowerPlant:a.powerPlantsNotUsed.push(Ge.data.powerPlant),Ge.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-=Ge.data.citiesPowered;var rn=e.log.slice().reverse(),on=e.log.length-rn.findIndex((function(e){return"move"==e.type&&e.player==a.id}))-1;e.log.splice(on,1);break}}if(a.availableMoves=null,n.name==_e.Undo){var an=e.log.slice().reverse(),sn=an.find((function(e){return"move"==e.type&&e.player==a.id}));a.lastMove=null===sn||void 0===sn?void 0:sn.move}else a.lastMove=n;return e.cardsLeft=e.powerPlantsDeck.length,e.nextCardWeak="recharged"==e.options.variant&&e.cardsLeft>0&&e.powerPlantsDeck[0].number<=15,e.currentPlayers.forEach((function(n){return e.players[n].availableMoves=ze(e,e.players[n])})),e}function zt(e){return e.phase==be.GameEnd}function Nt(e,n){var t=Ht(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=P(a);try{for(i.s();!(o=i.n()).done;){var s=o.value;switch(s.type){case"event":if(s.event.endsWith("was dropped")){var c=+s.event.split(" ")[1];r.players[c].isDropped=!0}break;case"move":Dt(r,s.move,s.player,!0);break}}}catch(u){i.e(u)}finally{i.f()}return r}function Tt(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 Et(e){var n=e.powerPlantsDeck.shift();if(n){if(3==e.step?e.knownPowerPlantDeckStep3&&e.knownPowerPlantDeckStep3.push(n):e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(n),"original"==e.options.variant&&"China"!=e.map.name){var t=Math.max.apply(Math,_(e.players.map((function(e){return e.cities.length}))));while(n.number<=t){var r;if(e.log.push({type:"event",event:"Power plant ".concat(null===(r=n)||void 0===r?void 0:r.number," discarded.")}),!(e.powerPlantsDeck.length>0))break;n=e.powerPlantsDeck.shift(),3==e.step?e.knownPowerPlantDeckStep3&&e.knownPowerPlantDeckStep3.push(n):e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(n)}}var o=!1;if(99==n.number){if(e.powerPlantDeckAfterStep3?e.powerPlantsDeck=e.powerPlantDeckAfterStep3:"China"==e.map.name?e.step=3:e.powerPlantsDeck=De(e.powerPlantsDeck,e.seed),e.phase!=be.Auction)if("Middle East"==e.map.name&&1==e.step){var a=[].concat(_(e.actualMarket),_(e.futureMarket),[n]);a.sort((function(e,n){return e.number-n.number})),e.actualMarket=a.slice(0,4),e.futureMarket=a.slice(4),It(e),o=!0}else{"UK & Ireland"==e.map.name&&1==e.step&&(e.log.push({type:"event",event:"Starting Step 2 (Step 3 card drawn before Step 2 threshold)."}),e.step=2);var i=e.actualMarket.shift();e.log.push({type:"event",event:"Step 3 will begin next phase, Power Plant ".concat(null===i||void 0===i?void 0:i.number," discarded.")});var s=[].concat(_(e.actualMarket),_(e.futureMarket));s.sort((function(e,n){return e.number-n.number})),e.actualMarket=s,e.futureMarket=[]}}else{if(e.plantDiscountActive&&n.number<e.actualMarket[0].number)return e.log.push({type:"event",event:"Power Plant ".concat(n.number," drawn from the deck and discarded.")}),e.plantDiscountActive=!1,void Et(e);e.log.push({type:"event",event:"Power Plant ".concat(n.number," drawn from the deck.")})}if("China"==e.map.name&&n.type!=ve.Step3){var c=[].concat(_(e.actualMarket),[n]);c.sort((function(e,n){return e.number-n.number})),e.actualMarket=c}else if(!o){var u=[].concat(_(e.actualMarket),_(e.futureMarket),[n]);u.sort((function(e,n){return e.number-n.number})),0==e.futureMarket.length?"Russia"==e.map.name?(e.actualMarket=u.slice(0,4),e.futureMarket=[]):(e.actualMarket=u.slice(0,6),e.futureMarket=[]):"Russia"==e.map.name?(e.actualMarket=u.slice(0,3),e.futureMarket=u.slice(3)):"Benelux"==e.map.name&&u[4].type==ve.Wind?(e.actualMarket=u.slice(0,5),e.futureMarket=u.slice(5)):(e.actualMarket=u.slice(0,4),e.futureMarket=u.slice(4)),"Middle East"==e.map.name&&1==e.step&&Kt(e)}}}function Kt(e){var n=e.actualMarket.find((function(e){return e.type==ve.Garbage||e.type==ve.Uranium})),t=function(){Ft(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";Et(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 It(e){var n=e.futureMarket.pop();e.powerPlantsDeck=De(e.powerPlantsDeck,e.seed),e.powerPlantsDeck.push(n),Et(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.")}),Et(e));var r=e.actualMarket.shift();r&&(e.log.push({type:"event",event:"Power Plant ".concat(r.number," discarded to start step 2.")}),Et(e))}function Ut(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 Wt(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;Et(e)}while(2==e.players.length&&e.actualMarket.length<2&&3!=e.step)Et(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)Et(e)}else{var i=Math.max(2,e.players.length-1);while(e.actualMarket.length>i)e.actualMarket.shift()}}function Ft(e,n){e.actualMarket.splice(e.actualMarket.findIndex((function(e){return e.number==n.number})),1)}function Yt(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"India"==n?Je.find((function(n){return n.number==e})):Ve.find((function(n){return n.number==e}))}function Ht(e){var n=Gt(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 Vt(e){return'<span style="background-color: '.concat(St[e.id],'; font-weight: bold; padding: 0 3px;">').concat(e.name,"</span>")}function Jt(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 $t(e){e.players.forEach((function(n){n.citiesPowered=qt(e,n)}))}function qt(e,n){for(var t=n.powerPlants.filter((function(n){return!xe(e,n)})),r=[],o=function(e){var n=[];t.forEach((function(t,r){e&Math.pow(2,r)&&n.push(t)})),r.push(n)},a=0;a<Math.pow(2,t.length);a++)o(a);var i=0;return r.forEach((function(e){if(Zt(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 Zt(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 Xt(e){if("Baden-Württemberg"==e.map.name&&er(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.forEach((function(e){e.skipAuction=!1})),"recharged"==e.options.variant&&(e.plantDiscountActive?(e.plantDiscountActive=!1,e.actualMarket.length>0&&(e.log.push({type:"event",event:"Discarding Power Plant ".concat(e.actualMarket[0].number,".")}),e.actualMarket.shift(),Et(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)It(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,Ut(e),e.actualMarket=[].concat(_(e.actualMarket),_(e.futureMarket)),e.futureMarket=[]}e.phase=be.Resources,nr(e,e.playerOrder[e.players.length-1])}function Qt(e,n,t){n.powerPlants.push(e.chosenPowerPlant),n.money-=t,e.options.trackTotalSpent&&(n.totalSpentPlants+=t),n.skipAuction=!0,Tt(n),e.log.push({type:"event",event:"".concat(n.name," wins the bid and pays ").concat(t,"."),pretty:"".concat(Vt(n),' wins the bid and pays <span style="color: green">$').concat(t,"</span>.")}),Ft(e,e.chosenPowerPlant),e.chosenPowerPlant=e.currentBid=void 0}function er(e){e.playerOrder=Object(we["cloneDeep"])(e.players).sort((function(e,n){var t=e.cities.length,r=n.cities.length;return t==r?Math.max.apply(Math,_(e.powerPlants.map((function(e){return e.number}))))-Math.max.apply(Math,_(n.powerPlants.map((function(e){return e.number})))):t-r})).map((function(e){return e.id})).reverse()}function nr(e,n){e.currentPlayers=[n],e.players[n].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[n].passed=!0,tr(e))}function tr(e){e.phase==be.Auction?void 0==e.chosenPowerPlant?ar(e):rr(e):or(e)}function rr(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,rr(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}))&&rr(e)}function or(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,or(e))}function ar(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}))&&ar(e)}function ir(e){if(!e.coalResupply){var n=it.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 sr(e,n,t){if(n.bid=t,e.currentPlayers=e.currentPlayers.filter((function(e){return e!==n.id})),0===e.currentPlayers.length){var r;(r=e.log).push.apply(r,_(e.hiddenLog)),e.hiddenLog=[];var o=e.players.map((function(e){return e.bid})).filter((function(e){return e>0})),a=e.minimunBid,i=Math.max.apply(Math,_(o)),s=e.players.filter((function(e){return!e.isDropped&&e.bid===i})),c=s[0].id;if(o.length>1){o.splice(o.indexOf(i),1);var u=Math.max.apply(Math,_(o));if(s.length>1)(function(){var n=e.auctioningPlayer;while(!s.find((function(e){return e.id==n})))n=(n+1)%e.players.length;a=u,c=n})();else{var l=e.auctioningPlayer;a=0;while(0==a)s[0].id==l?a=u:e.players[l].bid==u&&(a=u+1),l=(l+1)%e.players.length}}var d=e.players[c];Qt(e,d,a),(ke(e,d)>4||e.players.length>2&&ke(e,d)>3)&&!d.isDropped?nr(e,d.id):("China"==e.map.name&&3!=e.step||Et(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),ar(e,!0)):Xt(e))}}var cr,ur=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)])},lr=[];(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"})(cr||(cr={}));var dr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"targetState",void 0),i(B(e),"pieceId",void 0),i(B(e),"transparent",void 0),i(B(e),"communicator",void 0),i(B(e),"ui",void 0),i(B(e),"pieceType",void 0),i(B(e),"currentX",0),i(B(e),"currentY",0),i(B(e),"mounted",!1),i(B(e),"transitioning",!1),i(B(e),"transitionCount",0),i(B(e),"moving",!1),e}return C(t,[{key:"startTransitioning",value:function(){var e=this;if(!this.transitioning){this.ui.waitingAnimations+=1,this.transitioning=!0,this.transitionCount+=1;var n=this.transitionCount;setTimeout((function(){n===e.transitionCount&&e.onTransitionEnd()}),1e3)}}},{key:"onTargetChanged",value:function(e,n){var t=this;this.targetState.x===this.currentX&&this.targetState.y===this.currentY||(!this.transitioning&&this.mounted&&(!n||e?this.startTransitioning():(this.moving=!0,setTimeout((function(){return t.moving=!1}),800))),this.mounted?setTimeout((function(){t.currentX=t.targetState.x,t.currentY=t.targetState.y})):(this.currentX=this.targetState.x,this.currentY=this.targetState.y))}},{key:"onTransitionEnd",value:function(){this.transitioning&&(this.transitioning=!1,this.ui.waitingAnimations=Math.max(this.ui.waitingAnimations-1,0))}},{key:"elId",get:function(){return this.transitioning||this.moving?"moving":void 0}}]),t}(d.a);N([he({default:function(){return{x:0,y:0,rotate:0}}})],dr.prototype,"targetState",void 0),N([he()],dr.prototype,"pieceId",void 0),N([he()],dr.prototype,"transparent",void 0),N([ie()],dr.prototype,"communicator",void 0),N([ie()],dr.prototype,"ui",void 0),N([ge("dragging"),ge("targetState",{immediate:!0})],dr.prototype,"onTargetChanged",null),dr=N([oe({created:function(){},mounted:function(){this.mounted=!0},beforeDestroy:function(){this.onTransitionEnd()}})],dr);var fr,pr,hr=dr,gr=hr;function yr(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 mr=yr(gr,fr,pr,!1,null,null,null),vr=mr.exports,br=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"owner",void 0),i(B(e),"powerPlant",void 0),i(B(e),"canClick",void 0),i(B(e),"hasDiscount",void 0),e}return C(t,[{key:"getColor",value:function(){var e;switch(null===(e=this.powerPlant)||void 0===e?void 0:e.type){case ve.Coal:return"#8b4513";case ve.Oil:return"#445";case ve.Garbage:return"goldenrod";case ve.Uranium:return"red";case ve.Hybrid:return"url(#hybrid)";case ve.Wind:return"limegreen";case ve.Nuclear:return"dodgerblue";case ve.Step3:return"dodgerblue"}}},{key:"getResourcePath",value:function(){var e;switch(null===(e=this.powerPlant)||void 0===e?void 0:e.type){case ve.Coal:return"M0,3 L7.5,0 L15,3 L15,12 L7.5,15 L0,12Z";case ve.Oil:return"M3,2 A6,3 0 0,1 12,2 L12,12 A6,3 0 0,1 3,12Z";case ve.Garbage:return"M0,3 A7.5,3 0 0,1 15,3 L15,12 A7.5,3 0 0,1 0,12Z";case ve.Uranium:return"M1,2 l4,-2 l6,0 l4,2 l0,11 l-4,2 l-6,0 l-4,-2Z";case ve.Hybrid:return"M0,3 L7.5,0 L15,3 L15,12 L7.5,15 L0,12Z M9,1 A6,3 0 0,1 18,1 L18,10 A6,3 0 0,1 10,10Z";case ve.Wind:return"";case ve.Nuclear:return"";case ve.Step3:return""}}}]),t}(q(vr));N([he()],br.prototype,"owner",void 0),N([he()],br.prototype,"powerPlant",void 0),N([he()],br.prototype,"canClick",void 0),N([he({default:!1})],br.prototype,"hasDiscount",void 0),br=N([oe({created:function(){this.pieceType=cr.Card}})],br);var wr=br,xr=wr,kr=(t("11ac"),yr(xr,ur,lr,!1,null,null,null)),_r=kr.exports,Pr=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")])])},Sr=[],Mr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(vr));N([he()],Mr.prototype,"canClick",void 0),N([he({default:.08})],Mr.prototype,"scale",void 0),Mr=N([oe({created:function(){this.pieceType=cr.Coal}})],Mr);var Cr=Mr,Br=Cr,Rr=yr(Br,Pr,Sr,!1,null,null,null),Ar=Rr.exports,Lr=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)])},Or=[],jr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(vr));N([he()],jr.prototype,"canClick",void 0),N([he({default:1})],jr.prototype,"scale",void 0),jr=N([oe({created:function(){this.pieceType=cr.Garbage}})],jr);var Gr=jr,Dr=Gr,zr=yr(Dr,Lr,Or,!1,null,null,null),Nr=zr.exports,Tr=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:["piece"],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale(0.035)"}},[t("path",{attrs:{d:"M187.698 263.636V456.017L3 341.204V169.522L80.8579 108.141L187.698 263.636Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361V300.164L187.698 456.017V263.636L395.724 136.361Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361L187.698 263.636L80.8579 108.141L304.771 4L395.724 136.361Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("title",[e._v(e._s(e.ownerName)+"'s House")])])},Er=[],Kr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"player",void 0),i(B(e),"color",void 0),i(B(e),"owner",void 0),i(B(e),"ownerName",void 0),e}return t}(q(vr));N([se()],Kr.prototype,"player",void 0),N([he()],Kr.prototype,"color",void 0),N([he()],Kr.prototype,"owner",void 0),N([he()],Kr.prototype,"ownerName",void 0),Kr=N([oe({created:function(){this.pieceType=cr.House}})],Kr);var Ir=Kr,Ur=Ir,Wr=yr(Ur,Tr,Er,!1,null,null,null),Fr=Wr.exports,Yr=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")])])},Hr=[],Vr=function(e){A(t,e);var n=z(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(q(vr));Vr=N([oe({created:function(){this.pieceType=cr.Hybrid}})],Vr);var Jr=Vr,$r=Jr,qr=yr($r,Yr,Hr,!1,null,null,null),Zr=(qr.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)])}),Xr=[],Qr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(vr));N([he()],Qr.prototype,"canClick",void 0),N([he({default:1})],Qr.prototype,"scale",void 0),Qr=N([oe({created:function(){this.pieceType=cr.Oil}})],Qr);var eo=Qr,no=eo,to=yr(no,Zr,Xr,!1,null,null,null),ro=to.exports,oo=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")])])},ao=[],io=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),e}return t}(q(vr));N([he()],io.prototype,"canClick",void 0),io=N([oe({created:function(){this.pieceType=cr.Uranium}})],io);var so=io,co=so,uo=yr(co,oo,ao,!1,null,null,null),lo=uo.exports,fo=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))])])},po=[],ho=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"text",void 0),i(B(e),"width",void 0),i(B(e),"enabled",void 0),e}return C(t,[{key:"getText",value:function(){var e;return this.text.length>15?null===(e=this.text)||void 0===e?void 0:e.substring(0,12).concat("..."):this.text}}]),t}(d.a);N([he()],ho.prototype,"text",void 0),N([he()],ho.prototype,"width",void 0),N([he({default:!0})],ho.prototype,"enabled",void 0),ho=N([oe],ho);var go=ho,yo=go,mo=yr(yo,fo,po,!1,null,null,null),vo=mo.exports,bo=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")])])},wo=[],xo=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"isOn",void 0),e}return t}(d.a);N([he()],xo.prototype,"isOn",void 0),xo=N([oe],xo);var ko=xo,_o=ko,Po=yr(_o,bo,wo,!1,null,null,null),So=Po.exports,Mo=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")])])},Co=[],Bo=function(e){A(t,e);var n=z(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(d.a);Bo=N([oe],Bo);var Ro=Bo,Ao=Ro,Lo=yr(Ao,Mo,Co,!1,null,null,null),Oo=Lo.exports,jo=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")])])},Go=[],Do=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"enabled",void 0),i(B(e),"highlightButton",void 0),i(B(e),"text",void 0),e}return t}(d.a);N([he()],Do.prototype,"enabled",void 0),N([he()],Do.prototype,"highlightButton",void 0),N([he()],Do.prototype,"text",void 0),Do=N([oe],Do);var zo=Do,No=zo,To=yr(No,jo,Go,!1,null,null,null),Eo=To.exports,Ko=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")])])},Io=[],Uo=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"isOn",void 0),e}return t}(d.a);N([he()],Uo.prototype,"isOn",void 0),Uo=N([oe],Uo);var Wo=Uo,Fo=Wo,Yo=yr(Fo,Ko,Io,!1,null,null,null),Ho=Yo.exports,Vo=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")])])},Jo=[],$o=function(e){A(t,e);var n=z(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(d.a);$o=N([oe],$o);var qo=$o,Zo=qo,Xo=yr(Zo,Vo,Jo,!1,null,null,null),Qo=Xo.exports,ea=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")])])},na=[],ta=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"enabled",void 0),i(B(e),"highlightButton",void 0),e}return t}(d.a);N([he()],ta.prototype,"enabled",void 0),N([he()],ta.prototype,"highlightButton",void 0),ta=N([oe],ta);var ra=ta,oa=ra,aa=yr(oa,ea,na,!1,null,null,null),ia=aa.exports,sa=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)},ca=[],ua=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"color",void 0),i(B(e),"avatar",void 0),i(B(e),"player",void 0),i(B(e),"isCurrentPlayer",void 0),i(B(e),"owner",void 0),i(B(e),"ended",void 0),i(B(e),"isPlayer",void 0),i(B(e),"ranking",void 0),i(B(e),"showMoney",void 0),i(B(e),"showBid",void 0),i(B(e),"phase",void 0),i(B(e),"isAustralia",void 0),i(B(e),"preferences",void 0),i(B(e),"powerPlantClicked",void 0),e}return C(t,[{key:"cardX",value:function(e){var n=this.player.powerPlants.length;return n<5?20+80*e:5+Math.min(70,280/(n-1))*e}},{key:"isMine",value:function(e){return!0===this.isAustralia&&e.type===ve.Uranium}},{key:"getPlayerName",value:function(){var e="";if(this.isCurrentPlayer&&(e+="• "),e+=this.player.name,this.ended)switch(this.ranking){case 1:e+=" (1st)";break;case 2:e+=" (2nd)";break;case 3:e+=" (3rd)";break;case 4:case 5:case 6:e+=" (".concat(this.ranking,"th)");break}else this.player.skipAuction?e+=" (Skipping)":this.player.passed?e+=" (Passed)":this.player.bid&&!this.isCurrentPlayer&&this.showBid&&(e+=" (Bid: $"+this.player.bid+")");return e}},{key:"canUse",value:function(e){var n,t;if(!this.isCurrentPlayer)return!1;if(null!==(n=this.player.availableMoves)&&void 0!==n&&n[_e.DiscardPowerPlant])return e.number!==this.player.powerPlants[this.player.powerPlants.length-1].number;if(null===(t=this.player.availableMoves)||void 0===t||!t[_e.UsePowerPlant])return!1;if(!this.player.powerPlantsNotUsed.includes(e.number)||this.player.resourcesUsed.length>0)return!1;switch(e.type){case ve.Coal:return this.player.coalLeft>=e.cost;case ve.Oil:return this.player.oilLeft>=e.cost;case ve.Garbage:return this.player.garbageLeft>=e.cost;case ve.Uranium:return this.player.uraniumLeft>=e.cost;case ve.Hybrid:return this.player.coalLeft+this.player.oilLeft>=e.cost;case ve.Wind:case ve.Nuclear:return this.player.coalLeft+this.player.oilLeft>=e.cost}}},{key:"powerPlantClick",value:function(e){this.phase==be.Bureaucracy&&e.type==ve.Hybrid?0==this.player.coalLeft||0==this.player.oilLeft||this.player.coalLeft+this.player.oilLeft==e.cost?(this.player.resourcesUsed=Array(Math.min(e.cost,this.player.coalLeft)).fill(me.Coal).concat(Array(e.cost-Math.min(e.cost,this.player.coalLeft)).fill(me.Oil)),this.$emit("powerPlantClick",e)):(this.powerPlantClicked=e,this.player.resourcesUsed=Array(e.cost).fill(null)):this.$emit("powerPlantClick",e)}},{key:"canClickResources",get:function(){return this.player.availableMoves&&this.player.availableMoves["DiscardResources"]||this.player.resourcesUsed.some((function(e){return null==e}))}},{key:"clickResource",value:function(e){if(this.player.availableMoves&&this.player.availableMoves["DiscardResources"])this.$emit("discardResource",e);else if(this.player.resourcesUsed.some((function(e){return null==e}))){var n=this.player.resourcesUsed.findIndex((function(e){return null==e}));this.player.resourcesUsed[n]=e,"coal"==e?this.player.coalLeft--:"oil"==e&&this.player.oilLeft--,this.player.resourcesUsed.some((function(e){return null==e}))||this.$emit("powerPlantClick",this.powerPlantClicked)}}}]),t}(d.a);N([he()],ua.prototype,"color",void 0),N([he()],ua.prototype,"avatar",void 0),N([he()],ua.prototype,"player",void 0),N([he()],ua.prototype,"isCurrentPlayer",void 0),N([he()],ua.prototype,"owner",void 0),N([he()],ua.prototype,"ended",void 0),N([he()],ua.prototype,"isPlayer",void 0),N([he()],ua.prototype,"ranking",void 0),N([he()],ua.prototype,"showMoney",void 0),N([he()],ua.prototype,"showBid",void 0),N([he()],ua.prototype,"phase",void 0),N([he()],ua.prototype,"isAustralia",void 0),N([ie()],ua.prototype,"preferences",void 0),ua=N([oe({components:{Coal:Ar,Oil:ro,Garbage:Nr,Uranium:lo,Card:_r}})],ua);var la=ua,da=la,fa=yr(da,sa,ca,!1,null,null,null),pa=fa.exports,ha=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")])])])},ga=[],ya=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"minValue",void 0),i(B(e),"maxValue",void 0),i(B(e),"value",0),e}return C(t,[{key:"add",value:function(){this.value=Math.min(this.maxValue,this.value+1)}},{key:"sub",value:function(){this.value=Math.max(this.minValue,this.value-1)}},{key:"bid",value:function(){this.$emit("bid",this.value)}}]),t}(d.a);N([he()],ya.prototype,"minValue",void 0),N([he()],ya.prototype,"maxValue",void 0),ya=N([oe({created:function(){this.value=this.minValue}})],ya);var ma=ya,va=ma,ba=(t("85cf"),yr(va,ha,ga,!1,null,null,null)),wa=ba.exports,xa=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)},ka=[],_a=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"cardsLeft",void 0),i(B(e),"nextCardWeak",void 0),i(B(e),"plantDiscountActive",void 0),i(B(e),"canBid",void 0),i(B(e),"canChoose",void 0),i(B(e),"chooseablePowerPlants",void 0),i(B(e),"minBid",void 0),i(B(e),"maxBid",void 0),i(B(e),"preferences",void 0),i(B(e),"actualMarketCards",[]),i(B(e),"futureMarketCards",[]),i(B(e),"chosenPowerPlant",null),i(B(e),"actualMarketWidth",430),e}return C(t,[{key:"createPieces",value:function(e){var n,t=this;this.actualMarketWidth=null!==(n=e.map.actualMarketWidth)&&void 0!==n?n:430,this.actualMarketCards=[],e.actualMarket.forEach((function(n,r){var o,a;e.futureMarket.length>0?n.number!=(null===(o=e.chosenPowerPlant)||void 0===o?void 0:o.number)&&t.actualMarketCards.push({id:"actual_"+r,x:165+65*r,y:24,powerPlant:n}):n.number!=(null===(a=e.chosenPowerPlant)||void 0===a?void 0:a.number)&&t.actualMarketCards.push({id:"actual_"+r,x:165+r%3*65,y:r<3?24:80,powerPlant:n})})),this.futureMarketCards=[],e.futureMarket.forEach((function(n,r){var o;n.number!=(null===(o=e.chosenPowerPlant)||void 0===o?void 0:o.number)&&t.futureMarketCards.push({id:"future_"+r,x:165+r%4*65,y:90+50*Math.floor(r/4),powerPlant:n})})),e.chosenPowerPlant?this.chosenPowerPlant={id:"chosen",x:this.actualMarketWidth+30,y:30,powerPlant:e.chosenPowerPlant}:this.chosenPowerPlant=null}},{key:"choosePowerPlant",value:function(e){this.$emit("choosePowerPlant",e)}},{key:"bid",value:function(e){this.$emit("bid",e)}}]),t}(d.a);N([he()],_a.prototype,"cardsLeft",void 0),N([he()],_a.prototype,"nextCardWeak",void 0),N([he()],_a.prototype,"plantDiscountActive",void 0),N([he()],_a.prototype,"canBid",void 0),N([he()],_a.prototype,"canChoose",void 0),N([he()],_a.prototype,"chooseablePowerPlants",void 0),N([he()],_a.prototype,"minBid",void 0),N([he()],_a.prototype,"maxBid",void 0),N([ie()],_a.prototype,"preferences",void 0),_a=N([oe({components:{Card:_r,Calculator:wa}})],_a);var Pa=_a,Sa=Pa,Ma=yr(Sa,xa,ka,!1,null,null,null),Ca=Ma.exports,Ba=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)},Ra=[],Aa=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"playerColors",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[],e.playerOrder.forEach((function(t,r){n.houses.push({id:t+"_order",x:20+30*r,y:22,color:n.playerColors[t],owner:t,ownerName:e.players[t].name})}))}}]),t}(d.a);N([he()],Aa.prototype,"playerColors",void 0),Aa=N([oe({components:{House:Fr}})],Aa);var La=Aa,Oa=La,ja=yr(Oa,Ba,Ra,!1,null,null,null),Ga=ja.exports,Da=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)},za=[],Na=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"citiesToStep2",void 0),i(B(e),"citiesToEndGame",void 0),i(B(e),"playerColors",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[];for(var t=[],r=0;r<22;r++)t[r]=[];e.players.forEach((function(e,n){return t[e.cities.length].push(n)})),e.players.forEach((function(e,r){var o=(1==t[e.cities.length].length?23:20)+33*e.cities.length;o+=t[e.cities.length].indexOf(r)%2*6,n.houses.push({id:r+"_cityCount",x:o,y:15+30*t[e.cities.length].indexOf(r)/t[e.cities.length].length,color:n.playerColors[r],owner:r})}))}}]),t}(d.a);N([he()],Na.prototype,"citiesToStep2",void 0),N([he()],Na.prototype,"citiesToEndGame",void 0),N([he()],Na.prototype,"playerColors",void 0),Na=N([oe({components:{House:Fr}})],Na);var Ta=Na,Ea=Ta,Ka=yr(Ea,Da,za,!1,null,null,null),Ia=Ka.exports,Ua=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[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))])]),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))])]),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[t("circle",{key:n.name+"_circle2",class:[{canClick:e.canBuild(n)}],attrs:{r:"20",cx:n.x,cy:n.y,fill:"gray"},on:{click:function(t){e.canBuild(n)&&e.build(n)}}},[t("title",[e._v(e._s(n.name))])])]})),e._l(e.connections,(function(n){return[n.cost>0?t("circle",{key:n.nodes[0]+"_"+n.nodes[1]+"_border",attrs:{stroke:"black",r:10+10*n.cost/28,cx:(e.getX1(n)+e.getX2(n))/2,cy:(e.getY1(n)+e.getY2(n))/2,fill:n.cost>15?"gold":n.cost>10?"lightgray":"tan"}}):e._e(),n.cost>0?t("circle",{key:n.nodes[0]+"_"+n.nodes[1]+"_circle",attrs:{r:6+10*n.cost/28,cx:(e.getX1(n)+e.getX2(n))/2,cy:(e.getY1(n)+e.getY2(n))/2,fill:"gray",stroke:"black"}}):e._e(),n.cost>0?t("text",{key:n.nodes[0]+"_"+n.nodes[1]+"_text",style:"font-size: "+(12+6*n.cost/28)+"px",attrs:{"text-anchor":"middle",fill:"black",x:(e.getX1(n)+e.getX2(n))/2,y:(e.getY1(n)+e.getY2(n))/2,transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(e.getX1(n)+e.getX2(n))/2+", "+(e.getY1(n)+e.getY2(n))/2+")":void 0}},[e._v(" "+e._s(n.cost)+" ")]):e._e()]})),e._l(e.houses,(function(e){return[t("House",{key:e.id,attrs:{pieceId:e.id,targetState:{x:e.x,y:e.y},owner:e.owner,ownerName:e.ownerName,color:e.color}})]})),e._l(e.cities,(function(n){return[n.slotCosts&&2===n.slotCosts.length&&10===n.slotCosts[0]?[t("line",{key:n.name+"_x1",attrs:{x1:n.x+10,y1:n.y+10,x2:n.x+19,y2:n.y+19,stroke:"black","stroke-width":"3","stroke-linecap":"round"}}),t("line",{key:n.name+"_x2",attrs:{x1:n.x+19,y1:n.y+10,x2:n.x+10,y2:n.y+19,stroke:"black","stroke-width":"3","stroke-linecap":"round"}})]:e._e(),n.slotCosts&&3===n.slotCosts.length&&10===n.slotCosts[0]&&10===n.slotCosts[1]?t("text",{key:n.name+"_10label",attrs:{x:n.x-20,y:n.y+19,"font-size":"17","font-weight":"bold",fill:"black","text-anchor":"middle",transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(n.x-20)+", "+(n.y+19)+")":void 0}},[e._v("10")]):e._e(),n.slotCosts&&2===n.slotCosts.length&&15===n.slotCosts[0]?[t("line",{key:n.name+"_x1",attrs:{x1:n.x-5,y1:n.y-21,x2:n.x+5,y2:n.y-11,stroke:"black","stroke-width":"3","stroke-linecap":"round"}}),t("line",{key:n.name+"_x2",attrs:{x1:n.x+5,y1:n.y-21,x2:n.x-5,y2:n.y-11,stroke:"black","stroke-width":"3","stroke-linecap":"round"}})]:e._e()]})),e.preferences.disableHelp?e._e():[e._l(e.cities,(function(n){return[e.canBuild(n)?t("circle",{key:n.name+"_circleHelp",class:[{canClick:e.canBuild(n)}],attrs:{r:"18",cx:n.x,cy:n.y,fill:"none",stroke:"blue","stroke-width":"4px"}}):e._e()]}))]],2)},Wa=[],Fa=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"polygons",void 0),i(B(e),"cities",void 0),i(B(e),"connections",void 0),i(B(e),"playerColors",void 0),i(B(e),"buildableCities",void 0),i(B(e),"devBackdrop",void 0),i(B(e),"mapRotation",void 0),i(B(e),"preferences",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[],e.players.forEach((function(t,r){t.cities.forEach((function(t){var o,a,i,s=e.map.cities.find((function(e){return e.name==t.name})),c=2===(null===(o=s.slotCosts)||void 0===o?void 0:o.length)&&15===s.slotCosts[0];c?0==t.position?(a=-15,i=-4):(a=1,i=-4):0==t.position?(a=-6,i=-18):1==t.position?(a=-15,i=-4):(a=1,i=-4),n.houses.push({id:r+"_"+t.name,x:s.x+a,y:s.y+i,color:n.playerColors[r],owner:r})}))}))}},{key:"getX1",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[0]}));return n.x}},{key:"getY1",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[0]}));return n.y}},{key:"getX2",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[1]}));return n.x}},{key:"getY2",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[1]}));return n.y}},{key:"canBuild",value:function(e){return!!this.buildableCities.find((function(n){return n==e.name}))}},{key:"build",value:function(e){this.$emit("build",e)}},{key:"onPickCoord",value:function(e){if(this.devBackdrop){var n=e.currentTarget,t=n.getScreenCTM();if(t){var r=new DOMPoint(e.clientX,e.clientY).matrixTransform(t.inverse());console.log("{ name: Cities.TODO, region: Regions.TODO, x: ".concat(Math.round(r.x),", y: ").concat(Math.round(r.y)," },"))}}}}]),t}(d.a);N([he()],Fa.prototype,"polygons",void 0),N([he()],Fa.prototype,"cities",void 0),N([he()],Fa.prototype,"connections",void 0),N([he()],Fa.prototype,"playerColors",void 0),N([he()],Fa.prototype,"buildableCities",void 0),N([he()],Fa.prototype,"devBackdrop",void 0),N([he({default:0})],Fa.prototype,"mapRotation",void 0),N([ie()],Fa.prototype,"preferences",void 0),Fa=N([oe({components:{House:Fr}})],Fa);var Ya=Fa,Ha=Ya,Va=yr(Ha,Ua,Wa,!1,null,null,null),Ja=Va.exports,$a=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._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._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._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)},qa=[],Za=t("bcba"),Xa=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"resourceResupply",void 0),i(B(e),"resourceResupplyNorth",void 0),i(B(e),"isUsaRecharged",void 0),i(B(e),"isMiddleEast",void 0),i(B(e),"isIndiaResourceMarket",void 0),i(B(e),"availableSurplusOil",void 0),i(B(e),"buyableResources",void 0),i(B(e),"coalStorage",void 0),i(B(e),"preferences",void 0),i(B(e),"coals",[]),i(B(e),"oils",[]),i(B(e),"garbages",[]),i(B(e),"uraniums",[]),i(B(e),"isKorea",!1),i(B(e),"isNinePriceMarket",!1),i(B(e),"isAustraliaMarket",!1),i(B(e),"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=this;if(e){this.isAustraliaMarket="Australia"===(null===(n=e.map)||void 0===n?void 0:n.name),this.co2TaxActive=this.isAustraliaMarket&&e.step>=3;var a,i,s,c,u,l=void 0!==e.coalMarketNorth;if(this.isKorea=l,l){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 d=e.uraniumPrices;return d.forEach((function(n,t){var r,a;if(n<=8)r=60+85*(n-1),a=85;else{var i=10===n||14===n?710:750,s=10===n||12===n?52:91;r=i,a=s}o.uraniums.push({id:"uranium_".concat(t),x:r,y:a,transparent:t<d.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===(t=e.map)||void 0===t?void 0:t.name)||"North America"===(null===(r=e.map)||void 0===r?void 0:r.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.isNinePriceMarket=!1,this.coalsNorth=[],this.oilsNorth=[],this.garbagesNorth=[],this.coals=[],"India"==(null===(a=e.map)||void 0===a?void 0:a.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++,o.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){o.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===(i=e.map)||void 0===i?void 0:i.name)&&Object(Za["range"])(e.coalSupply).forEach((function(e){o.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(Za["range"])(e.coalStorage).forEach((function(e){o.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===(s=e.map)||void 0===s?void 0:s.name)){var f=e.oilPrices.filter((function(e){return e>1})).length,p=e.oilPrices.filter((function(e){return 1==e})).length,h=Math.min(f,e.oilMarket);Array(f).fill(0).forEach((function(e,n){var t=n+(p-3);o.oils.push({id:"normal_oil_"+t,x:651-16*t-37*Math.floor(t/3),y:70,transparent:n>=h})}))}else Array(24).fill(0).forEach((function(n,t){o.oils.push({id:"oil_"+t,x:651-16*t-37*Math.floor(t/3),y:70,transparent:t>=e.oilMarket})}));this.garbages=[],"India"==(null===(c=e.map)||void 0===c?void 0:c.name)?Array(24).fill(0).forEach((function(n,t){var r=t+8;o.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){o.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===(u=e.map)||void 0===u?void 0:u.name)?Array(8).fill(0).forEach((function(n,t){o.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?o.uraniums.push({id:"uranium_"+t,x:750,y:91,transparent:t>=e.uraniumMarket}):1==t?o.uraniums.push({id:"uranium_"+t,x:710,y:91,transparent:t>=e.uraniumMarket}):2==t?o.uraniums.push({id:"uranium_"+t,x:750,y:52,transparent:t>=e.uraniumMarket}):3==t?o.uraniums.push({id:"uranium_"+t,x:710,y:52,transparent:t>=e.uraniumMarket}):o.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);N([he()],Xa.prototype,"resourceResupply",void 0),N([he()],Xa.prototype,"resourceResupplyNorth",void 0),N([he()],Xa.prototype,"isUsaRecharged",void 0),N([he()],Xa.prototype,"isMiddleEast",void 0),N([he()],Xa.prototype,"isIndiaResourceMarket",void 0),N([he()],Xa.prototype,"availableSurplusOil",void 0),N([he()],Xa.prototype,"buyableResources",void 0),N([he()],Xa.prototype,"coalStorage",void 0),N([ie()],Xa.prototype,"preferences",void 0),Xa=N([oe({components:{Coal:Ar,Oil:ro,Garbage:Nr,Uranium:lo}})],Xa);var Qa=Xa,ei=Qa,ni=yr(ei,$a,qa,!1,null,null,null),ti=ni.exports,ri=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"state",void 0),i(B(e),"player",void 0),i(B(e),"emitter",void 0),i(B(e),"avatars",void 0),i(B(e),"preferences",void 0),i(B(e),"ui",{waitingAnimations:0}),i(B(e),"paused",!1),i(B(e),"communicator",new u["EventEmitter"]),i(B(e),"G",null),i(B(e),"_futureState",void 0),i(B(e),"playerColors",["limegreen","mediumorchid","red","dodgerblue","yellow","brown"]),i(B(e),"animationQueue",[]),i(B(e),"logVisible",!1),i(B(e),"endScoreVisible",!1),i(B(e),"spendingVisible",!1),i(B(e),"rulesVisible",!1),i(B(e),"totalBid",0),i(B(e),"confirmMessage",""),i(B(e),"confirmVisible",!1),i(B(e),"discardedPowerPlant",null),i(B(e),"discardVisible",!1),i(B(e),"resourcesToDiscard",[]),i(B(e),"freeJumpCity",null),i(B(e),"freeJumpNormalPrice",null),i(B(e),"freeJumpSlotPrice",0),i(B(e),"freeJumpVisible",!1),i(B(e),"disablePass",!1),i(B(e),"powerPlantMarket",void 0),i(B(e),"playerOrder",void 0),i(B(e),"cityCount",void 0),i(B(e),"map",void 0),i(B(e),"resources",void 0),e}return C(t,[{key:"onStateChanged",value:function(e){this.replaceState(e)}},{key:"replaceState",value:function(e){var n,t,r,o=this,a=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(a&&(this._futureState=e),null!=this.player&&this.G&&this.G.players&&this.G.players[this.player].resourcesUsed.some((function(e){return null==e}))&&(r={coalLeft:this.G.players[this.player].coalLeft,oilLeft:this.G.players[this.player].oilLeft,resourcesUsed:this.G.players[this.player].resourcesUsed}),this.G=JSON.parse(JSON.stringify(e)),r&&Object.assign(this.G.players[this.player],r),this.G&&this.$nextTick((function(){o.powerPlantMarket.createPieces(o.G),o.playerOrder.createPieces(o.G),o.cityCount.createPieces(o.G),o.map.createPieces(o.G),o.resources.createPieces(o.G)})),this.preferences.sound&&"move"==(null===(n=this.G)||void 0===n?void 0:n.log[(null===(t=this.G)||void 0===t?void 0:t.log.length)-1].type)){var i,s,c=null===(i=this.G)||void 0===i?void 0:i.log[(null===(s=this.G)||void 0===s?void 0:s.log.length)-1].move;c.name==_e.Pass&&this.G.currentPlayers.includes(this.player)?document.getElementById("notification").cloneNode(!0).play():c.name==_e.Build&&setTimeout((function(){document.getElementById("piece-drop").cloneNode(!0).play()}),800)}}},{key:"updateUI",value:function(){var e=this;if(!(this.ui.waitingAnimations>0))return this.animationQueue.length>0?(this.animationQueue.shift()(),void setTimeout((function(){return e.updateUI()}))):void 0}},{key:"checkPass",value:function(){if(this.G&&null!=this.player&&!this.G.chosenPowerPlant){var e=this.G.players[this.player];if(e&&e.availableMoves&&Object.keys(e.availableMoves).length>1){if(this.G.phase==be.Bureaucracy&&e.powerPlantsNotUsed.length>0&&Object.keys(e.availableMoves).includes("UsePowerPlant"))return this.confirmMessage="Are you sure you want to pass? You have unused power plants!",void(this.confirmVisible=!0);if(this.G.phase==be.Resources&&!this.canPowerAllPlants(e))return this.confirmMessage="Are you sure you want to skip buying resources without enough to power all your plants?",void(this.confirmVisible=!0);if(this.G.phase!=be.Bureaucracy||e.powerPlantsNotUsed.length==e.powerPlants.length){var n=this.G.log[this.G.log.length-1];if(n.player!=this.player||n.move.name==_e.Pass){switch(this.G.phase){case be.Auction:this.confirmMessage="Are you sure you want to skip auctions?";break;case be.Resources:this.confirmMessage="Are you sure you want to skip buying resources?";break;case be.Building:this.confirmMessage="Are you sure you want to skip building?";break;case be.Bureaucracy:this.confirmMessage="Are you sure you want to pass? You didn't use any power plant!";break;default:this.confirmMessage="Are you sure you want to pass?"}return void(this.confirmVisible=!0)}}}}this.pass()}},{key:"confirmPass",value:function(){this.confirmVisible=!1,this.pass()}},{key:"pass",value:function(){this.sendMove({name:_e.Pass,data:!0})}},{key:"undo",value:function(){this.sendMove({name:_e.Undo,data:this.preferences.undoWholeTurn})}},{key:"choosePowerPlant",value:function(e){var n=this.G.players[this.player],t=n.availableMoves;t.ChoosePowerPlant&&t.ChoosePowerPlant.includes(e.number)&&this.sendMove({name:_e.ChoosePowerPlant,data:e.number})}},{key:"buyResource",value:function(e){var n={resource:e.resource};e.side&&(n.side=e.side),e.fromStorage&&(n.fromStorage=e.fromStorage),this.sendMove({name:_e.BuyResource,data:n})}},{key:"bid",value:function(e){this.sendMove({name:_e.Bid,data:e})}},{key:"build",value:function(e){var n=this.G.players[this.player],t=n.availableMoves,r=t[_e.Build],o=r.find((function(n){return n.name===e.name&&n.freeJump})),a=r.find((function(n){return n.name===e.name&&!n.freeJump}));o&&a?(this.freeJumpCity=e,this.freeJumpSlotPrice=o.price,this.freeJumpNormalPrice=a.price,this.freeJumpVisible=!0):o&&!a?(this.freeJumpCity=e,this.freeJumpSlotPrice=o.price,this.freeJumpNormalPrice=null,this.freeJumpVisible=!0):this.sendMove({name:_e.Build,data:{name:e.name,price:a.price}})}},{key:"confirmFreeJump",value:function(e){var n=this.freeJumpCity,t=this.G.players[this.player],r=t.availableMoves[_e.Build];if(this.freeJumpVisible=!1,this.freeJumpCity=null,e){var o=r.find((function(e){return e.name===n.name&&e.freeJump}));this.sendMove({name:_e.Build,data:{name:n.name,price:o.price,freeJump:!0}})}else{var a=r.find((function(e){return e.name===n.name&&!e.freeJump}));this.sendMove({name:_e.Build,data:{name:n.name,price:a.price}})}}},{key:"confirmDiscard",value:function(){var e=this.resourcesToDiscard.map((function(e){return parseInt(e.value)}));e.reduce((function(e,n){return e+n}),0)>0?this.sendMove({name:_e.DiscardPowerPlant,data:this.discardedPowerPlant.number,extra:e}):this.sendMove({name:_e.DiscardPowerPlant,data:this.discardedPowerPlant.number}),this.discardedPowerPlant=null,this.discardVisible=!1}},{key:"discardInvalid",value:function(){var e,n=this.G.players[this.player];switch(this.discardedPowerPlant.type){case ve.Coal:return e=n.hybridCapacity-2*this.discardedPowerPlant.cost>0?Math.max(0,n.oilLeft-n.oilCapacity):0,n.coalCapacity+n.hybridCapacity-2*this.discardedPowerPlant.cost+parseInt(this.resourcesToDiscard[0].value)<n.coalLeft+e;case ve.Oil:return e=n.hybridCapacity-2*this.discardedPowerPlant.cost>0?Math.max(0,n.coalLeft-n.coalCapacity):0,n.oilCapacity+n.hybridCapacity-2*this.discardedPowerPlant.cost+parseInt(this.resourcesToDiscard[0].value)<n.oilLeft+e;case ve.Garbage:return n.garbageCapacity-2*this.discardedPowerPlant.cost-n.garbageLeft+parseInt(this.resourcesToDiscard[0].value)<0;case ve.Uranium:return n.uraniumCapacity-2*this.discardedPowerPlant.cost-n.uraniumLeft+parseInt(this.resourcesToDiscard[0].value)<0;case ve.Hybrid:var t=parseInt(this.resourcesToDiscard[0].value),r=parseInt(this.resourcesToDiscard[1].value),o=n.hybridCapacity-2*this.discardedPowerPlant.cost,a=Math.max(0,n.coalLeft-n.coalCapacity-t),i=Math.max(0,n.oilLeft-n.oilCapacity-r);return o<a+i}return!0}},{key:"powerPlantClick",value:function(e){var n,t,r=this;if((null===(n=this.G)||void 0===n?void 0:n.phase)==be.Auction)if(e.type==ve.Wind||e.type==ve.Nuclear)this.sendMove({name:_e.DiscardPowerPlant,data:e.number});else{var o=this.G.players[this.player];switch(e.type){case ve.Coal:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Hybrid})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.coalLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Coal",value:"0",max:o.coalLeft}];break;case ve.Oil:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Hybrid})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.oilLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Oil",value:"0",max:o.oilLeft}];break;case ve.Garbage:if(1==o.powerPlants.filter((function(n){return n.type==e.type})).length)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.garbageLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Garbage",value:"0",max:o.garbageLeft}];break;case ve.Uranium:if(1==o.powerPlants.filter((function(n){return n.type==e.type})).length)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.uraniumLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Uranium",value:"0",max:o.uraniumLeft}];break;case ve.Hybrid:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Coal})).length+o.powerPlants.filter((function(e){return e.type==ve.Oil})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(o.coalLeft+o.oilLeft==0)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Coal",value:"0",max:o.coalLeft},{name:"Oil",value:"0",max:o.oilLeft}];break}this.discardedPowerPlant=e,this.discardVisible=!0}else if((null===(t=this.G)||void 0===t?void 0:t.phase)==be.Bureaucracy){var a=[];switch(e.type){case ve.Coal:a=Array(e.cost).fill(me.Coal);break;case ve.Oil:a=Array(e.cost).fill(me.Oil);break;case ve.Garbage:a=Array(e.cost).fill(me.Garbage);break;case ve.Uranium:a=Array(e.cost).fill(me.Uranium);break;case ve.Hybrid:var i=this.G.players[this.player];a=i.resourcesUsed,a.sort(),i.resourcesUsed=[],i.powerPlantsNotUsed=i.powerPlantsNotUsed.filter((function(n){return n!=e.number}));break}this.sendMove({name:_e.UsePowerPlant,data:{powerPlant:e.number,resourcesSpent:a,citiesPowered:e.citiesPowered}}),this.disablePass=!0,setTimeout((function(){return r.disablePass=!1}),1e3)}}},{key:"discardResource",value:function(e){this.sendMove({name:_e.DiscardResources,data:e})}},{key:"sendMove",value:function(e){this.paused||this.emitter.emit("move",e)}},{key:"gameEnded",value:function(e){return 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[_e.Pass]}},{key:"canUndo",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Undo]}},{key:"canBid",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Bid]}},{key:"canChoose",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.ChoosePowerPlant]}},{key:"buyableResources",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.BuyResource]||[]}},{key:"canBuyResource",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return e?!!t[_e.BuyResource]&&t[_e.BuyResource].find((function(n){return n.resource==e})):!!t[_e.BuyResource]}},{key:"getChooseablePowerPlants",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.ChoosePowerPlant]}},{key:"getBuildableCities",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.Build]&&n[_e.Build].map((function(e){return e.name}))||[]}},{key:"playerHasUsedFreeJump",value:function(e){var n,t=null===(n=this.G)||void 0===n?void 0:n.players[e];return!!t&&(!!t.usedFreeJump||t.cities.length>=2&&Ne(this.G.map.connections,t.cities.map((function(e){return e.name})))>=2)}},{key:"canBuild",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return!!t[_e.Build]&&t[_e.Build].find((function(n){return n.name==e.name}))}},{key:"canUsePowerPlant",value:function(e){var n,t;if(!this.canMove())return!1;var r=this.G.players[this.player],o=r.availableMoves;return!(r.resourcesUsed.length>0)&&((null===(n=this.G)||void 0===n?void 0:n.phase)==be.Bureaucracy?!!o[_e.UsePowerPlant]&&o[_e.UsePowerPlant].find((function(n){return n.powerPlant==e.number})):(null===(t=this.G)||void 0===t?void 0:t.phase)==be.Auction?!!o[_e.DiscardPowerPlant]&&o[_e.DiscardPowerPlant].find((function(n){return n==e.number})):void 0)}},{key:"canPowerAllPlants",value:function(e){var n,t=0,r=0,o=0,a=0,i=0,s=P(e.powerPlants);try{for(s.s();!(n=s.n()).done;){var c=n.value;switch(c.type){case ve.Coal:t+=c.cost;break;case ve.Oil:r+=c.cost;break;case ve.Garbage:o+=c.cost;break;case ve.Uranium:a+=c.cost;break;case ve.Hybrid:i+=c.cost;break}}}catch(d){s.e(d)}finally{s.f()}if(t>e.coalLeft||r>e.oilLeft||o>e.garbageLeft||a>e.uraniumLeft)return!1;var u=e.coalLeft-t,l=e.oilLeft-r;return!(i>u+l)}},{key:"toggleSound",value:function(){var e=!this.preferences.sound;this.emitter.emit("update:preference",{name:"sound",value:e}),this.preferences.sound=e}},{key:"toggleHelp",value:function(){var e=!this.preferences.disableHelp;this.emitter.emit("update:preference",{name:"disableHelp",value:e}),this.preferences.disableHelp=e}},{key:"showLog",value:function(){this.logVisible=!0}},{key:"getStatusMessage",value:function(){var e;if(!this.G||1==this.G.log.length)return"Game Start!";if(this.G.currentPlayers==[])return"Game ended!";if(void 0!==this.player&&null!==(e=this.G)&&void 0!==e&&e.currentPlayers.includes(this.player)){var n=this.G.players[this.player];return n.availableMoves[_e.ChoosePowerPlant]?n.availableMoves[_e.Pass]?"Choose a Power Plant to start an auction, or pass.":"Choose a Power Plant to start an auction.":n.availableMoves[_e.Bid]?"It's your turn to bid!":n.availableMoves[_e.BuyResource]?"Buy resources on the market, or pass.":n.availableMoves[_e.Build]?"Build a new city, or pass.":n.availableMoves[_e.UsePowerPlant]?0!=n.resourcesUsed.length?"Choose which resources to spend.":"Choose which Power Plant to use.":n.availableMoves[_e.DiscardPowerPlant]?"Choose which Power Plant to discard.":n.availableMoves[_e.DiscardResources]?"Choose which resources to discard.":"It's your turn!"}var t=this.G.log[this.G.log.length-1];return"move"==t.type?t.simple:"event"==t.type?t.event:void 0}},{key:"isCurrentPlayer",value:function(e){return this.G&&this.G.currentPlayers.includes(e)}},{key:"logReversed",get:function(){var e=[];return this.G&&this.G.log&&(this.G.log.forEach((function(n){"event"==n.type?e.push(n.pretty||n.event):"move"==n.type&&e.push(n.pretty)})),e.reverse()),e}},{key:"logReversedSimple",get:function(){var e=[];return this.G&&this.G.log&&(this.G.log.forEach((function(n){"event"==n.type?e.push(n.event):"move"==n.type&&e.push(n.simple)})),e.reverse()),e}},{key:"onLogChanged",value:function(){this.emitter.emit("replaceLog",_(this.logReversedSimple).reverse())}},{key:"sortedPlayers",get:function(){return Jt(this.G)}},{key:"mapTransform",get:function(){var e;if(null===(e=this.G)||void 0===e||!e.map)return"";var n=b(this.G.map.mapPosition,2),t=n[0],r=n[1],o=this.G.map.mapRotation;if(!o)return"translate(".concat(t,", ").concat(r,")");var a=this.G.map.cities,i=a.map((function(e){return e.x})),s=a.map((function(e){return e.y})),c=(Math.min.apply(Math,_(i))+Math.max.apply(Math,_(i)))/2,u=(Math.min.apply(Math,_(s))+Math.max.apply(Math,_(s)))/2;return"translate(".concat(t,", ").concat(r,") rotate(").concat(o,", ").concat(c,", ").concat(u,")")}},{key:"adjustedPlayerOrder",get:function(){return this.G?this.preferences.adjustPlayerOrder?this.G.phase==be.Auction?this.G.playerOrder:this.G.playerOrder.reverse():this.G.players.map((function(e,n){return n})):[]}},{key:"getResourceResupply",value:function(){if(this.G){var e=this.G.resourceResupply[this.G.step-1];return e=e.substr(1,e.length-2),e.split(",")}return[0,0,0,0]}},{key:"getResourceResupplyNorth",value:function(){if(this.G&&this.G.resourceResupplyNorth){var e=this.G.resourceResupplyNorth[this.G.step-1];return e=e.substr(1,e.length-2),e.split(",")}return null}}]),t}(d.a);N([he()],ri.prototype,"state",void 0),N([he(),de()],ri.prototype,"player",void 0),N([he()],ri.prototype,"emitter",void 0),N([he()],ri.prototype,"avatars",void 0),N([he(),de()],ri.prototype,"preferences",void 0),N([le()],ri.prototype,"ui",void 0),N([le()],ri.prototype,"communicator",void 0),N([de()],ri.prototype,"G",void 0),N([ye()],ri.prototype,"powerPlantMarket",void 0),N([ye()],ri.prototype,"playerOrder",void 0),N([ye()],ri.prototype,"cityCount",void 0),N([ye()],ri.prototype,"map",void 0),N([ye()],ri.prototype,"resources",void 0),N([ge("state",{immediate:!0})],ri.prototype,"onStateChanged",null),N([ge("ui.waitingAnimations")],ri.prototype,"updateUI",null),N([ge("G.log")],ri.prototype,"onLogChanged",null),ri=N([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(Nt(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:pa,Card:_r,House:Fr,Coal:Ar,Oil:ro,Garbage:Nr,Uranium:lo,PassButton:Eo,UndoButton:ia,LogButton:Oo,SoundButton:Ho,HelpButton:So,RulesButton:Qo,Button:vo,Calculator:wa,PowerPlantMarket:Ca,PlayerOrder:Ga,CityCount:Ia,Map:Ja,Resources:ti}})],ri);var oi=ri,ai=oi,ii=(t("bb9a"),yr(ai,f,p,!1,null,null,null)),si=ii.exports;function ci(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(si,{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 ui=ci;"undefined"!==typeof window&&(window.powergrid={launch:ui});var li=ui;n["default"]=li},a1a4:function(e,n,t){"use strict";var r=t("a768"),o=t("41d6"),a=t("fd86"),i=t("ce17"),s=a("species");e.exports=function(e){var n=r(e),t=o.f;i&&n&&!n[s]&&t(n,s,{configurable:!0,get:function(){return this}})}},a516:function(e,n,t){"use strict";var r=t("7f82"),o=t("12aa"),a=t("b42f"),i=t("43b7"),s=t("f246"),c=t("cbe1"),u=t("cba7"),l=t("2fb6"),d=l("splice"),f=Math.max,p=Math.min,h=9007199254740991,g="Maximum allowed length exceeded";r({target:"Array",proto:!0,forced:!d},{splice:function(e,n){var t,r,l,d,y,m,v=s(this),b=i(v.length),w=o(e,b),x=arguments.length;if(0===x?t=r=0:1===x?(t=0,r=b-w):(t=x-2,r=p(f(a(n),0),b-w)),b+t-r>h)throw TypeError(g);for(l=c(v,r),d=0;d<r;d++)y=w+d,y in v&&u(l,d,v[y]);if(l.length=r,t<r){for(d=w;d<b-r;d++)y=d+r,m=d+t,y in v?v[m]=v[y]:delete v[m];for(d=b;d>b-r+t;d--)delete v[d-1]}else if(t>r)for(d=b-r;d>w;d--)y=d+r-1,m=d+t-1,y in v?v[m]=v[y]:delete v[m];for(d=0;d<t;d++)v[d+w]=arguments[d+2];return v.length=b-r+t,l}})},a768:function(e,n,t){var r=t("8aac"),o=t("68de"),a=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,n){return arguments.length<2?a(r[e])||a(o[e]):r[e]&&r[e][n]||o[e]&&o[e][n]}},a901:function(e,n,t){"use strict";var r=t("2079").charAt,o=t("2673"),a=t("4116"),i="String Iterator",s=o.set,c=o.getterFor(i);a(String,"String",(function(e){s(this,{type:i,string:String(e),index:0})}),(function(){var e,n=c(this),t=n.string,o=n.index;return o>=t.length?{value:void 0,done:!0}:(e=r(t,o),n.index+=e.length,{value:e,done:!1})}))},a9eb:function(e,n,t){var r=t("8dac");e.exports=function(e,n){if(!r(e))return e;var t,o;if(n&&"function"==typeof(t=e.toString)&&!r(o=t.call(e)))return o;if("function"==typeof(t=e.valueOf)&&!r(o=t.call(e)))return o;if(!n&&"function"==typeof(t=e.toString)&&!r(o=t.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},ac27:function(e,n){e.exports=function(e){try{return!!e()}catch(n){return!0}}},ac85:function(e,n,t){(function(e){var r;(function(e,o,a){function i(e){var n=this;function t(e,n){var t,r,o,a,i,s=[],c=128;for(n===(0|n)?(r=n,n=null):(n+="\0",r=0,c=Math.max(c,n.length)),o=0,a=-32;a<c;++a)n&&(r^=n.charCodeAt((a+32)%n.length)),0===a&&(i=r),r^=r<<10,r^=r>>>15,r^=r<<4,r^=r>>>13,a>=0&&(i=i+1640531527|0,t=s[127&a]^=r+i,o=0==t?o+1:0);for(o>=128&&(s[127&(n&&n.length||0)]=-1),o=127,a=512;a>0;--a)r=s[o+34&127],t=s[o=o+1&127],r^=r<<13,t^=t<<17,r^=r>>>15,t^=t>>>12,s[o]=r^t;e.w=i,e.X=s,e.i=o}n.next=function(){var e,t,r=n.w,o=n.X,a=n.i;return n.w=r=r+1640531527|0,t=o[a+34&127],e=o[a=a+1&127],t^=t<<13,e^=e<<17,t^=t>>>15,e^=e>>>12,t=o[a]=t^e,n.i=a,t+(r^r>>>16)|0},t(n,e)}function s(e,n){return n.i=e.i,n.w=e.w,n.X=e.X.slice(),n}function c(e,n){null==e&&(e=+new Date);var t=new i(e),r=n&&n.state,o=function(){return(t.next()>>>0)/4294967296};return o.double=function(){do{var e=t.next()>>>11,n=(t.next()>>>0)/4294967296,r=(e+n)/(1<<21)}while(0===r);return r},o.int32=t.next,o.quick=o,r&&(r.X&&s(r,t),o.state=function(){return s(t,{})}),o}o&&o.exports?o.exports=c:t("f9ad")&&t("ba96")?(r=function(){return c}.call(n,t,n,o),void 0===r||(o.exports=r)):this.xor4096=c})(0,e,t("f9ad"))}).call(this,t("e55b")(e))},b07d:function(e,n,t){"use strict";var r=t("cbdb"),o=t("0540"),a=t("57ac"),i=t("c678"),s=t("c698"),c=t("7743"),u=t("43b7"),l=t("1af6"),d=t("8bc5"),f=t("3439"),p=f.UNSUPPORTED_Y,h=[].push,g=Math.min,y=4294967295;r("split",2,(function(e,n,t){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,t){var r=String(i(this)),a=void 0===t?y:t>>>0;if(0===a)return[];if(void 0===e)return[r];if(!o(e))return n.call(r,e,a);var s,c,u,l=[],f=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),p=0,g=new RegExp(e.source,f+"g");while(s=d.call(g,r)){if(c=g.lastIndex,c>p&&(l.push(r.slice(p,s.index)),s.length>1&&s.index<r.length&&h.apply(l,s.slice(1)),u=s[0].length,p=c,l.length>=a))break;g.lastIndex===s.index&&g.lastIndex++}return p===r.length?!u&&g.test("")||l.push(""):l.push(r.slice(p)),l.length>a?l.slice(0,a):l}:"0".split(void 0,0).length?function(e,t){return void 0===e&&0===t?[]:n.call(this,e,t)}:n,[function(n,t){var o=i(this),a=void 0==n?void 0:n[e];return void 0!==a?a.call(n,o,t):r.call(String(o),n,t)},function(e,o){var i=t(r,e,this,o,r!==n);if(i.done)return i.value;var d=a(e),f=String(this),h=s(d,RegExp),m=d.unicode,v=(d.ignoreCase?"i":"")+(d.multiline?"m":"")+(d.unicode?"u":"")+(p?"g":"y"),b=new h(p?"^(?:"+d.source+")":d,v),w=void 0===o?y:o>>>0;if(0===w)return[];if(0===f.length)return null===l(b,f)?[f]:[];var x=0,k=0,_=[];while(k<f.length){b.lastIndex=p?0:k;var P,S=l(b,p?f.slice(k):f);if(null===S||(P=g(u(b.lastIndex+(p?k:0)),f.length))===x)k=c(f,k,m);else{if(_.push(f.slice(x,k)),_.length===w)return _;for(var M=1;M<=S.length-1;M++)if(_.push(S[M]),_.length===w)return _;k=x=P}}return _.push(f.slice(x)),_}]}),p)},b0d4:function(e,n,t){"use strict";var r=t("7f82"),o=t("b222").find,a=t("d684"),i="find",s=!0;i in[]&&Array(1)[i]((function(){s=!1})),r({target:"Array",proto:!0,forced:s},{find:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),a(i)},b168:function(e,n,t){var r,o,a=t("68de"),i=t("fd70"),s=a.process,c=s&&s.versions,u=c&&c.v8;u?(r=u.split("."),o=r[0]<4?1:r[0]+r[1]):i&&(r=i.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=i.match(/Chrome\/(\d+)/),r&&(o=r[1]))),e.exports=o&&+o},b222:function(e,n,t){var r=t("6e4e"),o=t("2153"),a=t("f246"),i=t("43b7"),s=t("cbe1"),c=[].push,u=function(e){var n=1==e,t=2==e,u=3==e,l=4==e,d=6==e,f=7==e,p=5==e||d;return function(h,g,y,m){for(var v,b,w=a(h),x=o(w),k=r(g,y,3),_=i(x.length),P=0,S=m||s,M=n?S(h,_):t||f?S(h,0):void 0;_>P;P++)if((p||P in x)&&(v=x[P],b=k(v,P,w),e))if(n)M[P]=b;else if(b)switch(e){case 3:return!0;case 5:return v;case 6:return P;case 2:c.call(M,v)}else switch(e){case 4:return!1;case 7:c.call(M,v)}return d?-1:u||l?l:M}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterOut:u(7)}},b2a1:function(e,n,t){var r=t("9c0c"),o=t("97cc").f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(e){try{return o(e)}catch(n){return i.slice()}};e.exports.f=function(e){return i&&"[object Window]"==a.call(e)?s(e):o(r(e))}},b42f:function(e,n){var t=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:t)(e)}},b67b:function(e,n,t){e.exports=t.p+"img/log.04ef6981.svg"},b85b:function(e,n,t){e.exports=t.p+"img/rules.64f9aae5.svg"},ba03:function(e,n,t){(function(e){var r;(function(e,o,a){function i(e){var n=this,t="";n.next=function(){var e=n.b,t=n.c,r=n.d,o=n.a;return e=e<<25^e>>>7^t,t=t-r|0,r=r<<24^r>>>8^o,o=o-e|0,n.b=e=e<<20^e>>>12^t,n.c=t=t-r|0,n.d=r<<16^t>>>16^o,n.a=o-e|0},n.a=0,n.b=0,n.c=-1640531527,n.d=1367130551,e===Math.floor(e)?(n.a=e/4294967296|0,n.b=0|e):t+=e;for(var r=0;r<t.length+20;r++)n.b^=0|t.charCodeAt(r),n.next()}function s(e,n){return n.a=e.a,n.b=e.b,n.c=e.c,n.d=e.d,n}function c(e,n){var t=new i(e),r=n&&n.state,o=function(){return(t.next()>>>0)/4294967296};return o.double=function(){do{var e=t.next()>>>11,n=(t.next()>>>0)/4294967296,r=(e+n)/(1<<21)}while(0===r);return r},o.int32=t.next,o.quick=o,r&&("object"==typeof r&&s(r,t),o.state=function(){return s(t,{})}),o}o&&o.exports?o.exports=c:t("f9ad")&&t("ba96")?(r=function(){return c}.call(n,t,n,o),void 0===r||(o.exports=r)):this.tychei=c})(0,e,t("f9ad"))}).call(this,t("e55b")(e))},ba28:function(e,n,t){var r=t("8c99"),o=t("338e");e.exports=Object.keys||function(e){return r(e,o)}},ba96:function(e,n){(function(n){e.exports=n}).call(this,{})},bb9a:function(e,n,t){"use strict";t("50b1")},bcba:function(e,n,t){(function(e,r){var o;
26
+ function T(e){return T="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},T(e)}function E(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function K(e){return I(e)||U(e)||W()}function I(e){if(Array.isArray(e)){for(var n=0,t=new Array(e.length);n<e.length;n++)t[n]=e[n];return t}}function U(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function W(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function F(){return"undefined"!==typeof Reflect&&Reflect.defineMetadata&&Reflect.getOwnMetadataKeys}function Y(e,n){H(e,n),Object.getOwnPropertyNames(n.prototype).forEach((function(t){H(e.prototype,n.prototype,t)})),Object.getOwnPropertyNames(n).forEach((function(t){H(e,n,t)}))}function H(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),F()&&Y(i,e),i}var ne={prototype:!0,arguments:!0,callee:!0,caller:!0};function te(e,n,t){Object.getOwnPropertyNames(n).forEach((function(r){if(!ne[r]){var o=Object.getOwnPropertyDescriptor(e,r);if(!o||o.configurable){var a=Object.getOwnPropertyDescriptor(n,r);if(!J){if("cid"===r)return;var i=Object.getOwnPropertyDescriptor(t,r);if(!Z(a.value)&&i&&i.value===a.value)return}0,Object.defineProperty(e,r,a)}}}))}function re(e){return"function"===typeof e?ee(e):function(n){return ee(n,e)}}re.registerHooks=function(e){Q.push.apply(Q,K(e))};var oe=re,ae="__reactiveInject__";function ie(e){return $((function(n,t){"undefined"===typeof n.inject&&(n.inject={}),Array.isArray(n.inject)||(n.inject[t]=e||t)}))}function se(e){return $((function(n,t){if("undefined"===typeof n.inject&&(n.inject={}),!Array.isArray(n.inject)){var r=e?e.from||e:t,o=!!e&&e.default||void 0;n.computed||(n.computed={}),n.computed[t]=function(){var e=this[ae];return e?e[r]:o},n.inject[ae]=ae}}))}function ce(e){var n=function(){var t=this,r="function"===typeof e?e.call(this):e;for(var o in r=Object.create(r||null),r[ae]=this[ae]||{},n.managed)r[n.managed[o]]=this[o];var a=function(e){r[n.managedReactive[e]]=i[e],Object.defineProperty(r[ae],n.managedReactive[e],{enumerable:!0,get:function(){return t[e]}})},i=this;for(var o in n.managedReactive)a(o);return r};return n.managed={},n.managedReactive={},n}function ue(e){return"function"!==typeof e||!e.managed&&!e.managedReactive}function le(e){return $((function(n,t){var r=n.provide;ue(r)&&(r=n.provide=ce(r)),r.managed[t]=e||t}))}function de(e){return $((function(n,t){var r=n.provide;Array.isArray(n.inject)||(n.inject=n.inject||{},n.inject[ae]={from:ae,default:{}}),ue(r)&&(r=n.provide=ce(r)),r.managedReactive[t]=e||t}))}var fe="undefined"!==typeof Reflect&&"undefined"!==typeof Reflect.getMetadata;function pe(e,n,t){if(fe&&!Array.isArray(e)&&"function"!==typeof e&&"undefined"===typeof e.type){var r=Reflect.getMetadata("design:type",n,t);r!==Object&&(e.type=r)}}function he(e){return void 0===e&&(e={}),function(n,t){pe(e,n,t),$((function(n,t){(n.props||(n.props={}))[t]=e}))(n,t)}}function ge(e,n){void 0===n&&(n={});var t=n.deep,r=void 0!==t&&t,o=n.immediate,a=void 0!==o&&o;return $((function(n,t){"object"!==typeof n.watch&&(n.watch=Object.create(null));var o=n.watch;"object"!==typeof o[e]||Array.isArray(o[e])?"undefined"===typeof o[e]&&(o[e]=[]):o[e]=[o[e]],o[e].push({handler:t,deep:r,immediate:a})}))}function ye(e){return $((function(n,t){n.computed=n.computed||{},n.computed[t]={cache:!1,get:function(){return this.$refs[e||t]}}}))}t("22ea");var me,ve,be,we=t("0b6f");function xe(e,n){return"Australia"===e.map.name&&n.type===ve.Uranium}function ke(e,n){return n.powerPlants.filter((function(n){return!xe(e,n)})).length}(function(e){e["Coal"]="coal",e["Oil"]="oil",e["Garbage"]="garbage",e["Uranium"]="uranium"})(me||(me={})),function(e){e[e["Coal"]=0]="Coal",e[e["Oil"]=1]="Oil",e[e["Garbage"]=2]="Garbage",e[e["Uranium"]=3]="Uranium",e[e["Hybrid"]=4]="Hybrid",e[e["Wind"]=5]="Wind",e[e["Nuclear"]=6]="Nuclear",e[e["Step3"]=7]="Step3"}(ve||(ve={})),function(e){e["Order"]="Order",e["Auction"]="Auction",e["Resources"]="Resources",e["Building"]="Building",e["Bureaucracy"]="Bureaucracy",e["GameEnd"]="Game End"}(be||(be={}));var _e,Pe,Se=[2,3,4,5,6,7];function Me(e){for(var n=e.length-1;n>=0;n--)if(e[n]<2)return n;return-1}function Ce(e,n){if(!e.uraniumMineMarket)return{income:0,price:0,mines:0,cities:0};var t=n.powerPlants.filter((function(n){return xe(e,n)}));if(0===t.length)return{income:0,price:0,mines:0,cities:0};var r=t.reduce((function(e,n){return e+n.citiesPowered}),0),o=Me(e.uraniumMineMarket);if(o<0)return{income:0,price:0,mines:t.length,cities:r};var a=Se[o],i=a*r;n.money+=i,e.options.trackTotalSpent&&(n.totalIncome+=i);for(var s=0;s<t.length;s++){var c=Me(e.uraniumMineMarket);if(c<0)break;e.uraniumMineMarket[c]++}return{income:i,price:a,mines:t.length,cities:r}}function Be(e,n){if(!e.uraniumMineMarket)return 0;for(var t=0,r=0;r<n;r++){for(var o=-1,a=0;a<e.uraniumMineMarket.length;a++)if(e.uraniumMineMarket[a]>0){o=a;break}if(o<0)break;e.uraniumMineMarket[o]--,t++}return t}(function(e){e["ChoosePowerPlant"]="ChoosePowerPlant",e["Bid"]="Bid",e["DiscardPowerPlant"]="DiscardPowerPlant",e["DiscardResources"]="DiscardResources",e["BuyResource"]="BuyResource",e["Build"]="Build",e["UsePowerPlant"]="UsePowerPlant",e["Pass"]="Pass",e["Undo"]="Undo"})(_e||(_e={}));var Re=(Pe={},i(Pe,me.Coal,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Oil,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Garbage,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Uranium,[1,2,3,4,5,6,7,8,10,12,14,16]),Pe),Ae=Re,Le=(t("9cd8"),t("3a04")),Oe=t.n(Le);function je(e){}function Ge(e,n){var t,r,o=1/0,a=P(e);try{for(a.s();!(r=a.n()).done;){var i=r.value,s=n(i);s<o&&(t=i,o=s)}}catch(c){a.e(c)}finally{a.f()}return t}function De(e,n){var t=Oe.a.alea(n),r=new Map;return e.forEach((function(e,n){var o=t.int32();while(r.has(o))o=t.int32();r.set(o,n)})),_(r.keys()).sort().map((function(n){return e[r.get(n)]}))}function 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)!=_e.Pass||e.phase==be.Bureaucracy&&(null===(r=n.lastMove)||void 0===r?void 0:r.name)==_e.UsePowerPlant)&&(o[_e.Undo]=[!0,!1]));switch(e.phase){case be.Auction:if(ke(e,n)>4||e.players.length>2&&ke(e,n)>3)o[_e.DiscardPowerPlant]=n.powerPlants.filter((function(t,r){return r!=n.powerPlants.length-1&&!xe(e,t)})).map((function(e){return e.number}));else{var i=[],s=Math.max(0,n.oilLeft-n.oilCapacity);if(n.coalCapacity+n.hybridCapacity<n.coalLeft+s&&i.push(me.Coal),s=Math.max(0,n.coalLeft-n.coalCapacity),n.oilCapacity+n.hybridCapacity<n.oilLeft+s&&i.push(me.Oil),n.garbageCapacity<n.garbageLeft&&i.push(me.Garbage),n.uraniumCapacity<n.uraniumLeft&&i.push(me.Uranium),i.length>0)o[_e.DiscardResources]=i;else if(void 0==e.chosenPowerPlant){var c=e.actualMarket.filter((function(e){return n.money>=e.number}));if("Spain & Portugal"==e.map.name){var u=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));u.every((function(e){return"yellow"==e.region}))&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("Central Europe"==e.map.name){var l=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"green"==e.region||"brown"==e.region||"purple"==e.region}));0==l.length&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("UK & Ireland"==e.map.name){var d=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));d.every((function(e){return"green"==e.region}))&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("Northern Europe"==e.map.name){var f=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"purple"==e.region||"yellow"==e.region||"brown"==e.region||"pink"==e.region}));0==f.length&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}c.length>0&&(o[_e.ChoosePowerPlant]=c.map((function(e){return e.number}))),e.round>1&&(o[_e.Pass]=[!0])}else{if(e.options.fastBid?e.minimunBid<=n.money&&(o[_e.Bid]=Object(we["range"])(e.minimunBid,n.money+1)):e.currentBid?e.currentBid<n.money&&(o[_e.Bid]=Object(we["range"])(e.currentBid+1,n.money+1)):o[_e.Bid]=Object(we["range"])(e.minimunBid,n.money+1),"Spain & Portugal"==e.map.name){var p=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));p.every((function(e){return"yellow"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("Central Europe"==e.map.name){var h=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"green"==e.region||"brown"==e.region||"purple"==e.region}));0==h.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("UK & Ireland"==e.map.name){var g=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));g.every((function(e){return"green"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("Northern Europe"==e.map.name){var y=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"purple"==e.region||"yellow"==e.region||"brown"==e.region||"pink"==e.region}));0==y.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}e.options.fastBid?n.id!=e.auctioningPlayer&&(o[_e.Pass]=[!0]):null!=e.currentBid&&(o[_e.Pass]=[!0])}}break;case be.Resources:if("India"==e.map.name&&void 0!==e.chosenResource){o[_e.Pass]=[!0];break}var m,v=[];m=e.map.maxPriceAvailable?e.map.maxPriceAvailable[e.step-1]:16;var b=void 0!==e.coalResupplyNorth,w=!b||"north"!==e.chosenSide,x=b&&"south"!==e.chosenSide;if(w&&e.coalMarket>0){var k,P=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0,S=null!==(k=e.coalPrices)&&void 0!==k?k:Ae[me.Coal],M=S[S.length-e.coalMarket];n.money>=M&&n.coalCapacity+n.hybridCapacity>P+n.coalLeft&&M<=m&&v.push(b?{resource:me.Coal,side:"south"}:{resource:me.Coal})}else if(w&&"recharged"==e.options.variant&&"USA"==e.map.name&&e.coalSupply>0){var C=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0;n.money>=8&&n.coalCapacity+n.hybridCapacity>C+n.coalLeft&&v.push({resource:me.Coal})}if(w&&void 0!==e.coalStorage&&e.coalStorage>0){var B=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0;n.money>=8&&n.coalCapacity+n.hybridCapacity>B+n.coalLeft&&8<=m&&v.push({resource:me.Coal,fromStorage:!0})}if(x&&e.coalMarketNorth>0){var R=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0,A=e.coalPricesNorth,L=A[A.length-e.coalMarketNorth];n.money>=L&&n.coalCapacity+n.hybridCapacity>R+n.coalLeft&&L<=m&&v.push({resource:me.Coal,side:"north"})}if(w&&e.oilMarket>0){var O,j=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,G=null!==(O=e.oilPrices)&&void 0!==O?O:Ae[me.Oil],D=G[G.length-e.oilMarket];n.money>=D&&n.oilCapacity+n.hybridCapacity>j+n.oilLeft&&D<=m&&v.push(b?{resource:me.Oil,side:"south"}:{resource:me.Oil})}if(x&&e.oilMarketNorth>0){var z=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,N=e.oilPricesNorth,T=N[N.length-e.oilMarketNorth];n.money>=T&&n.oilCapacity+n.hybridCapacity>z+n.oilLeft&&T<=m&&v.push({resource:me.Oil,side:"north"})}if(w&&e.garbageMarket>0){var E,K=null!==(E=e.garbagePrices)&&void 0!==E?E:Ae[me.Garbage],I=K[K.length-e.garbageMarket];if("Central Europe"==e.map.name){var U=n.cities.filter((function(e){return"Wien"==e.name}));(null===U||void 0===U?void 0:U.length)>0&&I--}n.money>=I&&n.garbageCapacity>n.garbageLeft&&I<=m&&v.push(b?{resource:me.Garbage,side:"south"}:{resource:me.Garbage})}if(x&&e.garbageMarketNorth>0){var W=e.garbagePricesNorth,F=W[W.length-e.garbageMarketNorth];n.money>=F&&n.garbageCapacity>n.garbageLeft&&F<=m&&v.push({resource:me.Garbage,side:"north"})}if(w&&e.uraniumMarket>0){var Y,H=null!==(Y=e.uraniumPrices)&&void 0!==Y?Y:Ae[me.Uranium],V=H[H.length-e.uraniumMarket];n.money>=V&&n.uraniumCapacity>n.uraniumLeft&&V<=m&&v.push(b?{resource:me.Uranium,side:"south"}:{resource:me.Uranium})}v.length>0&&(o[_e.BuyResource]=v),o[_e.Pass]=[!0];break;case be.Building:if(n.cities.length<21){var J,$,q="Japan"===e.map.name,Z=q?new Set(null!==(J=e.map.startingCities)&&void 0!==J?J:[]):new Set;if(0==n.cities.length){var X=q?e.map.cities.filter((function(e){return Z.has(e.name)})):e.map.cities;$=X.map((function(e){return{name:e.name,price:0}}))}else if(q&&1===e.round)$=e.map.cities.filter((function(e){return Z.has(e.name)})).map((function(e){return{name:e.name,price:0}}));else if($=Te(e,n).map((function(e){return{name:e.name,price:e.price}})),q&&!n.usedFreeJump&&Ne(e.map.connections,n.cities.map((function(e){return e.name})))<2){var Q=[];Z.forEach((function(e){n.cities.find((function(n){return n.name===e}))||Q.push({name:e,price:0,freeJump:!0})})),$=[].concat(_($),Q)}$.forEach((function(t){var r=e.map.cities.find((function(e){return e.name==t.name}));if(r){var o=e.players.filter((function(e){return e.cities.find((function(e){return t.name==e.name}))})).length;if(r.transregional){if(e.step<2)return void(t.price=9999);var a=r.slotCosts,i=r.stepSlots?r.stepSlots[e.step-1]:e.step,s=a?a.length:3;return o>=i||o>=s?t.price=9999:t.price+=a?a[o]:3==e.step?20:15,void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999))}if(r.island&&void 0!==e.map.crossIslandSurcharge&&n.cities.length>0){var c=new Set(n.cities.map((function(n){var t;return null===(t=e.map.cities.find((function(e){return e.name==n.name})))||void 0===t?void 0:t.island})).filter((function(e){return!!e})));if(!c.has(r.island))return t.price=10+5*o+e.map.crossIslandSurcharge,o==e.step&&(t.price=9999),void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999))}if(r.singleOccupancy)return 0==n.cities.length||o>=1?void(t.price=9999):void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999));"Australia"==e.map.name&&n.cities.length>0&&(t.price=Math.min(t.price,20));var u=r.slotCosts,l=r.stepSlots?r.stepSlots[e.step-1]:e.step,d=u?u.length:3;o>=l||o>=d?t.price=9999:t.price+=u?u[o]:10+5*o,n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999)}else t.price=9999})),$=$.filter((function(e){return e.price<=n.money})),$.length>0&&(o[_e.Build]=$)}o[_e.Pass]=[!0];break;case be.Bureaucracy:var ee=[];n.powerPlants.forEach((function(t){if(!xe(e,t)&&n.powerPlantsNotUsed.includes(t.number))switch(t.type){case ve.Coal:n.coalLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Coal),citiesPowered:t.citiesPowered});break;case ve.Oil:n.oilLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Oil),citiesPowered:t.citiesPowered});break;case ve.Garbage:n.garbageLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Garbage),citiesPowered:t.citiesPowered});break;case ve.Uranium:n.uraniumLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Uranium),citiesPowered:t.citiesPowered});break;case ve.Wind:case ve.Nuclear:ee.push({powerPlant:t.number,resourcesSpent:[],citiesPowered:t.citiesPowered});break;case ve.Hybrid:var r;if(n.coalLeft+n.oilLeft>=t.cost)r=1==t.cost?[[me.Coal],[me.Oil]]:2==t.cost?[[me.Coal,me.Coal],[me.Coal,me.Oil],[me.Oil,me.Oil]]:[[me.Coal,me.Coal,me.Coal],[me.Coal,me.Coal,me.Oil],[me.Coal,me.Oil,me.Oil],[me.Oil,me.Oil,me.Oil]],r.forEach((function(e){e.filter((function(e){return e==me.Coal})).length<=n.coalLeft&&e.filter((function(e){return e==me.Oil})).length<=n.oilLeft&&ee.push({powerPlant:t.number,resourcesSpent:e,citiesPowered:t.citiesPowered})}))}})),ee.length>0&&(o[_e.UsePowerPlant]=ee),("India"!=e.map.name||n.citiesPowered>=n.targetCitiesPowered||n.isAI)&&(o[_e.Pass]=[!0]);break}return o}function Ne(e,n){var t,r=new Set(n),o=new Set,a=0,i=P(n);try{for(i.s();!(t=i.n()).done;){var s=t.value;if(!o.has(s)){a++;var c=[s],u=function(){var n=c.pop();if(o.has(n))return"continue";o.add(n);var t,a=P(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;if(i.nodes.includes(n)){var s=i.nodes.find((function(e){return e!==n}));r.has(s)&&!o.has(s)&&c.push(s)}}}catch(u){a.e(u)}finally{a.f()}};while(c.length>0)u()}}}catch(l){i.e(l)}finally{i.f()}return a}function Te(e,n){var t=e.map.cities.map((function(e){return{name:e.name,price:n.cities.find((function(n){return n.name==e.name}))?0:9999,visited:!1}})),r=t.find((function(e){return e.name==n.cities[0].name}));if(!r)return t;r.price=0;var o=r;while(1){var a=e.map.connections.filter((function(e){return e.nodes.includes(o.name)}));a.forEach((function(e){var r=e.nodes.filter((function(e){return e!=o.name}))[0],a=t.find((function(e){return e.name==r})),i=n.cities.find((function(e){return e.name==a.name}))?0:o.price+e.cost;!a.visited&&a.price>i&&(a.price=i)})),o.visited=!0;var i=t.filter((function(e){return!e.visited})),s=Ge(i,(function(e){return e.price}));if(!s||s.price>n.money)break;o=s}return t}t("a516"),t("7f32"),t("ec9f"),t("da71"),t("4311");var Ee,Ke,Ie=t("4cd2"),Ue=t.n(Ie);(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(Ee||(Ee={})),function(e){e["Seattle"]="Seattle",e["Portland"]="Portland",e["Boise"]="Boise",e["Billings"]="Billings",e["Cheyenne"]="Cheyenne",e["Denver"]="Denver",e["Omaha"]="Omaha",e["SanFrancisco"]="San Francisco",e["LosAngeles"]="Los Angeles",e["SanDiego"]="San Diego",e["LasVegas"]="Las Vegas",e["SaltLakeCity"]="Salt Lake City",e["Phoenix"]="Phoenix",e["SantaFe"]="Santa Fe",e["KansasCity"]="Kansas City",e["OklahomaCity"]="Oklahoma City",e["Dallas"]="Dallas",e["Houston"]="Houston",e["Memphis"]="Memphis",e["Birmingham"]="Birmingham",e["NewOrleans"]="New Orleans",e["Fargo"]="Fargo",e["Duluth"]="Duluth",e["Minneapolis"]="Minneapolis",e["Chicago"]="Chicago",e["StLouis"]="St. Louis",e["Cincinnati"]="Cincinnati",e["Knoxvile"]="Knoxvile",e["Detroit"]="Detroit",e["Buffalo"]="Buffalo",e["Pittsburgh"]="Pittsburgh",e["Boston"]="Boston",e["NewYork"]="New York",e["Philadelphia"]="Philadelphia",e["Washington"]="Washington",e["Norfolk"]="Norfolk",e["Raleigh"]="Raleigh",e["Atlanta"]="Atlanta",e["Savannah"]="Savannah",e["Jacksonvile"]="Jacksonvile",e["Tampa"]="Tampa",e["Miami"]="Miami"}(Ke||(Ke={}));var We,Fe,Ye={name:"USA",cities:[{name:Ke.Seattle,region:Ee.Purple,x:74,y:99},{name:Ke.Portland,region:Ee.Purple,x:45,y:167},{name:Ke.Boise,region:Ee.Purple,x:180,y:220},{name:Ke.Billings,region:Ee.Purple,x:345,y:180},{name:Ke.Cheyenne,region:Ee.Purple,x:410,y:280},{name:Ke.Denver,region:Ee.Purple,x:400,y:333},{name:Ke.Omaha,region:Ee.Purple,x:566,y:293},{name:Ke.SanFrancisco,region:Ee.Cyan,x:48,y:371},{name:Ke.LosAngeles,region:Ee.Cyan,x:116,y:460},{name:Ke.SanDiego,region:Ee.Cyan,x:157,y:507},{name:Ke.LasVegas,region:Ee.Cyan,x:200,y:410},{name:Ke.SaltLakeCity,region:Ee.Cyan,x:266,y:311},{name:Ke.Phoenix,region:Ee.Cyan,x:260,y:486},{name:Ke.SantaFe,region:Ee.Cyan,x:371,y:435},{name:Ke.KansasCity,region:Ee.Red,x:587,y:356},{name:Ke.OklahomaCity,region:Ee.Red,x:550,y:437},{name:Ke.Dallas,region:Ee.Red,x:560,y:504},{name:Ke.Houston,region:Ee.Red,x:569,y:571},{name:Ke.Memphis,region:Ee.Red,x:678,y:449},{name:Ke.Birmingham,region:Ee.Red,x:739,y:486},{name:Ke.NewOrleans,region:Ee.Red,x:674,y:570},{name:Ke.Fargo,region:Ee.Yellow,x:551,y:152},{name:Ke.Duluth,region:Ee.Yellow,x:637,y:133},{name:Ke.Minneapolis,region:Ee.Yellow,x:621,y:190},{name:Ke.Chicago,region:Ee.Yellow,x:716,y:281},{name:Ke.StLouis,region:Ee.Yellow,x:678,y:362},{name:Ke.Cincinnati,region:Ee.Yellow,x:795,y:348},{name:Ke.Knoxvile,region:Ee.Yellow,x:796,y:422},{name:Ke.Detroit,region:Ee.Brown,x:803,y:262},{name:Ke.Buffalo,region:Ee.Brown,x:913,y:251},{name:Ke.Pittsburgh,region:Ee.Brown,x:884,y:316},{name:Ke.Boston,region:Ee.Brown,x:1052,y:252},{name:Ke.NewYork,region:Ee.Brown,x:1010,y:290},{name:Ke.Philadelphia,region:Ee.Brown,x:985,y:330},{name:Ke.Washington,region:Ee.Brown,x:934,y:357},{name:Ke.Norfolk,region:Ee.Green,x:969,y:405},{name:Ke.Raleigh,region:Ee.Green,x:915,y:437},{name:Ke.Atlanta,region:Ee.Green,x:801,y:487},{name:Ke.Savannah,region:Ee.Green,x:867,y:507},{name:Ke.Jacksonvile,region:Ee.Green,x:861,y:559},{name:Ke.Tampa,region:Ee.Green,x:819,y:621},{name:Ke.Miami,region:Ee.Green,x:883,y:670}],connections:[{nodes:[Ke.Seattle,Ke.Portland],cost:3},{nodes:[Ke.Seattle,Ke.Boise],cost:12},{nodes:[Ke.Seattle,Ke.Billings],cost:9},{nodes:[Ke.Portland,Ke.Boise],cost:13},{nodes:[Ke.Portland,Ke.SanFrancisco],cost:24},{nodes:[Ke.Boise,Ke.Billings],cost:12},{nodes:[Ke.Boise,Ke.Cheyenne],cost:24},{nodes:[Ke.Boise,Ke.SanFrancisco],cost:23},{nodes:[Ke.Boise,Ke.SaltLakeCity],cost:8},{nodes:[Ke.Billings,Ke.Cheyenne],cost:9},{nodes:[Ke.Billings,Ke.Fargo],cost:17},{nodes:[Ke.Billings,Ke.Minneapolis],cost:18},{nodes:[Ke.Cheyenne,Ke.Denver],cost:0},{nodes:[Ke.Cheyenne,Ke.Omaha],cost:14},{nodes:[Ke.Cheyenne,Ke.Minneapolis],cost:18},{nodes:[Ke.Denver,Ke.SaltLakeCity],cost:21},{nodes:[Ke.Denver,Ke.SantaFe],cost:13},{nodes:[Ke.Denver,Ke.KansasCity],cost:16},{nodes:[Ke.Omaha,Ke.KansasCity],cost:5},{nodes:[Ke.Omaha,Ke.Minneapolis],cost:8},{nodes:[Ke.Omaha,Ke.Chicago],cost:13},{nodes:[Ke.SanFrancisco,Ke.LosAngeles],cost:9},{nodes:[Ke.SanFrancisco,Ke.LasVegas],cost:14},{nodes:[Ke.SanFrancisco,Ke.SaltLakeCity],cost:27},{nodes:[Ke.LosAngeles,Ke.SanDiego],cost:3},{nodes:[Ke.LosAngeles,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.Phoenix],cost:14},{nodes:[Ke.LasVegas,Ke.SaltLakeCity],cost:18},{nodes:[Ke.LasVegas,Ke.Phoenix],cost:15},{nodes:[Ke.LasVegas,Ke.SantaFe],cost:27},{nodes:[Ke.SaltLakeCity,Ke.SantaFe],cost:28},{nodes:[Ke.Phoenix,Ke.SantaFe],cost:18},{nodes:[Ke.SantaFe,Ke.KansasCity],cost:16},{nodes:[Ke.SantaFe,Ke.OklahomaCity],cost:15},{nodes:[Ke.SantaFe,Ke.Dallas],cost:16},{nodes:[Ke.SantaFe,Ke.Houston],cost:21},{nodes:[Ke.KansasCity,Ke.OklahomaCity],cost:8},{nodes:[Ke.KansasCity,Ke.Memphis],cost:12},{nodes:[Ke.KansasCity,Ke.Chicago],cost:8},{nodes:[Ke.KansasCity,Ke.StLouis],cost:6},{nodes:[Ke.OklahomaCity,Ke.Dallas],cost:3},{nodes:[Ke.OklahomaCity,Ke.Memphis],cost:14},{nodes:[Ke.Dallas,Ke.Houston],cost:5},{nodes:[Ke.Dallas,Ke.Memphis],cost:12},{nodes:[Ke.Dallas,Ke.NewOrleans],cost:12},{nodes:[Ke.Houston,Ke.NewOrleans],cost:8},{nodes:[Ke.Memphis,Ke.Birmingham],cost:6},{nodes:[Ke.Memphis,Ke.NewOrleans],cost:7},{nodes:[Ke.Memphis,Ke.StLouis],cost:7},{nodes:[Ke.Birmingham,Ke.NewOrleans],cost:11},{nodes:[Ke.Birmingham,Ke.Atlanta],cost:3},{nodes:[Ke.Birmingham,Ke.Jacksonvile],cost:9},{nodes:[Ke.NewOrleans,Ke.Jacksonvile],cost:16},{nodes:[Ke.Fargo,Ke.Duluth],cost:6},{nodes:[Ke.Fargo,Ke.Minneapolis],cost:6},{nodes:[Ke.Duluth,Ke.Minneapolis],cost:5},{nodes:[Ke.Duluth,Ke.Chicago],cost:12},{nodes:[Ke.Duluth,Ke.Detroit],cost:15},{nodes:[Ke.Minneapolis,Ke.Chicago],cost:8},{nodes:[Ke.Chicago,Ke.StLouis],cost:10},{nodes:[Ke.Chicago,Ke.Cincinnati],cost:7},{nodes:[Ke.Chicago,Ke.Detroit],cost:7},{nodes:[Ke.StLouis,Ke.Cincinnati],cost:12},{nodes:[Ke.StLouis,Ke.Atlanta],cost:12},{nodes:[Ke.Cincinnati,Ke.Knoxvile],cost:6},{nodes:[Ke.Cincinnati,Ke.Detroit],cost:4},{nodes:[Ke.Cincinnati,Ke.Pittsburgh],cost:7},{nodes:[Ke.Cincinnati,Ke.Raleigh],cost:15},{nodes:[Ke.Knoxvile,Ke.Atlanta],cost:5},{nodes:[Ke.Detroit,Ke.Buffalo],cost:7},{nodes:[Ke.Detroit,Ke.Pittsburgh],cost:6},{nodes:[Ke.Buffalo,Ke.Pittsburgh],cost:7},{nodes:[Ke.Buffalo,Ke.NewYork],cost:8},{nodes:[Ke.Pittsburgh,Ke.Washington],cost:6},{nodes:[Ke.Pittsburgh,Ke.Raleigh],cost:7},{nodes:[Ke.Boston,Ke.NewYork],cost:3},{nodes:[Ke.NewYork,Ke.Philadelphia],cost:0},{nodes:[Ke.Philadelphia,Ke.Washington],cost:3},{nodes:[Ke.Washington,Ke.Norfolk],cost:5},{nodes:[Ke.Norfolk,Ke.Raleigh],cost:3},{nodes:[Ke.Raleigh,Ke.Atlanta],cost:7},{nodes:[Ke.Raleigh,Ke.Savannah],cost:7},{nodes:[Ke.Atlanta,Ke.Savannah],cost:7},{nodes:[Ke.Savannah,Ke.Jacksonvile],cost:0},{nodes:[Ke.Jacksonvile,Ke.Tampa],cost:4},{nodes:[Ke.Tampa,Ke.Miami],cost:4}],layout:"Landscape",polygons:[{region:Ee.Brown,points:[[930,423],[1082,331],[1075,231],[716,249],[758,303],[897,406]]},{region:Ee.Green,points:[[898,405],[762,499],[758,643],[887,744],[938,688],[889,618],[1014,432],[985,387],[929,420]]},{region:Ee.Yellow,points:[[895,403],[760,499],[630,393],[607,345],[608,275],[439,162],[654,114],[771,245],[716,247],[758,301]]},{region:Ee.Red,points:[[606,344],[476,371],[445,597],[546,664],[758,641],[760,497],[629,391]]},{region:Ee.Purple,points:[[606,342],[476,369],[347,395],[313,301],[18,287],[18,165],[76,74],[438,160],[607,275]]},{region:Ee.Cyan,points:[[18,285],[20,429],[142,583],[445,594],[476,368],[346,392],[312,300]]}]},He={name:"USA",cities:[{name:Ke.Seattle,region:Ee.Purple,x:74,y:99},{name:Ke.Portland,region:Ee.Purple,x:45,y:167},{name:Ke.Boise,region:Ee.Purple,x:180,y:220},{name:Ke.Billings,region:Ee.Purple,x:345,y:180},{name:Ke.Cheyenne,region:Ee.Purple,x:410,y:280},{name:Ke.Denver,region:Ee.Purple,x:400,y:333},{name:Ke.Omaha,region:Ee.Purple,x:566,y:293},{name:Ke.SanFrancisco,region:Ee.Cyan,x:48,y:371},{name:Ke.LosAngeles,region:Ee.Cyan,x:116,y:460},{name:Ke.SanDiego,region:Ee.Cyan,x:157,y:507},{name:Ke.LasVegas,region:Ee.Cyan,x:200,y:410},{name:Ke.SaltLakeCity,region:Ee.Cyan,x:266,y:311},{name:Ke.Phoenix,region:Ee.Cyan,x:260,y:486},{name:Ke.SantaFe,region:Ee.Cyan,x:371,y:435},{name:Ke.KansasCity,region:Ee.Red,x:587,y:356},{name:Ke.OklahomaCity,region:Ee.Red,x:550,y:437},{name:Ke.Dallas,region:Ee.Red,x:560,y:504},{name:Ke.Houston,region:Ee.Red,x:569,y:571},{name:Ke.Memphis,region:Ee.Red,x:678,y:449},{name:Ke.Birmingham,region:Ee.Red,x:739,y:486},{name:Ke.NewOrleans,region:Ee.Red,x:674,y:570},{name:Ke.Fargo,region:Ee.Yellow,x:551,y:152},{name:Ke.Duluth,region:Ee.Yellow,x:637,y:133},{name:Ke.Minneapolis,region:Ee.Yellow,x:621,y:190},{name:Ke.Chicago,region:Ee.Yellow,x:716,y:281},{name:Ke.StLouis,region:Ee.Yellow,x:678,y:362},{name:Ke.Cincinnati,region:Ee.Yellow,x:795,y:348},{name:Ke.Knoxvile,region:Ee.Yellow,x:796,y:422},{name:Ke.Detroit,region:Ee.Brown,x:803,y:262},{name:Ke.Buffalo,region:Ee.Brown,x:913,y:251},{name:Ke.Pittsburgh,region:Ee.Brown,x:884,y:316},{name:Ke.Boston,region:Ee.Brown,x:1052,y:252},{name:Ke.NewYork,region:Ee.Brown,x:1010,y:290},{name:Ke.Philadelphia,region:Ee.Brown,x:985,y:330},{name:Ke.Washington,region:Ee.Brown,x:934,y:357},{name:Ke.Norfolk,region:Ee.Green,x:969,y:405},{name:Ke.Raleigh,region:Ee.Green,x:915,y:437},{name:Ke.Atlanta,region:Ee.Green,x:801,y:487},{name:Ke.Savannah,region:Ee.Green,x:867,y:507},{name:Ke.Jacksonvile,region:Ee.Green,x:861,y:559},{name:Ke.Tampa,region:Ee.Green,x:819,y:621},{name:Ke.Miami,region:Ee.Green,x:883,y:670}],connections:[{nodes:[Ke.Seattle,Ke.Portland],cost:3},{nodes:[Ke.Seattle,Ke.Boise],cost:12},{nodes:[Ke.Seattle,Ke.Billings],cost:9},{nodes:[Ke.Portland,Ke.Boise],cost:13},{nodes:[Ke.Portland,Ke.SanFrancisco],cost:24},{nodes:[Ke.Boise,Ke.Billings],cost:12},{nodes:[Ke.Boise,Ke.SanFrancisco],cost:23},{nodes:[Ke.Boise,Ke.SaltLakeCity],cost:8},{nodes:[Ke.Billings,Ke.Cheyenne],cost:9},{nodes:[Ke.Billings,Ke.Fargo],cost:17},{nodes:[Ke.Billings,Ke.Minneapolis],cost:18},{nodes:[Ke.Cheyenne,Ke.Denver],cost:0},{nodes:[Ke.Cheyenne,Ke.Omaha],cost:14},{nodes:[Ke.Cheyenne,Ke.Minneapolis],cost:18},{nodes:[Ke.Denver,Ke.SaltLakeCity],cost:21},{nodes:[Ke.Denver,Ke.SantaFe],cost:13},{nodes:[Ke.Denver,Ke.KansasCity],cost:16},{nodes:[Ke.Omaha,Ke.KansasCity],cost:5},{nodes:[Ke.Omaha,Ke.Minneapolis],cost:8},{nodes:[Ke.Omaha,Ke.Chicago],cost:12},{nodes:[Ke.SanFrancisco,Ke.LosAngeles],cost:9},{nodes:[Ke.SanFrancisco,Ke.LasVegas],cost:14},{nodes:[Ke.SanFrancisco,Ke.SaltLakeCity],cost:27},{nodes:[Ke.LosAngeles,Ke.SanDiego],cost:3},{nodes:[Ke.LosAngeles,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.Phoenix],cost:14},{nodes:[Ke.LasVegas,Ke.SaltLakeCity],cost:18},{nodes:[Ke.LasVegas,Ke.Phoenix],cost:15},{nodes:[Ke.LasVegas,Ke.SantaFe],cost:27},{nodes:[Ke.SaltLakeCity,Ke.SantaFe],cost:28},{nodes:[Ke.Phoenix,Ke.SantaFe],cost:18},{nodes:[Ke.SantaFe,Ke.KansasCity],cost:16},{nodes:[Ke.SantaFe,Ke.OklahomaCity],cost:15},{nodes:[Ke.SantaFe,Ke.Dallas],cost:16},{nodes:[Ke.SantaFe,Ke.Houston],cost:20},{nodes:[Ke.KansasCity,Ke.OklahomaCity],cost:8},{nodes:[Ke.KansasCity,Ke.Memphis],cost:12},{nodes:[Ke.KansasCity,Ke.Chicago],cost:8},{nodes:[Ke.KansasCity,Ke.StLouis],cost:6},{nodes:[Ke.OklahomaCity,Ke.Dallas],cost:3},{nodes:[Ke.OklahomaCity,Ke.Memphis],cost:14},{nodes:[Ke.Dallas,Ke.Houston],cost:5},{nodes:[Ke.Dallas,Ke.Memphis],cost:12},{nodes:[Ke.Dallas,Ke.NewOrleans],cost:12},{nodes:[Ke.Houston,Ke.NewOrleans],cost:8},{nodes:[Ke.Memphis,Ke.Birmingham],cost:6},{nodes:[Ke.Memphis,Ke.NewOrleans],cost:7},{nodes:[Ke.Memphis,Ke.StLouis],cost:7},{nodes:[Ke.Birmingham,Ke.NewOrleans],cost:11},{nodes:[Ke.Birmingham,Ke.Atlanta],cost:3},{nodes:[Ke.Birmingham,Ke.Jacksonvile],cost:9},{nodes:[Ke.NewOrleans,Ke.Jacksonvile],cost:16},{nodes:[Ke.Fargo,Ke.Duluth],cost:6},{nodes:[Ke.Fargo,Ke.Minneapolis],cost:6},{nodes:[Ke.Duluth,Ke.Minneapolis],cost:5},{nodes:[Ke.Duluth,Ke.Chicago],cost:12},{nodes:[Ke.Duluth,Ke.Detroit],cost:15},{nodes:[Ke.Minneapolis,Ke.Chicago],cost:8},{nodes:[Ke.Chicago,Ke.StLouis],cost:10},{nodes:[Ke.Chicago,Ke.Cincinnati],cost:7},{nodes:[Ke.Chicago,Ke.Detroit],cost:7},{nodes:[Ke.StLouis,Ke.Cincinnati],cost:12},{nodes:[Ke.StLouis,Ke.Atlanta],cost:12},{nodes:[Ke.Cincinnati,Ke.Knoxvile],cost:6},{nodes:[Ke.Cincinnati,Ke.Detroit],cost:4},{nodes:[Ke.Cincinnati,Ke.Pittsburgh],cost:7},{nodes:[Ke.Knoxvile,Ke.Atlanta],cost:5},{nodes:[Ke.Knoxvile,Ke.Raleigh],cost:11},{nodes:[Ke.Detroit,Ke.Buffalo],cost:7},{nodes:[Ke.Detroit,Ke.Pittsburgh],cost:6},{nodes:[Ke.Buffalo,Ke.Pittsburgh],cost:7},{nodes:[Ke.Buffalo,Ke.NewYork],cost:8},{nodes:[Ke.Pittsburgh,Ke.Washington],cost:6},{nodes:[Ke.Pittsburgh,Ke.Raleigh],cost:7},{nodes:[Ke.Boston,Ke.NewYork],cost:3},{nodes:[Ke.NewYork,Ke.Philadelphia],cost:0},{nodes:[Ke.Philadelphia,Ke.Washington],cost:3},{nodes:[Ke.Washington,Ke.Norfolk],cost:5},{nodes:[Ke.Norfolk,Ke.Raleigh],cost:3},{nodes:[Ke.Raleigh,Ke.Atlanta],cost:7},{nodes:[Ke.Raleigh,Ke.Savannah],cost:7},{nodes:[Ke.Atlanta,Ke.Savannah],cost:7},{nodes:[Ke.Savannah,Ke.Jacksonvile],cost:0},{nodes:[Ke.Jacksonvile,Ke.Tampa],cost:4},{nodes:[Ke.Tampa,Ke.Miami],cost:4}],layout:"Landscape",mapSpecificRules:"You can buy coal from the supply for $8."},Ve=[{number:3,type:ve.Oil,cost:2,citiesPowered:1},{number:4,type:ve.Coal,cost:2,citiesPowered:1},{number:5,type:ve.Hybrid,cost:2,citiesPowered:1},{number:6,type:ve.Garbage,cost:1,citiesPowered:1},{number:7,type:ve.Oil,cost:3,citiesPowered:2},{number:8,type:ve.Coal,cost:3,citiesPowered:2},{number:9,type:ve.Oil,cost:1,citiesPowered:1},{number:10,type:ve.Coal,cost:2,citiesPowered:2},{number:11,type:ve.Uranium,cost:1,citiesPowered:2},{number:12,type:ve.Hybrid,cost:2,citiesPowered:2},{number:13,type:ve.Wind,cost:0,citiesPowered:1},{number:14,type:ve.Garbage,cost:2,citiesPowered:2},{number:15,type:ve.Coal,cost:2,citiesPowered:3},{number:16,type:ve.Oil,cost:2,citiesPowered:3},{number:17,type:ve.Uranium,cost:1,citiesPowered:2},{number:18,type:ve.Wind,cost:0,citiesPowered:2},{number:19,type:ve.Garbage,cost:2,citiesPowered:3},{number:20,type:ve.Coal,cost:3,citiesPowered:5},{number:21,type:ve.Hybrid,cost:2,citiesPowered:4},{number:22,type:ve.Wind,cost:0,citiesPowered:2},{number:23,type:ve.Uranium,cost:1,citiesPowered:3},{number:24,type:ve.Garbage,cost:2,citiesPowered:4},{number:25,type:ve.Coal,cost:2,citiesPowered:5},{number:26,type:ve.Oil,cost:2,citiesPowered:5},{number:27,type:ve.Wind,cost:0,citiesPowered:3},{number:28,type:ve.Uranium,cost:1,citiesPowered:4},{number:29,type:ve.Hybrid,cost:1,citiesPowered:4},{number:30,type:ve.Garbage,cost:3,citiesPowered:6},{number:31,type:ve.Coal,cost:3,citiesPowered:6},{number:32,type:ve.Oil,cost:3,citiesPowered:6},{number:33,type:ve.Wind,cost:0,citiesPowered:4},{number:34,type:ve.Uranium,cost:1,citiesPowered:5},{number:35,type:ve.Oil,cost:1,citiesPowered:5},{number:36,type:ve.Coal,cost:3,citiesPowered:7},{number:37,type:ve.Wind,cost:0,citiesPowered:4},{number:38,type:ve.Garbage,cost:3,citiesPowered:7},{number:39,type:ve.Uranium,cost:1,citiesPowered:6},{number:40,type:ve.Oil,cost:2,citiesPowered:6},{number:42,type:ve.Coal,cost:2,citiesPowered:6},{number:44,type:ve.Wind,cost:0,citiesPowered:5},{number:46,type:ve.Hybrid,cost:3,citiesPowered:7},{number:50,type:ve.Nuclear,cost:0,citiesPowered:6},{number:99,type:ve.Step3,cost:0,citiesPowered:6}],Je=Object(we["cloneDeep"])(Ve).filter((function(e){return 11!=e.number}));Je.forEach((function(e){e.type==ve.Garbage&&(e.storage=2*e.cost,e.cost++)})),function(e){e["Pink"]="pink",e["Brown"]="brown",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow"}(We||(We={})),function(e){e["Hobart"]="Hobart",e["Launceston"]="Launceston",e["Geelong"]="Geelong",e["Melbourne1"]="Melbourne 1",e["Melbourne2"]="Melbourne 2",e["Bendigo"]="Bendigo",e["Albury"]="Albury",e["Wollongong"]="Wollongong",e["Mildura"]="Mildura",e["Dubbo"]="Dubbo",e["Canberra"]="Canberra",e["Sydney1"]="Sydney 1",e["Sydney2"]="Sydney 2",e["Newcastle"]="Newcastle",e["Toowoomba"]="Toowoomba",e["Goldcoast"]="Gold Coast",e["Brisbane"]="Brisbane",e["Rockhampton"]="Rockhampton",e["Mackay"]="Mackay",e["Townsville"]="Townsville",e["Cairns"]="Cairns",e["Porthedland"]="Port Hedland",e["Broome"]="Broome",e["Albany"]="Albany",e["Bunbury"]="Bunbury",e["Perth"]="Perth",e["Kalgoorlie"]="Kalgoorlie",e["Geraldton"]="Geraldton",e["Darwin"]="Darwin",e["Katherine"]="Katherine",e["Tennantcreek"]="Tennant Creek",e["Alicesprings"]="Alice Springs",e["Portaugusta"]="Port Augusta",e["CooberPedy"]="Coober Pedy",e["Adelaide"]="Adelaide"}(Fe||(Fe={}));var $e,qe,Ze={name:"Australia",layout:"Landscape",adjustRatio:[.33,.33],mapPosition:[40,-30],mapRotation:180,cities:[{name:Fe.Hobart,region:We.Pink,x:540,y:467},{name:Fe.Launceston,region:We.Pink,x:720,y:500},{name:Fe.Geelong,region:We.Pink,x:988,y:712},{name:Fe.Melbourne1,region:We.Pink,x:790,y:650},{name:Fe.Melbourne2,region:We.Pink,x:790,y:790},{name:Fe.Bendigo,region:We.Pink,x:1052,y:870},{name:Fe.Albury,region:We.Brown,x:810,y:983},{name:Fe.Wollongong,region:We.Brown,x:530,y:1080},{name:Fe.Mildura,region:We.Pink,x:1185,y:1010},{name:Fe.Dubbo,region:We.Brown,x:891,y:1364},{name:Fe.Canberra,region:We.Brown,x:804,y:1188},{name:Fe.Sydney1,region:We.Brown,x:550,y:1230},{name:Fe.Sydney2,region:We.Brown,x:550,y:1380},{name:Fe.Newcastle,region:We.Brown,x:530,y:1545},{name:Fe.Toowoomba,region:We.Green,x:1010,y:1660},{name:Fe.Goldcoast,region:We.Green,x:660,y:1730},{name:Fe.Brisbane,region:We.Green,x:740,y:1885},{name:Fe.Rockhampton,region:We.Green,x:1040,y:1987},{name:Fe.Mackay,region:We.Green,x:1260,y:2101},{name:Fe.Townsville,region:We.Green,x:1445,y:2193},{name:Fe.Cairns,region:We.Green,x:1652,y:2209},{name:Fe.Porthedland,region:We.Red,x:2741,y:2002},{name:Fe.Broome,region:We.Red,x:2503,y:2175},{name:Fe.Albany,region:We.Red,x:2400,y:850},{name:Fe.Bunbury,region:We.Red,x:2700,y:1030},{name:Fe.Perth,region:We.Red,x:2680,y:1230},{name:Fe.Kalgoorlie,region:We.Red,x:2177,y:1295},{name:Fe.Geraldton,region:We.Red,x:2747,y:1557},{name:Fe.Darwin,region:We.Yellow,x:2264,y:2016},{name:Fe.Katherine,region:We.Yellow,x:2105,y:1947},{name:Fe.Tennantcreek,region:We.Yellow,x:1905,y:1736},{name:Fe.Alicesprings,region:We.Yellow,x:1803,y:1512},{name:Fe.Portaugusta,region:We.Yellow,x:1520,y:1094},{name:Fe.CooberPedy,region:We.Yellow,x:1850,y:1232},{name:Fe.Adelaide,region:We.Yellow,x:1430,y:863}],connections:[{nodes:[Fe.Broome,Fe.Porthedland],cost:13},{nodes:[Fe.Kalgoorlie,Fe.Geraldton],cost:16},{nodes:[Fe.Geraldton,Fe.Perth],cost:9},{nodes:[Fe.Perth,Fe.Kalgoorlie],cost:12},{nodes:[Fe.Kalgoorlie,Fe.Albany],cost:16},{nodes:[Fe.Albany,Fe.Perth],cost:9},{nodes:[Fe.Perth,Fe.Bunbury],cost:4},{nodes:[Fe.Bunbury,Fe.Albany],cost:6},{nodes:[Fe.Cairns,Fe.Townsville],cost:9},{nodes:[Fe.Townsville,Fe.Mackay],cost:9},{nodes:[Fe.Mackay,Fe.Rockhampton],cost:8},{nodes:[Fe.Rockhampton,Fe.Toowoomba],cost:15},{nodes:[Fe.Toowoomba,Fe.Brisbane],cost:5},{nodes:[Fe.Brisbane,Fe.Rockhampton],cost:15},{nodes:[Fe.Brisbane,Fe.Goldcoast],cost:2},{nodes:[Fe.Goldcoast,Fe.Toowoomba],cost:6},{nodes:[Fe.Goldcoast,Fe.Newcastle],cost:15},{nodes:[Fe.Newcastle,Fe.Sydney2],cost:4},{nodes:[Fe.Sydney2,Fe.Sydney1],cost:0},{nodes:[Fe.Newcastle,Fe.Dubbo],cost:10},{nodes:[Fe.Dubbo,Fe.Toowoomba],cost:18},{nodes:[Fe.Sydney1,Fe.Wollongong],cost:2},{nodes:[Fe.Sydney1,Fe.Canberra],cost:8},{nodes:[Fe.Canberra,Fe.Dubbo],cost:11},{nodes:[Fe.Canberra,Fe.Newcastle],cost:10},{nodes:[Fe.Dubbo,Fe.Mildura],cost:16},{nodes:[Fe.Mildura,Fe.Canberra],cost:16},{nodes:[Fe.Canberra,Fe.Albury],cost:7},{nodes:[Fe.Mildura,Fe.Bendigo],cost:7},{nodes:[Fe.Bendigo,Fe.Melbourne2],cost:3},{nodes:[Fe.Melbourne2,Fe.Albury],cost:9},{nodes:[Fe.Mildura,Fe.Adelaide],cost:8},{nodes:[Fe.Adelaide,Fe.Portaugusta],cost:7},{nodes:[Fe.Portaugusta,Fe.CooberPedy],cost:11},{nodes:[Fe.Mildura,Fe.Portaugusta],cost:11},{nodes:[Fe.Adelaide,Fe.Geelong],cost:13},{nodes:[Fe.Geelong,Fe.Bendigo],cost:5},{nodes:[Fe.Bendigo,Fe.Albury],cost:6},{nodes:[Fe.Wollongong,Fe.Melbourne1],cost:19},{nodes:[Fe.Melbourne1,Fe.Launceston],cost:19},{nodes:[Fe.Launceston,Fe.Hobart],cost:5},{nodes:[Fe.Melbourne1,Fe.Geelong],cost:2},{nodes:[Fe.Melbourne2,Fe.Melbourne1],cost:0},{nodes:[Fe.CooberPedy,Fe.Alicesprings],cost:13},{nodes:[Fe.Alicesprings,Fe.Tennantcreek],cost:10},{nodes:[Fe.Tennantcreek,Fe.Katherine],cost:14},{nodes:[Fe.Katherine,Fe.Darwin],cost:6}],resupply:[[[3,5,4],[4,6,4],[4,7,5],[5,9,6],[7,10,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]],uraniumMineResupply:[[1,2,3],[1,2,3],[2,2,4],[2,3,5],[3,3,6]],startingResources:[24,18,15,0],startingSupply:[24,24,24,0],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve).filter((function(e){return 17!==e.number}));if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var u=De(a.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Uranium mines: the five uranium power plants (11, 23, 28, 34, 39) are replaced by uranium mines. Power plant 17 is removed from the deck. Mines are bought in the normal power-plant auctions but do not power cities and do not count toward the 3-power-plant hand limit (a player may hold any number of mines plus up to 3 power plants). Mines DO count for player order. Instead of powering cities, during Bureaucracy each mine produces uranium for sale on the separate uranium market. Uranium market: a separate market of 12 slots (prices $2–$7, two slots each), all filled at game start. When selling, a player earns the highest available (empty-slot) price times the total cities their mines could power, then places one uranium token per mine on the highest empty slots. The resource-market refill REMOVES uranium tokens from the cheapest filled slots. Selling happens AUTOMATICALLY during Bureaucracy, in reverse turn order (the last player in turn order sells first). The printed rules let a player decline to sell; for simplicity this implementation always sells, so no player action is required. Unlike city income, uranium income is still paid in the final round. Main resource market: there is no uranium row — coal, oil and garbage only. Step 3 CO2 tax: when Step 3 begins, the six cheapest tokens of each resource move into new $9 and $10 spaces, and the $1 and $2 spaces become inactive for the rest of the game (the market shifts up by $2). General connection: any single build may connect a city for a flat 20 Elektro instead of the shortest-path connection cost, and this may be used multiple times in one turn. Metropolises: Melbourne and Sydney each consist of two cities (1 and 2) connected by a 0-cost edge. Regions need not be adjacent: any combination of regions may be in play."};(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Blue"]="blue",e["Yellow"]="yellow"})($e||($e={})),function(e){e["Friedrichshafen"]="Friedrichshafen",e["Ravensburg"]="Ravensburg",e["Biberach"]="Biberach",e["Sigmarincen"]="Sigmaringen",e["Konstanz"]="Konstanz",e["Ulm"]="Ulm",e["Augsburg"]="Augsburg",e["Basel"]="Basel",e["Waldshuttiencen"]="Waldshut-Tiengen",e["Singen"]="Singen",e["Tuttlincen"]="Tuttlingen",e["Donaueschingen"]="Donaueschingen",e["Freiburg"]="Freiburg",e["Lorrach"]="Lorrach",e["Tauberbischofsheim"]="Tauberbischofsheim",e["Schwabischhall"]="Schwabisch Hall",e["Heilbronn"]="Heilbronn",e["Sinsheim"]="Sinsheim",e["Heidelber"]="Heidelberg",e["Mannheim"]="Mannheim",e["Luowigshafen"]="Ludwigshafen",e["Nurnberg"]="Nurnberg",e["Ellwangen"]="Ellwangen",e["Coppingen"]="Göppingen",e["Reutlincen"]="Reutlingen",e["Stuttgart"]="Stuttgart",e["Ludwigsburg"]="Ludwigsburg",e["Boblingen"]="Boblingen",e["Laha"]="Lahr",e["Badenbaden"]="Baden-Baden",e["Offenburg"]="Offenburg",e["Strasbourg"]="Strasbourg",e["Pforzheim"]="Pforzheim",e["Rastatt"]="Rastatt",e["Karlsruhf"]="Karlsruhe"}(qe||(qe={}));var Xe,Qe,en={name:"Baden-Württemberg",cities:[{name:qe.Friedrichshafen,region:$e.Purple,x:1286,y:2177},{name:qe.Ravensburg,region:$e.Purple,x:1365,y:2023},{name:qe.Biberach,region:$e.Purple,x:1451,y:1779},{name:qe.Sigmarincen,region:$e.Purple,x:1111,y:1803},{name:qe.Konstanz,region:$e.Purple,x:1088,y:2163},{name:qe.Ulm,region:$e.Purple,x:1541,y:1499},{name:qe.Augsburg,region:$e.Purple,x:1830,y:1505,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Basel,region:$e.Green,x:103,y:2271,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Waldshuttiencen,region:$e.Green,x:502,y:2166},{name:qe.Singen,region:$e.Green,x:874,y:2084},{name:qe.Tuttlincen,region:$e.Green,x:870,y:1854},{name:qe.Donaueschingen,region:$e.Green,x:669,y:1923},{name:qe.Freiburg,region:$e.Green,x:290,y:1828},{name:qe.Lorrach,region:$e.Green,x:212,y:2141},{name:qe.Tauberbischofsheim,region:$e.Red,x:1354,y:450},{name:qe.Schwabischhall,region:$e.Red,x:1415,y:899},{name:qe.Heilbronn,region:$e.Red,x:1115,y:872},{name:qe.Sinsheim,region:$e.Red,x:920,y:785},{name:qe.Heidelber,region:$e.Red,x:817,y:660},{name:qe.Mannheim,region:$e.Red,x:710,y:540},{name:qe.Luowigshafen,region:$e.Red,x:579,y:588,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Nurnberg,region:$e.Blue,x:1837,y:771,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Ellwangen,region:$e.Blue,x:1637,y:1030},{name:qe.Coppingen,region:$e.Blue,x:1387,y:1233},{name:qe.Reutlincen,region:$e.Blue,x:1107,y:1443},{name:qe.Stuttgart,region:$e.Blue,x:1106,y:1217},{name:qe.Ludwigsburg,region:$e.Blue,x:1099,y:1047},{name:qe.Boblingen,region:$e.Blue,x:956,y:1277},{name:qe.Laha,region:$e.Yellow,x:296,y:1575},{name:qe.Badenbaden,region:$e.Yellow,x:554,y:1259},{name:qe.Offenburg,region:$e.Yellow,x:395,y:1422},{name:qe.Strasbourg,region:$e.Yellow,x:211,y:1330,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Pforzheim,region:$e.Yellow,x:794,y:1095},{name:qe.Rastatt,region:$e.Yellow,x:509,y:1109},{name:qe.Karlsruhf,region:$e.Yellow,x:638,y:974}],connections:[{nodes:[qe.Luowigshafen,qe.Mannheim],cost:0},{nodes:[qe.Mannheim,qe.Heidelber],cost:4},{nodes:[qe.Mannheim,qe.Karlsruhf],cost:10},{nodes:[qe.Karlsruhf,qe.Heidelber],cost:9},{nodes:[qe.Heidelber,qe.Sinsheim],cost:5},{nodes:[qe.Sinsheim,qe.Tauberbischofsheim],cost:15},{nodes:[qe.Tauberbischofsheim,qe.Heilbronn],cost:13},{nodes:[qe.Heilbronn,qe.Sinsheim],cost:6},{nodes:[qe.Sinsheim,qe.Karlsruhf],cost:9},{nodes:[qe.Karlsruhf,qe.Rastatt],cost:4},{nodes:[qe.Karlsruhf,qe.Pforzheim],cost:6},{nodes:[qe.Pforzheim,qe.Sinsheim],cost:10},{nodes:[qe.Tauberbischofsheim,qe.Schwabischhall],cost:13},{nodes:[qe.Schwabischhall,qe.Ellwangen],cost:8},{nodes:[qe.Ellwangen,qe.Nurnberg],cost:18},{nodes:[qe.Schwabischhall,qe.Coppingen],cost:11},{nodes:[qe.Coppingen,qe.Ellwangen],cost:10},{nodes:[qe.Ludwigsburg,qe.Heilbronn],cost:5},{nodes:[qe.Heilbronn,qe.Schwabischhall],cost:9},{nodes:[qe.Schwabischhall,qe.Ludwigsburg],cost:10},{nodes:[qe.Ludwigsburg,qe.Coppingen],cost:9},{nodes:[qe.Coppingen,qe.Stuttgart],cost:8},{nodes:[qe.Ludwigsburg,qe.Sinsheim],cost:10},{nodes:[qe.Ludwigsburg,qe.Pforzheim],cost:8},{nodes:[qe.Pforzheim,qe.Badenbaden],cost:9},{nodes:[qe.Badenbaden,qe.Rastatt],cost:2},{nodes:[qe.Strasbourg,qe.Offenburg],cost:5},{nodes:[qe.Offenburg,qe.Badenbaden],cost:8},{nodes:[qe.Pforzheim,qe.Stuttgart],cost:8},{nodes:[qe.Stuttgart,qe.Ludwigsburg],cost:2},{nodes:[qe.Stuttgart,qe.Boblingen],cost:4},{nodes:[qe.Boblingen,qe.Pforzheim],cost:7},{nodes:[qe.Boblingen,qe.Badenbaden],cost:15},{nodes:[qe.Reutlincen,qe.Stuttgart],cost:9},{nodes:[qe.Boblingen,qe.Reutlincen],cost:8},{nodes:[qe.Reutlincen,qe.Badenbaden],cost:22},{nodes:[qe.Offenburg,qe.Reutlincen],cost:30},{nodes:[qe.Reutlincen,qe.Coppingen],cost:10},{nodes:[qe.Coppingen,qe.Ulm],cost:10},{nodes:[qe.Ulm,qe.Reutlincen],cost:16},{nodes:[qe.Ellwangen,qe.Ulm],cost:19},{nodes:[qe.Ulm,qe.Augsburg],cost:16},{nodes:[qe.Reutlincen,qe.Tuttlincen],cost:17},{nodes:[qe.Reutlincen,qe.Sigmarincen],cost:11},{nodes:[qe.Sigmarincen,qe.Ulm],cost:14},{nodes:[qe.Ulm,qe.Biberach],cost:8},{nodes:[qe.Biberach,qe.Sigmarincen],cost:11},{nodes:[qe.Biberach,qe.Ravensburg],cost:9},{nodes:[qe.Ravensburg,qe.Sigmarincen],cost:10},{nodes:[qe.Sigmarincen,qe.Tuttlincen],cost:7},{nodes:[qe.Tuttlincen,qe.Offenburg],cost:27},{nodes:[qe.Offenburg,qe.Laha],cost:3},{nodes:[qe.Laha,qe.Freiburg],cost:8},{nodes:[qe.Laha,qe.Donaueschingen],cost:19},{nodes:[qe.Donaueschingen,qe.Tuttlincen],cost:6},{nodes:[qe.Tuttlincen,qe.Singen],cost:7},{nodes:[qe.Singen,qe.Donaueschingen],cost:7},{nodes:[qe.Donaueschingen,qe.Freiburg],cost:13},{nodes:[qe.Freiburg,qe.Lorrach],cost:10},{nodes:[qe.Freiburg,qe.Waldshuttiencen],cost:15},{nodes:[qe.Waldshuttiencen,qe.Lorrach],cost:9},{nodes:[qe.Lorrach,qe.Basel],cost:2},{nodes:[qe.Waldshuttiencen,qe.Donaueschingen],cost:11},{nodes:[qe.Singen,qe.Konstanz],cost:6},{nodes:[qe.Konstanz,qe.Friedrichshafen],cost:9},{nodes:[qe.Friedrichshafen,qe.Ravensburg],cost:3},{nodes:[qe.Friedrichshafen,qe.Sigmarincen],cost:11},{nodes:[qe.Sigmarincen,qe.Konstanz],cost:14},{nodes:[qe.Konstanz,qe.Tuttlincen],cost:11}],layout:"Portrait",adjustRatio:[.425,.425],mapPosition:[100,-90],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],mapSpecificRules:"Phase order change: buy power plants first, then determine player order. If no power plant is sold in a round, remove the two lowest-numbered plants from the market and replace them from the draw stack. Never remove a power plant whose number is equal to or lower than the number of cities any player has powered. Transregional cities (e.g. Strasbourg) are only available starting in Step 2. Step 2 begins when any player connects to 9 cities (2 players), 6 cities (3–5 players), or 5 cities (6 players)."};(function(e){e["Green"]="green",e["Brown"]="brown",e["Yellow"]="yellow",e["Red"]="red",e["Blue"]="blue"})(Xe||(Xe={})),function(e){e["Groningen"]="Groningen",e["Enschede"]="Enschede",e["Apeldoorn"]="Apeldoorn",e["Arnhem"]="Arnhem",e["Leeuwarden"]="Leeuwarden",e["Nijmegen"]="Nijmegen",e["Denhelder"]="Den Helder",e["Zaanstad"]="Zaanstad",e["Amsterdam"]="Amsterdam",e["Utrecht"]="Utrecht",e["Haarlem"]="Haarlem",e["Leiden"]="Leiden",e["Denhaas"]="Den Haas",e["Rotterdam"]="Rotterdam",e["Enbosch"]="En Bosch",e["Venlo"]="Venlo",e["Eindhoven"]="Eindhoven",e["Tilburg"]="Tilburg",e["Breda"]="Breda",e["Middelburg"]="Middelburg",e["Maastricht"]="Maastricht",e["Leuven"]="Leuven",e["Brussel"]="Brussel",e["Antwerpen"]="Antwerpen",e["Gent"]="Gent",e["Kortrijk"]="Kortrijk",e["Brugge"]="Brugge",e["Dostende"]="Dostende",e["Liege"]="Liege",e["Namur"]="Namur",e["Bruxelles"]="Bruxelles",e["Charleroi"]="Charleroi",e["Mons"]="Mons",e["Arlon"]="Arlon",e["Luxembourg"]="Luxembourg"}(Qe||(Qe={}));var nn,tn,rn={name:"Benelux",cities:[{name:Qe.Groningen,region:Xe.Green,x:654,y:147},{name:Qe.Enschede,region:Xe.Green,x:659,y:369},{name:Qe.Apeldoorn,region:Xe.Green,x:552,y:329},{name:Qe.Arnhem,region:Xe.Green,x:541,y:386},{name:Qe.Leeuwarden,region:Xe.Green,x:560,y:136},{name:Qe.Nijmegen,region:Xe.Green,x:518,y:445},{name:Qe.Denhelder,region:Xe.Green,x:411,y:169},{name:Qe.Zaanstad,region:Xe.Brown,x:432,y:245},{name:Qe.Amsterdam,region:Xe.Brown,x:437,y:299},{name:Qe.Utrecht,region:Xe.Brown,x:429,y:361},{name:Qe.Haarlem,region:Xe.Brown,x:373,y:259},{name:Qe.Leiden,region:Xe.Brown,x:355,y:322},{name:Qe.Denhaas,region:Xe.Brown,x:300,y:347},{name:Qe.Rotterdam,region:Xe.Brown,x:338,y:400},{name:Qe.Enbosch,region:Xe.Yellow,x:448,y:447},{name:Qe.Venlo,region:Xe.Yellow,x:550,y:526},{name:Qe.Eindhoven,region:Xe.Yellow,x:463,y:539},{name:Qe.Tilburg,region:Xe.Yellow,x:404,y:497},{name:Qe.Breda,region:Xe.Yellow,x:349,y:466},{name:Qe.Middelburg,region:Xe.Yellow,x:210,y:453},{name:Qe.Maastricht,region:Xe.Yellow,x:480,y:640},{name:Qe.Leuven,region:Xe.Red,x:352,y:619},{name:Qe.Brussel,region:Xe.Red,x:286,y:595},{name:Qe.Antwerpen,region:Xe.Red,x:304,y:526},{name:Qe.Gent,region:Xe.Red,x:206,y:562},{name:Qe.Kortrijk,region:Xe.Red,x:132,y:589},{name:Qe.Brugge,region:Xe.Red,x:160,y:511},{name:Qe.Dostende,region:Xe.Red,x:94,y:495},{name:Qe.Liege,region:Xe.Blue,x:445,y:705},{name:Qe.Namur,region:Xe.Blue,x:361,y:713},{name:Qe.Bruxelles,region:Xe.Blue,x:283,y:642},{name:Qe.Charleroi,region:Xe.Blue,x:278,y:725},{name:Qe.Mons,region:Xe.Blue,x:212,y:686},{name:Qe.Arlon,region:Xe.Blue,x:431,y:876},{name:Qe.Luxembourg,region:Xe.Blue,x:502,y:918}],connections:[{nodes:[Qe.Denhelder,Qe.Leeuwarden],cost:13},{nodes:[Qe.Leeuwarden,Qe.Groningen],cost:6},{nodes:[Qe.Groningen,Qe.Enschede],cost:12},{nodes:[Qe.Enschede,Qe.Apeldoorn],cost:9},{nodes:[Qe.Apeldoorn,Qe.Arnhem],cost:3},{nodes:[Qe.Arnhem,Qe.Nijmegen],cost:2},{nodes:[Qe.Nijmegen,Qe.Enbosch],cost:6},{nodes:[Qe.Nijmegen,Qe.Venlo],cost:7},{nodes:[Qe.Nijmegen,Qe.Eindhoven],cost:7},{nodes:[Qe.Eindhoven,Qe.Enbosch],cost:4},{nodes:[Qe.Enbosch,Qe.Utrecht],cost:8},{nodes:[Qe.Apeldoorn,Qe.Leeuwarden],cost:15},{nodes:[Qe.Leeuwarden,Qe.Enschede],cost:13},{nodes:[Qe.Enschede,Qe.Arnhem],cost:7},{nodes:[Qe.Arnhem,Qe.Utrecht],cost:6},{nodes:[Qe.Utrecht,Qe.Amsterdam],cost:4},{nodes:[Qe.Amsterdam,Qe.Haarlem],cost:2},{nodes:[Qe.Haarlem,Qe.Zaanstad],cost:2},{nodes:[Qe.Zaanstad,Qe.Denhelder],cost:6},{nodes:[Qe.Denhelder,Qe.Haarlem],cost:7},{nodes:[Qe.Haarlem,Qe.Leiden],cost:3},{nodes:[Qe.Leiden,Qe.Denhaas],cost:2},{nodes:[Qe.Denhaas,Qe.Rotterdam],cost:3},{nodes:[Qe.Rotterdam,Qe.Leiden],cost:3},{nodes:[Qe.Leiden,Qe.Amsterdam],cost:4},{nodes:[Qe.Leiden,Qe.Utrecht],cost:4},{nodes:[Qe.Utrecht,Qe.Rotterdam],cost:5},{nodes:[Qe.Rotterdam,Qe.Enbosch],cost:11},{nodes:[Qe.Breda,Qe.Rotterdam],cost:8},{nodes:[Qe.Breda,Qe.Middelburg],cost:9},{nodes:[Qe.Middelburg,Qe.Antwerpen],cost:8},{nodes:[Qe.Antwerpen,Qe.Brugge],cost:9},{nodes:[Qe.Brugge,Qe.Dostende],cost:2},{nodes:[Qe.Amsterdam,Qe.Zaanstad],cost:1},{nodes:[Qe.Amsterdam,Qe.Apeldoorn],cost:7},{nodes:[Qe.Apeldoorn,Qe.Utrecht],cost:6},{nodes:[Qe.Venlo,Qe.Eindhoven],cost:5},{nodes:[Qe.Eindhoven,Qe.Tilburg],cost:4},{nodes:[Qe.Tilburg,Qe.Breda],cost:2},{nodes:[Qe.Breda,Qe.Enbosch],cost:5},{nodes:[Qe.Breda,Qe.Antwerpen],cost:5},{nodes:[Qe.Antwerpen,Qe.Tilburg],cost:6},{nodes:[Qe.Antwerpen,Qe.Eindhoven],cost:8},{nodes:[Qe.Eindhoven,Qe.Maastricht],cost:8},{nodes:[Qe.Maastricht,Qe.Venlo],cost:10},{nodes:[Qe.Maastricht,Qe.Leuven],cost:7},{nodes:[Qe.Leuven,Qe.Eindhoven],cost:9},{nodes:[Qe.Leuven,Qe.Brussel],cost:2},{nodes:[Qe.Brussel,Qe.Bruxelles],cost:0},{nodes:[Qe.Bruxelles,Qe.Charleroi],cost:5},{nodes:[Qe.Charleroi,Qe.Namur],cost:3},{nodes:[Qe.Namur,Qe.Bruxelles],cost:5},{nodes:[Qe.Leuven,Qe.Namur],cost:5},{nodes:[Qe.Leuven,Qe.Liege],cost:7},{nodes:[Qe.Liege,Qe.Namur],cost:6},{nodes:[Qe.Liege,Qe.Maastricht],cost:3},{nodes:[Qe.Kortrijk,Qe.Dostende],cost:5},{nodes:[Qe.Brugge,Qe.Kortrijk],cost:4},{nodes:[Qe.Kortrijk,Qe.Gent],cost:4},{nodes:[Qe.Gent,Qe.Brugge],cost:3},{nodes:[Qe.Kortrijk,Qe.Bruxelles],cost:10},{nodes:[Qe.Bruxelles,Qe.Mons],cost:5},{nodes:[Qe.Mons,Qe.Kortrijk],cost:8},{nodes:[Qe.Gent,Qe.Antwerpen],cost:5},{nodes:[Qe.Antwerpen,Qe.Brussel],cost:4},{nodes:[Qe.Brussel,Qe.Gent],cost:7},{nodes:[Qe.Antwerpen,Qe.Leuven],cost:4},{nodes:[Qe.Mons,Qe.Charleroi],cost:4},{nodes:[Qe.Charleroi,Qe.Arlon],cost:18},{nodes:[Qe.Arlon,Qe.Luxembourg],cost:5},{nodes:[Qe.Luxembourg,Qe.Liege],cost:20},{nodes:[Qe.Liege,Qe.Arlon],cost:18},{nodes:[Qe.Arlon,Qe.Namur],cost:16},{nodes:[Qe.Tilburg,Qe.Enbosch],cost:3}],layout:"Portrait",mapPosition:[0,-50],adjustRatio:[1.15,1.15],resupply:[[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[1,2,3],[2,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[18,24,6,2],viewBox:[1530,1060],playerOrderPosition:[1225,140],buttonsPosition:[1370,0],playerBoardsPosition:[1170,200],actualMarketWidth:495,mapSpecificRules:"Ecological plants can enter the market earlier. Remove smallest power plant after each round (unless discount plant was removed)."};(function(e){e["Red"]="red",e["Pink"]="pink",e["Purple"]="purple",e["Green"]="green",e["Brown"]="brown",e["Yellow"]="yellow"})(nn||(nn={})),function(e){e["Parnaiba"]="Parnaiba",e["Fortaleza"]="Fortaleza",e["Sadluis"]="Sadluis",e["Belem"]="Belem",e["Teresina"]="Teresina",e["Imperatriz"]="Imperatriz",e["Maraba"]="Maraba",e["Campinagrande"]="Campina Grande",e["Petrolina"]="Petrolina",e["Natal"]="Natal",e["Joaopessoa"]="Joaopessoa",e["Recife"]="Recife",e["Maceio"]="Maceio",e["Aracaju"]="Aracaju",e["Salvadordabahia"]="Salvador Da Bahia",e["Montesclaros"]="Montes Claros",e["Brasilia"]="Brasilia",e["Palmas"]="Palmas",e["Porangatu"]="Porangatu",e["Goiania"]="Goiania",e["Uberlandia"]="Uberlandia",e["Vitoria"]="Vitoria",e["Riodejaneiro"]="Rio De Janeiro",e["Saogoncalo"]="Sao Goncalo",e["Saopaulo"]="Sao Paulo",e["Guarulhos"]="Guarulhos",e["Campinas"]="Campinas",e["Belohorizonte"]="Belo Horizonte",e["Curitiba"]="Curitiba",e["Florianopolis"]="Florianopolis",e["Portoalecre"]="Porto Alecre",e["Pelotas"]="Pelotas",e["Urucuaiana"]="Urucuaiana",e["Londrina"]="Londrina",e["Campogrande"]="Campo Grande",e["Macapa"]="Macapa",e["Boavista"]="Boavista",e["Manaus"]="Manaus",e["Portovelho"]="Porto Velho",e["Cuiaba"]="Cuiaba",e["Vilhena"]="Vilhena",e["Riobranco"]="Rio Branco"}(tn||(tn={}));var on,an,sn={name:"Brazil",cities:[{name:tn.Parnaiba,region:nn.Red,x:855,y:458},{name:tn.Fortaleza,region:nn.Red,x:961,y:478},{name:tn.Sadluis,region:nn.Red,x:772,y:418},{name:tn.Belem,region:nn.Red,x:655,y:378},{name:tn.Teresina,region:nn.Red,x:846,y:548},{name:tn.Imperatriz,region:nn.Red,x:697,y:535},{name:tn.Maraba,region:nn.Red,x:581,y:492},{name:tn.Campinagrande,region:nn.Pink,x:976,y:587},{name:tn.Petrolina,region:nn.Pink,x:872,y:648},{name:tn.Natal,region:nn.Pink,x:1061,y:518},{name:tn.Joaopessoa,region:nn.Pink,x:1097,y:576},{name:tn.Recife,region:nn.Pink,x:1083,y:637},{name:tn.Maceio,region:nn.Pink,x:1040,y:699},{name:tn.Aracaju,region:nn.Pink,x:995,y:750},{name:tn.Salvadordabahia,region:nn.Purple,x:960,y:808},{name:tn.Montesclaros,region:nn.Purple,x:795,y:847},{name:tn.Brasilia,region:nn.Purple,x:671,y:817},{name:tn.Palmas,region:nn.Purple,x:648,y:663},{name:tn.Porangatu,region:nn.Purple,x:598,y:762},{name:tn.Goiania,region:nn.Purple,x:601,y:889},{name:tn.Uberlandia,region:nn.Purple,x:646,y:964},{name:tn.Vitoria,region:nn.Green,x:910,y:971},{name:tn.Riodejaneiro,region:nn.Green,x:795,y:1076},{name:tn.Saogoncalo,region:nn.Green,x:843,y:1033},{name:tn.Saopaulo,region:nn.Green,x:721,y:1134},{name:tn.Guarulhos,region:nn.Green,x:678,y:1089},{name:tn.Campinas,region:nn.Green,x:629,y:1037},{name:tn.Belohorizonte,region:nn.Green,x:771,y:960},{name:tn.Curitiba,region:nn.Brown,x:615,y:1144},{name:tn.Florianopolis,region:nn.Brown,x:665,y:1214},{name:tn.Portoalecre,region:nn.Brown,x:590,y:1281},{name:tn.Pelotas,region:nn.Brown,x:551,y:1346},{name:tn.Urucuaiana,region:nn.Brown,x:444,y:1250},{name:tn.Londrina,region:nn.Brown,x:516,y:1075},{name:tn.Campogrande,region:nn.Brown,x:440,y:983},{name:tn.Macapa,region:nn.Yellow,x:561,y:317},{name:tn.Boavista,region:nn.Yellow,x:308,y:269},{name:tn.Manaus,region:nn.Yellow,x:258,y:466},{name:tn.Portovelho,region:nn.Yellow,x:238,y:620},{name:tn.Cuiaba,region:nn.Yellow,x:432,y:850},{name:tn.Vilhena,region:nn.Yellow,x:328,y:741},{name:tn.Riobranco,region:nn.Yellow,x:87,y:666}],connections:[{nodes:[tn.Boavista,tn.Macapa],cost:22},{nodes:[tn.Macapa,tn.Belem],cost:10},{nodes:[tn.Belem,tn.Sadluis],cost:10},{nodes:[tn.Sadluis,tn.Imperatriz],cost:9},{nodes:[tn.Belem,tn.Imperatriz],cost:9},{nodes:[tn.Belem,tn.Maraba],cost:9},{nodes:[tn.Macapa,tn.Maraba],cost:16},{nodes:[tn.Maraba,tn.Manaus],cost:22},{nodes:[tn.Macapa,tn.Manaus],cost:18},{nodes:[tn.Boavista,tn.Manaus],cost:13},{nodes:[tn.Boavista,tn.Riobranco],cost:30},{nodes:[tn.Riobranco,tn.Manaus],cost:23},{nodes:[tn.Manaus,tn.Portovelho],cost:15},{nodes:[tn.Portovelho,tn.Riobranco],cost:10},{nodes:[tn.Riobranco,tn.Vilhena],cost:18},{nodes:[tn.Portovelho,tn.Vilhena],cost:12},{nodes:[tn.Manaus,tn.Vilhena],cost:21},{nodes:[tn.Vilhena,tn.Cuiaba],cost:10},{nodes:[tn.Vilhena,tn.Maraba],cost:31},{nodes:[tn.Maraba,tn.Imperatriz],cost:4},{nodes:[tn.Sadluis,tn.Teresina],cost:8},{nodes:[tn.Teresina,tn.Imperatriz],cost:11},{nodes:[tn.Imperatriz,tn.Palmas],cost:9},{nodes:[tn.Palmas,tn.Maraba],cost:10},{nodes:[tn.Maraba,tn.Porangatu],cost:17},{nodes:[tn.Porangatu,tn.Goiania],cost:8},{nodes:[tn.Porangatu,tn.Vilhena],cost:23},{nodes:[tn.Cuiaba,tn.Porangatu],cost:16},{nodes:[tn.Porangatu,tn.Palmas],cost:8},{nodes:[tn.Palmas,tn.Brasilia],cost:13},{nodes:[tn.Brasilia,tn.Porangatu],cost:6},{nodes:[tn.Brasilia,tn.Goiania],cost:4},{nodes:[tn.Goiania,tn.Cuiaba],cost:15},{nodes:[tn.Sadluis,tn.Parnaiba],cost:5},{nodes:[tn.Parnaiba,tn.Teresina],cost:5},{nodes:[tn.Parnaiba,tn.Fortaleza],cost:7},{nodes:[tn.Fortaleza,tn.Natal],cost:8},{nodes:[tn.Natal,tn.Joaopessoa],cost:3},{nodes:[tn.Joaopessoa,tn.Recife],cost:2},{nodes:[tn.Recife,tn.Maceio],cost:3},{nodes:[tn.Maceio,tn.Aracaju],cost:3},{nodes:[tn.Aracaju,tn.Salvadordabahia],cost:4},{nodes:[tn.Natal,tn.Campinagrande],cost:4},{nodes:[tn.Fortaleza,tn.Teresina],cost:10},{nodes:[tn.Teresina,tn.Petrolina],cost:12},{nodes:[tn.Petrolina,tn.Palmas],cost:19},{nodes:[tn.Petrolina,tn.Brasilia],cost:22},{nodes:[tn.Petrolina,tn.Montesclaros],cost:19},{nodes:[tn.Montesclaros,tn.Salvadordabahia],cost:16},{nodes:[tn.Salvadordabahia,tn.Petrolina],cost:10},{nodes:[tn.Petrolina,tn.Campinagrande],cost:12},{nodes:[tn.Petrolina,tn.Aracaju],cost:11},{nodes:[tn.Vitoria,tn.Salvadordabahia],cost:16},{nodes:[tn.Montesclaros,tn.Vitoria],cost:14},{nodes:[tn.Vitoria,tn.Saogoncalo],cost:6},{nodes:[tn.Vitoria,tn.Belohorizonte],cost:9},{nodes:[tn.Belohorizonte,tn.Montesclaros],cost:8},{nodes:[tn.Montesclaros,tn.Brasilia],cost:9},{nodes:[tn.Brasilia,tn.Uberlandia],cost:8},{nodes:[tn.Uberlandia,tn.Goiania],cost:7},{nodes:[tn.Goiania,tn.Campogrande],cost:16},{nodes:[tn.Campogrande,tn.Cuiaba],cost:13},{nodes:[tn.Campogrande,tn.Londrina],cost:10},{nodes:[tn.Campogrande,tn.Uberlandia],cost:13},{nodes:[tn.Uberlandia,tn.Londrina],cost:12},{nodes:[tn.Londrina,tn.Campinas],cost:9},{nodes:[tn.Campinas,tn.Uberlandia],cost:9},{nodes:[tn.Uberlandia,tn.Belohorizonte],cost:10},{nodes:[tn.Uberlandia,tn.Brasilia],cost:8},{nodes:[tn.Brasilia,tn.Belohorizonte],cost:14},{nodes:[tn.Belohorizonte,tn.Saogoncalo],cost:7},{nodes:[tn.Saogoncalo,tn.Riodejaneiro],cost:0},{nodes:[tn.Riodejaneiro,tn.Saopaulo],cost:7},{nodes:[tn.Saopaulo,tn.Guarulhos],cost:0},{nodes:[tn.Guarulhos,tn.Campinas],cost:0},{nodes:[tn.Campinas,tn.Curitiba],cost:6},{nodes:[tn.Curitiba,tn.Londrina],cost:7},{nodes:[tn.Saopaulo,tn.Florianopolis],cost:9},{nodes:[tn.Florianopolis,tn.Curitiba],cost:4},{nodes:[tn.Londrina,tn.Urucuaiana],cost:18},{nodes:[tn.Urucuaiana,tn.Pelotas],cost:9},{nodes:[tn.Pelotas,tn.Portoalecre],cost:4},{nodes:[tn.Portoalecre,tn.Urucuaiana],cost:10},{nodes:[tn.Londrina,tn.Portoalecre],cost:16},{nodes:[tn.Portoalecre,tn.Curitiba],cost:11},{nodes:[tn.Portoalecre,tn.Florianopolis],cost:7},{nodes:[tn.Guarulhos,tn.Belohorizonte],cost:10},{nodes:[tn.Maceio,tn.Campinagrande],cost:6},{nodes:[tn.Petrolina,tn.Fortaleza],cost:14},{nodes:[tn.Recife,tn.Campinagrande],cost:3}],layout:"Portrait",adjustRatio:[.85,.85],mapPosition:[-20,-130],resupply:[[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[24,18,6,2],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve),i=a.filter((function(e){return e.type==ve.Garbage&&e.number>14}));if("original"==n){a=a.slice(8);var s=a.splice(2,1)[0],c=a.splice(2,1)[0],u=a.pop();a=De(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(i),a=De(a,t()+""),a.unshift(c),a.unshift(s),a.push(u),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var l=a.splice(3,1)[0],d=a.splice(10,1)[0],f=De(a.splice(0,11),t()+""),p=f.splice(0,6);p.push(l,d),p=p.sort((function(e,n){return e.number-n.number})),r=p.slice(0,4),o=p.slice(4);var h=f.shift(),g=a.pop();a=De(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e?(f=f.slice(1),a=De(a.slice(5).concat(f),t()+"")):3==e?(f=f.slice(2),a=De(a.slice(6).concat(f),t()+"")):4==e?(f=f.slice(1),a=De(a.slice(3).concat(f),t()+"")):a=De(a.concat(f),t()+""),a=a.concat(i),a=De(a,t()+""),a.unshift(h),a.push(g)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Play with all garbage power plants."};(function(e){e["Blue"]="blue",e["Brown"]="brown",e["Purple"]="purple",e["Red"]="red",e["Yellow"]="yellow",e["Green"]="green"})(on||(on={})),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"}(an||(an={}));var cn,un,ln={name:"Central Europe",cities:[{name:an.Bialystok,region:on.Blue,x:543,y:135},{name:an.Lublin,region:on.Blue,x:590,y:294},{name:an.Warszawa,region:on.Blue,x:482,y:253},{name:an.Krakow,region:on.Blue,x:533,y:443},{name:an.Sosnowiec,region:on.Blue,x:468,y:443},{name:an.Katowice,region:on.Blue,x:446,y:483},{name:an.Czestochowa,region:on.Blue,x:419,y:397},{name:an.Presov,region:on.Brown,x:619,y:487},{name:an.Kosice,region:on.Brown,x:646,y:538},{name:an.Poprad,region:on.Brown,x:565,y:529},{name:an.Zilina,region:on.Brown,x:476,y:551},{name:an.Bratislava,region:on.Brown,x:423,y:693},{name:an.Trnava,region:on.Brown,x:452,y:638},{name:an.Nyiregyhaza,region:on.Purple,x:698,y:582},{name:an.Miskolc,region:on.Purple,x:621,y:597},{name:an.Szeged,region:on.Purple,x:680,y:764},{name:an.Kecskeme,region:on.Purple,x:630,y:727},{name:an.Budapest,region:on.Purple,x:557,y:689},{name:an.Pecs,region:on.Purple,x:566,y:832},{name:an.Gyor,region:on.Purple,x:489,y:729},{name:an.Banskabystrica,region:on.Brown,x:525,y:601},{name:an.Goansk,region:on.Red,x:286,y:158},{name:an.Goynia,region:on.Red,x:249,y:131},{name:an.Byogoszcz,region:on.Red,x:297,y:257},{name:an.Wroclaw,region:on.Red,x:321,y:445},{name:an.Poznan,region:on.Red,x:261,y:342},{name:an.Szczecin,region:on.Red,x:110,y:316},{name:an.Lodz,region:on.Red,x:420,y:337},{name:an.Graz,region:on.Yellow,x:376,y:811},{name:an.Klagenfurt,region:on.Yellow,x:340,y:875},{name:an.Villach,region:on.Yellow,x:272,y:875},{name:an.Innsbruck,region:on.Yellow,x:140,y:879},{name:an.Salzburg,region:on.Yellow,x:209,y:805},{name:an.Linz,region:on.Yellow,x:265,y:744},{name:an.Wien,region:on.Yellow,x:366,y:701},{name:an.Hradeckralove,region:on.Green,x:291,y:546},{name:an.Brno,region:on.Green,x:354,y:597},{name:an.Ceskebudejovice,region:on.Green,x:248,y:670},{name:an.Praha,region:on.Green,x:220,y:593},{name:an.Ostrava,region:on.Green,x:413,y:535},{name:an.Plzen,region:on.Green,x:158,y:645},{name:an.Ustinadlaben,region:on.Green,x:165,y:537}],connections:[{nodes:[an.Goynia,an.Goansk],cost:0},{nodes:[an.Goansk,an.Byogoszcz],cost:8},{nodes:[an.Goynia,an.Szczecin],cost:17},{nodes:[an.Szczecin,an.Poznan],cost:14},{nodes:[an.Szczecin,an.Wroclaw],cost:22},{nodes:[an.Wroclaw,an.Poznan],cost:9},{nodes:[an.Poznan,an.Lodz],cost:13},{nodes:[an.Lodz,an.Byogoszcz],cost:12},{nodes:[an.Byogoszcz,an.Szczecin],cost:15},{nodes:[an.Wroclaw,an.Lodz],cost:12},{nodes:[an.Lodz,an.Czestochowa],cost:7},{nodes:[an.Czestochowa,an.Wroclaw],cost:9},{nodes:[an.Wroclaw,an.Ostrava],cost:11},{nodes:[an.Ostrava,an.Hradeckralove],cost:16},{nodes:[an.Hradeckralove,an.Wroclaw],cost:10},{nodes:[an.Wroclaw,an.Ustinadlaben],cost:17},{nodes:[an.Ustinadlaben,an.Hradeckralove],cost:10},{nodes:[an.Hradeckralove,an.Brno],cost:9},{nodes:[an.Brno,an.Ostrava],cost:12},{nodes:[an.Ostrava,an.Katowice],cost:4},{nodes:[an.Czestochowa,an.Lublin],cost:17},{nodes:[an.Lublin,an.Presov],cost:20},{nodes:[an.Presov,an.Krakow],cost:13},{nodes:[an.Krakow,an.Poprad],cost:11},{nodes:[an.Poprad,an.Zilina],cost:11},{nodes:[an.Zilina,an.Krakow],cost:12},{nodes:[an.Krakow,an.Sosnowiec],cost:4},{nodes:[an.Warszawa,an.Bialystok],cost:14},{nodes:[an.Bialystok,an.Goansk],cost:20},{nodes:[an.Byogoszcz,an.Warszawa],cost:15},{nodes:[an.Warszawa,an.Lublin],cost:10},{nodes:[an.Lodz,an.Warszawa],cost:7},{nodes:[an.Bialystok,an.Lublin],cost:15},{nodes:[an.Lublin,an.Krakow],cost:16},{nodes:[an.Poprad,an.Kosice],cost:6},{nodes:[an.Kosice,an.Nyiregyhaza],cost:8},{nodes:[an.Kosice,an.Miskolc],cost:4},{nodes:[an.Miskolc,an.Poprad],cost:9},{nodes:[an.Poprad,an.Banskabystrica],cost:11},{nodes:[an.Banskabystrica,an.Zilina],cost:6},{nodes:[an.Zilina,an.Trnava],cost:10},{nodes:[an.Zilina,an.Brno],cost:14},{nodes:[an.Brno,an.Wien],cost:8},{nodes:[an.Bratislava,an.Brno],cost:10},{nodes:[an.Brno,an.Trnava],cost:10},{nodes:[an.Trnava,an.Banskabystrica],cost:10},{nodes:[an.Banskabystrica,an.Miskolc],cost:11},{nodes:[an.Miskolc,an.Nyiregyhaza],cost:7},{nodes:[an.Nyiregyhaza,an.Szeged],cost:16},{nodes:[an.Szeged,an.Kecskeme],cost:5},{nodes:[an.Budapest,an.Trnava],cost:9},{nodes:[an.Trnava,an.Bratislava],cost:2},{nodes:[an.Bratislava,an.Wien],cost:3},{nodes:[an.Wien,an.Ceskebudejovice],cost:14},{nodes:[an.Ceskebudejovice,an.Praha],cost:10},{nodes:[an.Praha,an.Brno],cost:13},{nodes:[an.Brno,an.Ceskebudejovice],cost:15},{nodes:[an.Ceskebudejovice,an.Plzen],cost:11},{nodes:[an.Plzen,an.Praha],cost:7},{nodes:[an.Praha,an.Ustinadlaben],cost:6},{nodes:[an.Ustinadlaben,an.Plzen],cost:9},{nodes:[an.Ceskebudejovice,an.Linz],cost:8},{nodes:[an.Linz,an.Wien],cost:11},{nodes:[an.Wien,an.Graz],cost:12},{nodes:[an.Graz,an.Linz],cost:16},{nodes:[an.Linz,an.Salzburg],cost:9},{nodes:[an.Salzburg,an.Graz],cost:22},{nodes:[an.Graz,an.Gyor],cost:14},{nodes:[an.Gyor,an.Wien],cost:8},{nodes:[an.Bratislava,an.Gyor],cost:6},{nodes:[an.Gyor,an.Trnava],cost:5},{nodes:[an.Banskabystrica,an.Budapest],cost:12},{nodes:[an.Budapest,an.Gyor],cost:5},{nodes:[an.Budapest,an.Kecskeme],cost:6},{nodes:[an.Kecskeme,an.Miskolc],cost:10},{nodes:[an.Miskolc,an.Budapest],cost:9},{nodes:[an.Szeged,an.Pecs],cost:12},{nodes:[an.Pecs,an.Kecskeme],cost:11},{nodes:[an.Budapest,an.Pecs],cost:12},{nodes:[an.Pecs,an.Gyor],cost:15},{nodes:[an.Graz,an.Pecs],cost:19},{nodes:[an.Graz,an.Klagenfurt],cost:10},{nodes:[an.Klagenfurt,an.Villach],cost:4},{nodes:[an.Klagenfurt,an.Salzburg],cost:20},{nodes:[an.Salzburg,an.Innsbruck],cost:15},{nodes:[an.Innsbruck,an.Villach],cost:22},{nodes:[an.Poznan,an.Byogoszcz],cost:7},{nodes:[an.Lublin,an.Lodz],cost:16},{nodes:[an.Czestochowa,an.Sosnowiec],cost:4},{nodes:[an.Sosnowiec,an.Katowice],cost:0},{nodes:[an.Czestochowa,an.Krakow],cost:6},{nodes:[an.Poprad,an.Presov],cost:7},{nodes:[an.Presov,an.Kosice],cost:2},{nodes:[an.Ostrava,an.Zilina],cost:7},{nodes:[an.Ostrava,an.Krakow],cost:7},{nodes:[an.Praha,an.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"})(cn||(cn={})),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"}(un||(un={}));var dn,fn,pn={name:"China",cities:[{name:un.Hegang,region:cn.Pink,x:3920,y:290},{name:un.Qiqhaer,region:cn.Pink,x:3422,y:262},{name:un.Haerbin,region:cn.Pink,x:3672,y:434},{name:un.Jilin,region:cn.Pink,x:3744,y:614},{name:un.Fushun,region:cn.Pink,x:3712,y:784},{name:un.Anshan,region:cn.Pink,x:3510,y:902},{name:un.Dalian,region:cn.Pink,x:3424,y:1052},{name:un.Shanghai,region:cn.Green,x:3462,y:1672},{name:un.Hangzhou,region:cn.Green,x:3280,y:1824},{name:un.Nanjing,region:cn.Green,x:3130,y:1632},{name:un.Qingoad,region:cn.Green,x:3322,y:1316},{name:un.Jinan,region:cn.Green,x:3002,y:1292},{name:un.Zhengzhou,region:cn.Green,x:2778,y:1438},{name:un.Shijiazhuang,region:cn.Green,x:2866,y:1152},{name:un.Changchun,region:cn.Red,x:3504,y:590},{name:un.Shenyang,region:cn.Red,x:3458,y:778},{name:un.Tangshan,region:cn.Red,x:3158,y:908},{name:un.Tianjin,region:cn.Red,x:3134,y:1016},{name:un.Beijing,region:cn.Red,x:2886,y:910},{name:un.Taiyuan,region:cn.Red,x:2588,y:1130},{name:un.Badtou,region:cn.Red,x:2500,y:862},{name:un.Fuzhou,region:cn.Brown,x:3290,y:2132},{name:un.Nanchang,region:cn.Brown,x:3004,y:1974},{name:un.Chaozhou,region:cn.Brown,x:3096,y:2322},{name:un.Hongkong,region:cn.Brown,x:2902,y:2552},{name:un.Guangzhou,region:cn.Brown,x:2694,y:2352},{name:un.Changsha,region:cn.Brown,x:2682,y:1988},{name:un.Wuhan,region:cn.Brown,x:2810,y:1786},{name:un.Hami,region:cn.Purple,x:1816,y:698},{name:un.Karamay,region:cn.Purple,x:1304,y:372},{name:un.Wulumuqi,region:cn.Purple,x:1520,y:558},{name:un.Kuerle,region:cn.Purple,x:1326,y:756},{name:un.Yinchjan,region:cn.Purple,x:2208,y:1058},{name:un.Xining,region:cn.Purple,x:1868,y:1226},{name:un.Lanzhou,region:cn.Purple,x:2142,y:1328},{name:un.Kunming,region:cn.Yellow,x:1840,y:2248},{name:un.Chengou,region:cn.Yellow,x:1988,y:1736},{name:un.Xian,region:cn.Yellow,x:2440,y:1478},{name:un.Chongqing,region:cn.Yellow,x:2300,y:1880},{name:un.Nanning,region:cn.Yellow,x:2318,y:2452},{name:un.Haikou,region:cn.Yellow,x:2524,y:2680},{name:un.Chiyang,region:cn.Yellow,x:2212,y:2112}],connections:[{nodes:[un.Kunming,un.Chengou],cost:16},{nodes:[un.Nanning,un.Haikou],cost:10},{nodes:[un.Guangzhou,un.Hongkong],cost:4},{nodes:[un.Guangzhou,un.Chaozhou],cost:7},{nodes:[un.Chaozhou,un.Hongkong],cost:7},{nodes:[un.Guangzhou,un.Haikou],cost:13},{nodes:[un.Nanning,un.Guangzhou],cost:11},{nodes:[un.Xining,un.Chengou],cost:20},{nodes:[un.Chengou,un.Chongqing],cost:6},{nodes:[un.Chongqing,un.Chiyang],cost:9},{nodes:[un.Chiyang,un.Kunming],cost:12},{nodes:[un.Chiyang,un.Nanning],cost:12},{nodes:[un.Chiyang,un.Guangzhou],cost:18},{nodes:[un.Guangzhou,un.Changsha],cost:14},{nodes:[un.Changsha,un.Chongqing],cost:16},{nodes:[un.Changsha,un.Wuhan],cost:6},{nodes:[un.Wuhan,un.Nanchang],cost:6},{nodes:[un.Nanchang,un.Changsha],cost:7},{nodes:[un.Changsha,un.Chiyang],cost:15},{nodes:[un.Chiyang,un.Chengou],cost:13},{nodes:[un.Guangzhou,un.Nanchang],cost:16},{nodes:[un.Nanchang,un.Chaozhou],cost:14},{nodes:[un.Chaozhou,un.Fuzhou],cost:9},{nodes:[un.Fuzhou,un.Nanchang],cost:13},{nodes:[un.Wuhan,un.Hangzhou],cost:13},{nodes:[un.Hangzhou,un.Fuzhou],cost:13},{nodes:[un.Hangzhou,un.Shanghai],cost:4},{nodes:[un.Shanghai,un.Nanjing],cost:6},{nodes:[un.Nanjing,un.Hangzhou],cost:5},{nodes:[un.Hangzhou,un.Nanchang],cost:10},{nodes:[un.Chongqing,un.Wuhan],cost:18},{nodes:[un.Lanzhou,un.Chengou],cost:16},{nodes:[un.Chengou,un.Xian],cost:14},{nodes:[un.Xian,un.Chongqing],cost:14},{nodes:[un.Xian,un.Wuhan],cost:15},{nodes:[un.Wuhan,un.Zhengzhou],cost:10},{nodes:[un.Zhengzhou,un.Xian],cost:10},{nodes:[un.Xian,un.Lanzhou],cost:15},{nodes:[un.Lanzhou,un.Yinchjan],cost:9},{nodes:[un.Yinchjan,un.Xining],cost:11},{nodes:[un.Lanzhou,un.Taiyuan],cost:18},{nodes:[un.Taiyuan,un.Xian],cost:12},{nodes:[un.Taiyuan,un.Zhengzhou],cost:11},{nodes:[un.Taiyuan,un.Shijiazhuang],cost:5},{nodes:[un.Shijiazhuang,un.Tianjin],cost:5},{nodes:[un.Shijiazhuang,un.Jinan],cost:6},{nodes:[un.Shijiazhuang,un.Zhengzhou],cost:9},{nodes:[un.Zhengzhou,un.Jinan],cost:7},{nodes:[un.Zhengzhou,un.Nanjing],cost:12},{nodes:[un.Nanjing,un.Wuhan],cost:10},{nodes:[un.Jinan,un.Nanjing],cost:11},{nodes:[un.Nanjing,un.Qingoad],cost:12},{nodes:[un.Qingoad,un.Jinan],cost:6},{nodes:[un.Jinan,un.Tianjin],cost:6},{nodes:[un.Xining,un.Lanzhou],cost:6},{nodes:[un.Yinchjan,un.Badtou],cost:9},{nodes:[un.Badtou,un.Taiyuan],cost:9},{nodes:[un.Taiyuan,un.Yinchjan],cost:14},{nodes:[un.Yinchjan,un.Hami],cost:25},{nodes:[un.Hami,un.Xining],cost:25},{nodes:[un.Wulumuqi,un.Kuerle],cost:9},{nodes:[un.Kuerle,un.Karamay],cost:12},{nodes:[un.Karamay,un.Wulumuqi],cost:7},{nodes:[un.Wulumuqi,un.Hami],cost:12},{nodes:[un.Hami,un.Kuerle],cost:15},{nodes:[un.Taiyuan,un.Beijing],cost:10},{nodes:[un.Beijing,un.Shijiazhuang],cost:6},{nodes:[un.Beijing,un.Tangshan],cost:3},{nodes:[un.Tangshan,un.Tianjin],cost:0},{nodes:[un.Beijing,un.Badtou],cost:14},{nodes:[un.Tangshan,un.Shenyang],cost:11},{nodes:[un.Dalian,un.Anshan],cost:6},{nodes:[un.Qiqhaer,un.Hegang],cost:11},{nodes:[un.Hegang,un.Haerbin],cost:7},{nodes:[un.Haerbin,un.Qiqhaer],cost:6},{nodes:[un.Changchun,un.Jilin],cost:5},{nodes:[un.Jilin,un.Haerbin],cost:5},{nodes:[un.Haerbin,un.Changchun],cost:5},{nodes:[un.Changchun,un.Shenyang],cost:5},{nodes:[un.Shenyang,un.Anshan],cost:2},{nodes:[un.Jilin,un.Fushun],cost:6},{nodes:[un.Fushun,un.Shenyang],cost:0},{nodes:[un.Changchun,un.Qiqhaer],cost:9}],layout:"Portrait",mapPosition:[-400,70],adjustRatio:[.35,.35],resupply:[[[4,4,3],[5,5,3],[6,6,4],[7,7,5],[9,9,6]],[[2,2,4],[3,3,4],[4,4,5],[5,5,6],[6,6,7]],[[2,2,1],[2,2,1],[3,3,2],[3,3,3],[5,5,3]],[[1,1,1],[1,1,1],[2,2,2],[3,3,2],[3,3,3]]],startingResources:[12,12,6,0],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ve),o=[];2==e||3==e?o=[3,4,9,11,16,18,20,24,30,33,46]:4==e?o=[3,4,11,18,24,33,46]:5!=e&&6!=e||(o=[3,4,33]);var a=r.filter((function(e){return!o.includes(e.number)})),i=a.filter((function(e){return e.number<=30})),s=a.filter((function(e){return e.type==ve.Step3})),c=De(a.filter((function(e){return e.number>=31&&e.number<=35})).concat(s),t()+""),u=De(a.filter((function(e){return e.number>=36&&e.number<=50})),t()+""),l=i.splice(0,e),d=[],f=i.concat(c).concat(u);return{actualMarket:l,futureMarket:d,powerPlantsDeck:f}},mapSpecificRules:"The power plant deck is arranged as follows: plants from 3-30 in order, plants from 31-35 and step 3 card shuffled, plants from 36-50 shuffled.\nThe same set of plants are removed in every game.\nThere are several changes to when new plants are drawn. In particular, during steps 1 and 2, plants are only drawn from the deck during the bureaucracy phase."};(function(e){e["Pink"]="pink",e["Red"]="red",e["Brown"]="brown",e["Yellow"]="yellow",e["Orange"]="orange",e["Blue"]="blue",e["Green"]="green"})(dn||(dn={})),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"}(fn||(fn={}));var hn,gn,yn={name:"Europe",cities:[{name:fn.Glasgow,region:dn.Pink,x:490,y:510},{name:fn.Dublin,region:dn.Pink,x:390,y:660},{name:fn.Birmingham,region:dn.Pink,x:485,y:695},{name:fn.London,region:dn.Pink,x:545,y:800},{name:fn.Randstad,region:dn.Pink,x:786,y:594},{name:fn.Vlaanderen,region:dn.Pink,x:794,y:756},{name:fn.RheinRuhr,region:dn.Pink,x:820,y:884},{name:fn.Paris,region:dn.Red,x:632,y:926},{name:fn.Bordeaux,region:dn.Red,x:655,y:1095},{name:fn.Lyon,region:dn.Red,x:785,y:1100},{name:fn.Marseille,region:dn.Red,x:815,y:1240},{name:fn.Barcelona,region:dn.Red,x:650,y:1280},{name:fn.Madrid,region:dn.Red,x:435,y:1335},{name:fn.Lisboa,region:dn.Red,x:255,y:1335},{name:fn.Bremen,region:dn.Brown,x:1010,y:770},{name:fn.Berlin,region:dn.Brown,x:1180,y:800},{name:fn.RheinMain,region:dn.Brown,x:982,y:898},{name:fn.Stuttgart,region:dn.Brown,x:995,y:1e3},{name:fn.München,region:dn.Brown,x:1114,y:1020},{name:fn.Praha,region:dn.Brown,x:1235,y:940},{name:fn.Katowice,region:dn.Brown,x:1380,y:940},{name:fn.Zürich,region:dn.Yellow,x:1010,y:1100},{name:fn.Milano,region:dn.Yellow,x:1075,y:1180},{name:fn.Roma,region:dn.Yellow,x:1180,y:1310},{name:fn.Napoli,region:dn.Yellow,x:1235,y:1430},{name:fn.Wien,region:dn.Yellow,x:1265,y:1080},{name:fn.Budapest,region:dn.Yellow,x:1390,y:1080},{name:fn.Zagreb,region:dn.Yellow,x:1300,y:1180},{name:fn.Oslo,region:dn.Orange,x:1015,y:365},{name:fn.Stockholm,region:dn.Orange,x:1170,y:415},{name:fn.Helsinki,region:dn.Orange,x:1395,y:360},{name:fn.Tallinn,region:dn.Orange,x:1410,y:470},{name:fn.Riga,region:dn.Orange,x:1395,y:575},{name:fn.Kobenhavn,region:dn.Orange,x:1180,y:660},{name:fn.StPetersburg,region:dn.Orange,x:1620,y:460},{name:fn.Warszawa,region:dn.Blue,x:1500,y:815},{name:fn.Minsk,region:dn.Blue,x:1610,y:815},{name:fn.Moskwa,region:dn.Blue,x:1830,y:600},{name:fn.Kyjiv,region:dn.Blue,x:1690,y:980},{name:fn.Kharkiv,region:dn.Blue,x:1860,y:980},{name:fn.Odessa,region:dn.Blue,x:1720,y:1100},{name:fn.Bucuresti,region:dn.Blue,x:1610,y:1175},{name:fn.Beograd,region:dn.Green,x:1390,y:1175},{name:fn.Sofia,region:dn.Green,x:1505,y:1240},{name:fn.Tirana,region:dn.Green,x:1370,y:1330},{name:fn.Athina,region:dn.Green,x:1480,y:1450},{name:fn.Istanbul,region:dn.Green,x:1665,y:1335},{name:fn.Izmir,region:dn.Green,x:1730,y:1430},{name:fn.Ankara,region:dn.Green,x:1850,y:1380}],connections:[{nodes:[fn.Dublin,fn.Glasgow],cost:17},{nodes:[fn.Glasgow,fn.Birmingham],cost:13},{nodes:[fn.Dublin,fn.Birmingham],cost:15},{nodes:[fn.Birmingham,fn.London],cost:4},{nodes:[fn.London,fn.Vlaanderen],cost:15},{nodes:[fn.London,fn.Randstad],cost:18},{nodes:[fn.Randstad,fn.Vlaanderen],cost:4},{nodes:[fn.Vlaanderen,fn.RheinRuhr],cost:4},{nodes:[fn.Paris,fn.Bordeaux],cost:12},{nodes:[fn.Paris,fn.Lyon],cost:11},{nodes:[fn.Bordeaux,fn.Lyon],cost:12},{nodes:[fn.Lyon,fn.Marseille],cost:8},{nodes:[fn.Bordeaux,fn.Marseille],cost:12},{nodes:[fn.Marseille,fn.Barcelona],cost:11},{nodes:[fn.Bordeaux,fn.Barcelona],cost:15},{nodes:[fn.Bordeaux,fn.Madrid],cost:15},{nodes:[fn.Madrid,fn.Barcelona],cost:14},{nodes:[fn.Madrid,fn.Lisboa],cost:13},{nodes:[fn.Paris,fn.London],cost:16},{nodes:[fn.Paris,fn.Vlaanderen],cost:7},{nodes:[fn.Paris,fn.RheinRuhr],cost:10},{nodes:[fn.Bremen,fn.Berlin],cost:6},{nodes:[fn.Bremen,fn.RheinMain],cost:9},{nodes:[fn.Berlin,fn.RheinMain],cost:10},{nodes:[fn.Berlin,fn.Praha],cost:7},{nodes:[fn.RheinMain,fn.Praha],cost:10},{nodes:[fn.RheinMain,fn.München],cost:6},{nodes:[fn.RheinMain,fn.Stuttgart],cost:3},{nodes:[fn.Stuttgart,fn.München],cost:5},{nodes:[fn.München,fn.Praha],cost:6},{nodes:[fn.Praha,fn.Katowice],cost:8},{nodes:[fn.Bremen,fn.Randstad],cost:8},{nodes:[fn.Bremen,fn.Vlaanderen],cost:10},{nodes:[fn.RheinMain,fn.Vlaanderen],cost:6},{nodes:[fn.RheinMain,fn.RheinRuhr],cost:3},{nodes:[fn.Stuttgart,fn.Paris],cost:14},{nodes:[fn.Zürich,fn.Milano],cost:11},{nodes:[fn.Milano,fn.Zagreb],cost:17},{nodes:[fn.Milano,fn.Roma],cost:19},{nodes:[fn.Roma,fn.Napoli],cost:7},{nodes:[fn.Wien,fn.Budapest],cost:5},{nodes:[fn.Wien,fn.Zagreb],cost:8},{nodes:[fn.Budapest,fn.Zagreb],cost:7},{nodes:[fn.Paris,fn.Zürich],cost:14},{nodes:[fn.Lyon,fn.Zürich],cost:14},{nodes:[fn.Lyon,fn.Milano],cost:11},{nodes:[fn.Marseille,fn.Milano],cost:13},{nodes:[fn.Zürich,fn.München],cost:8},{nodes:[fn.Zürich,fn.Stuttgart],cost:5},{nodes:[fn.München,fn.Wien],cost:9},{nodes:[fn.Praha,fn.Wien],cost:7},{nodes:[fn.Wien,fn.Katowice],cost:8},{nodes:[fn.Budapest,fn.Katowice],cost:11},{nodes:[fn.Oslo,fn.Kobenhavn],cost:17},{nodes:[fn.Oslo,fn.Stockholm],cost:13},{nodes:[fn.Stockholm,fn.Kobenhavn],cost:18},{nodes:[fn.Stockholm,fn.Helsinki],cost:21},{nodes:[fn.Helsinki,fn.StPetersburg],cost:11},{nodes:[fn.Tallinn,fn.StPetersburg],cost:9},{nodes:[fn.Tallinn,fn.Riga],cost:7},{nodes:[fn.Riga,fn.StPetersburg],cost:13},{nodes:[fn.Kobenhavn,fn.Bremen],cost:12},{nodes:[fn.Kobenhavn,fn.Berlin],cost:15},{nodes:[fn.Warszawa,fn.Minsk],cost:10},{nodes:[fn.Warszawa,fn.Kyjiv],cost:14},{nodes:[fn.Minsk,fn.Moskwa],cost:14},{nodes:[fn.Minsk,fn.Kyjiv],cost:10},{nodes:[fn.Moskwa,fn.Kharkiv],cost:16},{nodes:[fn.Kyjiv,fn.Kharkiv],cost:9},{nodes:[fn.Kyjiv,fn.Odessa],cost:9},{nodes:[fn.Kharkiv,fn.Odessa],cost:13},{nodes:[fn.Odessa,fn.Bucuresti],cost:10},{nodes:[fn.Berlin,fn.Warszawa],cost:11},{nodes:[fn.Praha,fn.Warszawa],cost:11},{nodes:[fn.Katowice,fn.Warszawa],cost:5},{nodes:[fn.Kobenhavn,fn.Warszawa],cost:25},{nodes:[fn.Riga,fn.Warszawa],cost:12},{nodes:[fn.Riga,fn.Minsk],cost:8},{nodes:[fn.Riga,fn.Moskwa],cost:18},{nodes:[fn.StPetersburg,fn.Moskwa],cost:14},{nodes:[fn.Kyjiv,fn.Budapest],cost:21},{nodes:[fn.Odessa,fn.Budapest],cost:25},{nodes:[fn.Bucuresti,fn.Budapest],cost:16},{nodes:[fn.Beograd,fn.Sofia],cost:11},{nodes:[fn.Beograd,fn.Tirana],cost:15},{nodes:[fn.Sofia,fn.Tirana],cost:13},{nodes:[fn.Sofia,fn.Athina],cost:17},{nodes:[fn.Sofia,fn.Istanbul],cost:13},{nodes:[fn.Tirana,fn.Athina],cost:16},{nodes:[fn.Istanbul,fn.Izmir],cost:8},{nodes:[fn.Istanbul,fn.Ankara],cost:9},{nodes:[fn.Izmir,fn.Ankara],cost:10},{nodes:[fn.Bucuresti,fn.Beograd],cost:12},{nodes:[fn.Bucuresti,fn.Sofia],cost:9},{nodes:[fn.Bucuresti,fn.Istanbul],cost:13},{nodes:[fn.Beograd,fn.Zagreb],cost:9},{nodes:[fn.Beograd,fn.Napoli],cost:18},{nodes:[fn.Beograd,fn.Budapest],cost:10},{nodes:[fn.Tirana,fn.Napoli],cost:25}],layout:"Landscape",adjustRatio:[.5,.5],mapPosition:[-30,-50],mapRotation:10,resupply:[[[2,6,2],[2,6,2],[3,7,4],[3,8,4],[5,10,5]],[[2,2,3],[2,2,3],[3,3,4],[4,3,5],[4,5,6]],[[2,3,5],[2,3,5],[3,4,5],[3,5,7],[4,6,8]],[[1,1,2],[1,1,2],[1,2,2],[2,3,3],[2,3,4]]],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,5,5,6,6,7,7,8,8,9,9],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,9,9],garbagePrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8],uraniumPrices:[1,2,3,4,5,6,7,7,8,8,9,9],startingResources:[20,16,18,4],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ve),o=r.findIndex((function(e){return e.type===ve.Step3})),a=r.splice(o,1)[0],i=De(r.splice(0,13),t()+""),s=De(r,t()+""),c=i.splice(0,9).sort((function(e,n){return e.number-n.number})),u=c.slice(0,4),l=c.slice(4),d=0,f=0;2==e?(d=1,f=5):3==e?(d=2,f=6):4==e&&(d=1,f=3);var p=Math.max(0,d-i.length),h=i.slice(d),g=s.slice(f+p),y=De(h.concat(g),t()+"");if(y.length>0&&y[0].number<=15){var m=y.findIndex((function(e){return e.number>15}));if(m>0){var v=[y[m],y[0]];y[0]=v[0],y[m]=v[1]}}return y.push(a),{actualMarket:u,futureMarket:l,powerPlantsDeck:y}},mapSpecificRules:"Europe uses the New Power Plants Set 2 deck (cards with a plug on the back). The power plant market starts as 4 current + 5 future power plants (9 total). When Step 2 begins, remove the lowest-numbered plant from the current market from the game once and do not replace it; the future market then has 4 plants instead of 5."};(function(e){e["Brown"]="brown",e["Purple"]="purple",e["Blue"]="blue",e["Yellow"]="yellow",e["Green"]="green",e["Red"]="red"})(hn||(hn={})),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"}(gn||(gn={}));var mn,vn,bn={name:"France",cities:[{name:gn.Calais,region:hn.Brown,x:661,y:294},{name:gn.Lile,region:hn.Brown,x:791,y:328},{name:gn.Amiens,region:hn.Brown,x:700,y:433},{name:gn.Reims,region:hn.Brown,x:888,y:531},{name:gn.Metz,region:hn.Brown,x:1076,y:528},{name:gn.Nancy,region:hn.Brown,x:1078,y:643},{name:gn.Strasbourg,region:hn.Brown,x:1208,y:615},{name:gn.Havre,region:hn.Purple,x:487,y:471},{name:gn.Caen,region:hn.Purple,x:423,y:567},{name:gn.Brest,region:hn.Purple,x:79,y:654},{name:gn.Rennes,region:hn.Purple,x:326,y:695},{name:gn.Lemans,region:hn.Purple,x:516,y:699},{name:gn.Angers,region:hn.Purple,x:446,y:798},{name:gn.Rouen,region:hn.Purple,x:598,y:506},{name:gn.Paris1,region:hn.Blue,x:693,y:553},{name:gn.Paris2,region:hn.Blue,x:779,y:566},{name:gn.Paris3,region:hn.Blue,x:722,y:633},{name:gn.Orleans,region:hn.Blue,x:684,y:736},{name:gn.Tours,region:hn.Blue,x:564,y:813},{name:gn.Limoges,region:hn.Blue,x:605,y:1009},{name:gn.Clermontferrand,region:hn.Blue,x:777,y:1017},{name:gn.Besancon,region:hn.Yellow,x:1084,y:828},{name:gn.Dijon,region:hn.Yellow,x:964,y:801},{name:gn.Lyon,region:hn.Yellow,x:964,y:973},{name:gn.Chamonix,region:hn.Yellow,x:1153,y:987},{name:gn.Mulhouse,region:hn.Yellow,x:1180,y:742},{name:gn.Grenoble,region:hn.Yellow,x:1048,y:1116},{name:gn.Saintetienne,region:hn.Yellow,x:892,y:1088},{name:gn.Nice,region:hn.Green,x:1178,y:1302},{name:gn.Toulon,region:hn.Green,x:1070,y:1397},{name:gn.Aimenprovence,region:hn.Green,x:1016,y:1304},{name:gn.Marseille,region:hn.Green,x:954,y:1369},{name:gn.Nimes,region:hn.Green,x:889,y:1256},{name:gn.Montpellier,region:hn.Green,x:816,y:1330},{name:gn.Perpignan,region:hn.Green,x:767,y:1460},{name:gn.Nantes,region:hn.Red,x:330,y:833},{name:gn.Larochelle,region:hn.Red,x:379,y:959},{name:gn.Bordeaux,region:hn.Red,x:435,y:1148},{name:gn.Biarritz,region:hn.Red,x:345,y:1328},{name:gn.Toulous,region:hn.Red,x:621,y:1309},{name:gn.Carcassone,region:hn.Red,x:700,y:1382},{name:gn.Lourdes,region:hn.Red,x:479,y:1393}],connections:[{nodes:[gn.Calais,gn.Havre],cost:13},{nodes:[gn.Calais,gn.Lile],cost:7},{nodes:[gn.Calais,gn.Amiens],cost:8},{nodes:[gn.Lile,gn.Reims],cost:9},{nodes:[gn.Havre,gn.Rouen],cost:5},{nodes:[gn.Havre,gn.Caen],cost:5},{nodes:[gn.Caen,gn.Rennes],cost:12},{nodes:[gn.Rennes,gn.Brest],cost:16},{nodes:[gn.Brest,gn.Nantes],cost:19},{nodes:[gn.Rennes,gn.Nantes],cost:7},{nodes:[gn.Rennes,gn.Angers],cost:7},{nodes:[gn.Rennes,gn.Lemans],cost:9},{nodes:[gn.Caen,gn.Lemans],cost:10},{nodes:[gn.Lemans,gn.Paris3],cost:10},{nodes:[gn.Paris3,gn.Caen],cost:12},{nodes:[gn.Caen,gn.Rouen],cost:9},{nodes:[gn.Rouen,gn.Paris1],cost:9},{nodes:[gn.Rouen,gn.Amiens],cost:6},{nodes:[gn.Lile,gn.Amiens],cost:7},{nodes:[gn.Amiens,gn.Reims],cost:11},{nodes:[gn.Reims,gn.Metz],cost:12},{nodes:[gn.Metz,gn.Strasbourg],cost:11},{nodes:[gn.Strasbourg,gn.Nancy],cost:10},{nodes:[gn.Strasbourg,gn.Mulhouse],cost:6},{nodes:[gn.Mulhouse,gn.Besancon],cost:8},{nodes:[gn.Besancon,gn.Nancy],cost:14},{nodes:[gn.Nancy,gn.Dijon],cost:15},{nodes:[gn.Reims,gn.Nancy],cost:13},{nodes:[gn.Nancy,gn.Paris2],cost:21},{nodes:[gn.Paris1,gn.Paris2],cost:0},{nodes:[gn.Paris1,gn.Paris3],cost:0},{nodes:[gn.Paris2,gn.Dijon],cost:20},{nodes:[gn.Dijon,gn.Orleans],cost:18},{nodes:[gn.Orleans,gn.Lemans],cost:8},{nodes:[gn.Lemans,gn.Tours],cost:5},{nodes:[gn.Tours,gn.Orleans],cost:7},{nodes:[gn.Paris1,gn.Amiens],cost:9},{nodes:[gn.Dijon,gn.Clermontferrand],cost:19},{nodes:[gn.Clermontferrand,gn.Limoges],cost:12},{nodes:[gn.Limoges,gn.Toulous],cost:19},{nodes:[gn.Toulous,gn.Clermontferrand],cost:24},{nodes:[gn.Clermontferrand,gn.Montpellier],cost:22},{nodes:[gn.Montpellier,gn.Nimes],cost:3},{nodes:[gn.Saintetienne,gn.Grenoble],cost:10},{nodes:[gn.Grenoble,gn.Chamonix],cost:12},{nodes:[gn.Chamonix,gn.Besancon],cost:19},{nodes:[gn.Besancon,gn.Dijon],cost:6},{nodes:[gn.Dijon,gn.Lyon],cost:13},{nodes:[gn.Lyon,gn.Clermontferrand],cost:11},{nodes:[gn.Saintetienne,gn.Montpellier],cost:18},{nodes:[gn.Saintetienne,gn.Nimes],cost:16},{nodes:[gn.Nimes,gn.Aimenprovence],cost:8},{nodes:[gn.Aimenprovence,gn.Nice],cost:8},{nodes:[gn.Nice,gn.Toulon],cost:7},{nodes:[gn.Toulon,gn.Marseille],cost:3},{nodes:[gn.Marseille,gn.Aimenprovence],cost:0},{nodes:[gn.Nice,gn.Grenoble],cost:19},{nodes:[gn.Grenoble,gn.Aimenprovence],cost:17},{nodes:[gn.Grenoble,gn.Nimes],cost:18},{nodes:[gn.Montpellier,gn.Toulous],cost:14},{nodes:[gn.Toulous,gn.Bordeaux],cost:14},{nodes:[gn.Bordeaux,gn.Limoges],cost:13},{nodes:[gn.Limoges,gn.Tours],cost:13},{nodes:[gn.Tours,gn.Larochelle],cost:13},{nodes:[gn.Larochelle,gn.Angers],cost:12},{nodes:[gn.Angers,gn.Lemans],cost:5},{nodes:[gn.Angers,gn.Nantes],cost:5},{nodes:[gn.Nantes,gn.Larochelle],cost:9},{nodes:[gn.Larochelle,gn.Bordeaux],cost:13},{nodes:[gn.Bordeaux,gn.Biarritz],cost:12},{nodes:[gn.Bordeaux,gn.Lourdes],cost:14},{nodes:[gn.Lourdes,gn.Biarritz],cost:9},{nodes:[gn.Lourdes,gn.Toulous],cost:10},{nodes:[gn.Lourdes,gn.Carcassone],cost:15},{nodes:[gn.Lourdes,gn.Perpignan],cost:20},{nodes:[gn.Perpignan,gn.Carcassone],cost:6},{nodes:[gn.Carcassone,gn.Toulous],cost:6},{nodes:[gn.Carcassone,gn.Montpellier],cost:9},{nodes:[gn.Montpellier,gn.Perpignan],cost:11},{nodes:[gn.Orleans,gn.Limoges],cost:19},{nodes:[gn.Orleans,gn.Clermontferrand],cost:18},{nodes:[gn.Paris3,gn.Orleans],cost:7},{nodes:[gn.Angers,gn.Tours],cost:6},{nodes:[gn.Larochelle,gn.Limoges],cost:13},{nodes:[gn.Nancy,gn.Metz],cost:3},{nodes:[gn.Nancy,gn.Mulhouse],cost:12},{nodes:[gn.Besancon,gn.Lyon],cost:16},{nodes:[gn.Lyon,gn.Grenoble],cost:7},{nodes:[gn.Lyon,gn.Chamonix],cost:13},{nodes:[gn.Lyon,gn.Saintetienne],cost:6},{nodes:[gn.Saintetienne,gn.Clermontferrand],cost:10},{nodes:[gn.Paris2,gn.Reims],cost:9},{nodes:[gn.Paris3,gn.Paris2],cost:0}],layout:"Portrait",mapPosition:[50,-100],adjustRatio:[.7,.7],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[24,18,6,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){a=a.slice(8);var i=a.splice(0,1)[0];a.splice(1,1)[0];var s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{a.splice(10,1)[0];var c=a.splice(8,1)[0],u=De(a.splice(0,11),t()+""),l=u.splice(0,7);l.push(c),l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?a=De(a.slice(6).concat(u),t()+""):3==e?(u=u.slice(1),a=De(a.slice(6).concat(u),t()+"")):a=De(4==e?a.slice(3).concat(u):a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Remove power plant 13. Put power plant 11 on top of the deck."};(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(mn||(mn={})),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"}(vn||(vn={}));var wn,xn,kn={name:"Germany",cities:[{name:vn.Flensburg,region:mn.Green,x:37,y:427},{name:vn.Kiel,region:mn.Green,x:106,y:392},{name:vn.Hamburg,region:mn.Green,x:212,y:396},{name:vn.Hannover,region:mn.Green,x:378,y:395},{name:vn.Bremen,region:mn.Green,x:276,y:463},{name:vn.Wilhelmshaven,region:mn.Green,x:211,y:521},{name:vn.Cuxhaven,region:mn.Green,x:168,y:474},{name:vn.Lubeck,region:mn.Brown,x:153,y:341},{name:vn.Rostock,region:mn.Brown,x:128,y:256},{name:vn.Schwerin,region:mn.Brown,x:217,y:297},{name:vn.Torgelow,region:mn.Brown,x:210,y:126},{name:vn.Magdeburg,region:mn.Brown,x:389,y:271},{name:vn.Berlin,region:mn.Brown,x:355,y:170},{name:vn.FrankfurtO,region:mn.Brown,x:381,y:99},{name:vn.Halle,region:mn.Yellow,x:493,y:259},{name:vn.Leipzig,region:mn.Yellow,x:526,y:222},{name:vn.Dresden,region:mn.Yellow,x:572,y:126},{name:vn.Erfurt,region:mn.Yellow,x:567,y:309},{name:vn.Fulda,region:mn.Yellow,x:628,y:398},{name:vn.Würzburg,region:mn.Yellow,x:735,y:386},{name:vn.Nurnberg,region:mn.Yellow,x:780,y:309},{name:vn.Osnabrück,region:mn.Red,x:359,y:516},{name:vn.Münster,region:mn.Red,x:427,y:554},{name:vn.Essen,region:mn.Red,x:475,y:603},{name:vn.Duisburg,region:mn.Red,x:456,y:645},{name:vn.Dortmund,region:mn.Red,x:505,y:543},{name:vn.Dusseldorf,region:mn.Red,x:537,y:635},{name:vn.Kassel,region:mn.Red,x:524,y:430},{name:vn.Aachen,region:mn.Cyan,x:614,y:654},{name:vn.Köln,region:mn.Cyan,x:590,y:589},{name:vn.Trier,region:mn.Cyan,x:739,y:628},{name:vn.Wiesbaden,region:mn.Cyan,x:697,y:514},{name:vn.FrankfurtM,region:mn.Cyan,x:672,y:473},{name:vn.Saarbrücken,region:mn.Cyan,x:818,y:568},{name:vn.Mannheim,region:mn.Cyan,x:796,y:479},{name:vn.Freiburg,region:mn.Purple,x:966,y:537},{name:vn.Stuttgart,region:mn.Purple,x:884,y:458},{name:vn.Konstanz,region:mn.Purple,x:1011,y:459},{name:vn.Augsburg,region:mn.Purple,x:911,y:346},{name:vn.Regensburg,region:mn.Purple,x:846,y:256},{name:vn.München,region:mn.Purple,x:967,y:278},{name:vn.Passau,region:mn.Purple,x:904,y:153}],connections:[{nodes:[vn.Flensburg,vn.Kiel],cost:4},{nodes:[vn.Kiel,vn.Hamburg],cost:8},{nodes:[vn.Kiel,vn.Lubeck],cost:4},{nodes:[vn.Hamburg,vn.Hannover],cost:17},{nodes:[vn.Hamburg,vn.Bremen],cost:11},{nodes:[vn.Hamburg,vn.Cuxhaven],cost:11},{nodes:[vn.Hamburg,vn.Lubeck],cost:6},{nodes:[vn.Hamburg,vn.Schwerin],cost:8},{nodes:[vn.Bremen,vn.Wilhelmshaven],cost:11},{nodes:[vn.Bremen,vn.Hannover],cost:10},{nodes:[vn.Bremen,vn.Cuxhaven],cost:8},{nodes:[vn.Bremen,vn.Osnabrück],cost:11},{nodes:[vn.Hannover,vn.Schwerin],cost:19},{nodes:[vn.Hannover,vn.Magdeburg],cost:15},{nodes:[vn.Hannover,vn.Erfurt],cost:19},{nodes:[vn.Hannover,vn.Osnabrück],cost:16},{nodes:[vn.Hannover,vn.Kassel],cost:15},{nodes:[vn.Wilhelmshaven,vn.Osnabrück],cost:14},{nodes:[vn.Lubeck,vn.Schwerin],cost:6},{nodes:[vn.Schwerin,vn.Rostock],cost:6},{nodes:[vn.Schwerin,vn.Torgelow],cost:19},{nodes:[vn.Schwerin,vn.Berlin],cost:18},{nodes:[vn.Schwerin,vn.Magdeburg],cost:16},{nodes:[vn.Torgelow,vn.Rostock],cost:19},{nodes:[vn.Torgelow,vn.Berlin],cost:15},{nodes:[vn.Berlin,vn.Magdeburg],cost:10},{nodes:[vn.Berlin,vn.FrankfurtO],cost:6},{nodes:[vn.Berlin,vn.Halle],cost:17},{nodes:[vn.Magdeburg,vn.Halle],cost:11},{nodes:[vn.FrankfurtO,vn.Leipzig],cost:21},{nodes:[vn.FrankfurtO,vn.Dresden],cost:16},{nodes:[vn.Halle,vn.Leipzig],cost:0},{nodes:[vn.Leipzig,vn.Dresden],cost:13},{nodes:[vn.Erfurt,vn.Halle],cost:6},{nodes:[vn.Erfurt,vn.Dresden],cost:19},{nodes:[vn.Erfurt,vn.Nurnberg],cost:21},{nodes:[vn.Erfurt,vn.Fulda],cost:13},{nodes:[vn.Erfurt,vn.Kassel],cost:15},{nodes:[vn.Fulda,vn.Würzburg],cost:11},{nodes:[vn.Fulda,vn.Kassel],cost:8},{nodes:[vn.Fulda,vn.FrankfurtM],cost:8},{nodes:[vn.Würzburg,vn.Nurnberg],cost:8},{nodes:[vn.Würzburg,vn.FrankfurtM],cost:13},{nodes:[vn.Würzburg,vn.Mannheim],cost:10},{nodes:[vn.Würzburg,vn.Stuttgart],cost:12},{nodes:[vn.Würzburg,vn.Augsburg],cost:19},{nodes:[vn.Nurnberg,vn.Augsburg],cost:18},{nodes:[vn.Nurnberg,vn.Regensburg],cost:12},{nodes:[vn.Osnabrück,vn.Münster],cost:7},{nodes:[vn.Osnabrück,vn.Kassel],cost:20},{nodes:[vn.Münster,vn.Essen],cost:6},{nodes:[vn.Münster,vn.Dortmund],cost:2},{nodes:[vn.Essen,vn.Duisburg],cost:0},{nodes:[vn.Essen,vn.Dusseldorf],cost:2},{nodes:[vn.Essen,vn.Dortmund],cost:4},{nodes:[vn.Dortmund,vn.Kassel],cost:18},{nodes:[vn.Dortmund,vn.Köln],cost:10},{nodes:[vn.Dortmund,vn.FrankfurtM],cost:20},{nodes:[vn.Kassel,vn.FrankfurtM],cost:13},{nodes:[vn.Dusseldorf,vn.Aachen],cost:9},{nodes:[vn.Dusseldorf,vn.Köln],cost:4},{nodes:[vn.Aachen,vn.Köln],cost:7},{nodes:[vn.Aachen,vn.Trier],cost:19},{nodes:[vn.Trier,vn.Köln],cost:20},{nodes:[vn.Trier,vn.Wiesbaden],cost:18},{nodes:[vn.Trier,vn.Saarbrücken],cost:11},{nodes:[vn.Wiesbaden,vn.FrankfurtM],cost:0},{nodes:[vn.Wiesbaden,vn.Köln],cost:21},{nodes:[vn.Wiesbaden,vn.Saarbrücken],cost:10},{nodes:[vn.Wiesbaden,vn.Mannheim],cost:11},{nodes:[vn.Mannheim,vn.Saarbrücken],cost:11},{nodes:[vn.Mannheim,vn.Stuttgart],cost:6},{nodes:[vn.Stuttgart,vn.Saarbrücken],cost:17},{nodes:[vn.Stuttgart,vn.Freiburg],cost:16},{nodes:[vn.Stuttgart,vn.Konstanz],cost:16},{nodes:[vn.Stuttgart,vn.Augsburg],cost:15},{nodes:[vn.Konstanz,vn.Freiburg],cost:14},{nodes:[vn.Konstanz,vn.Augsburg],cost:17},{nodes:[vn.Regensburg,vn.Augsburg],cost:13},{nodes:[vn.Regensburg,vn.München],cost:10},{nodes:[vn.Regensburg,vn.Passau],cost:12},{nodes:[vn.Augsburg,vn.München],cost:6},{nodes:[vn.Passau,vn.München],cost:14}],layout:"Landscape",mapPosition:[20,20]},_n={name:"Germany",cities:[{name:vn.Flensburg,region:mn.Green,x:37,y:427},{name:vn.Kiel,region:mn.Green,x:106,y:392},{name:vn.Hamburg,region:mn.Green,x:212,y:396},{name:vn.Hannover,region:mn.Green,x:378,y:395},{name:vn.Bremen,region:mn.Green,x:276,y:463},{name:vn.Wilhelmshaven,region:mn.Green,x:211,y:521},{name:vn.Cuxhaven,region:mn.Green,x:168,y:474},{name:vn.Lubeck,region:mn.Brown,x:153,y:341},{name:vn.Rostock,region:mn.Brown,x:128,y:256},{name:vn.Schwerin,region:mn.Brown,x:217,y:297},{name:vn.Stralsund,region:mn.Brown,x:210,y:126},{name:vn.Magdeburg,region:mn.Brown,x:389,y:271},{name:vn.Berlin,region:mn.Brown,x:355,y:170},{name:vn.FrankfurtO,region:mn.Brown,x:381,y:99},{name:vn.Halle,region:mn.Yellow,x:493,y:259},{name:vn.Leipzig,region:mn.Yellow,x:526,y:222},{name:vn.Dresden,region:mn.Yellow,x:572,y:126},{name:vn.Erfurt,region:mn.Yellow,x:567,y:309},{name:vn.Fulda,region:mn.Yellow,x:628,y:398},{name:vn.Würzburg,region:mn.Yellow,x:735,y:386},{name:vn.Nurnberg,region:mn.Yellow,x:780,y:309},{name:vn.Osnabrück,region:mn.Red,x:359,y:516},{name:vn.Münster,region:mn.Red,x:427,y:554},{name:vn.Essen,region:mn.Red,x:475,y:603},{name:vn.Duisburg,region:mn.Red,x:456,y:645},{name:vn.Dortmund,region:mn.Red,x:505,y:543},{name:vn.Dusseldorf,region:mn.Red,x:537,y:635},{name:vn.Kassel,region:mn.Red,x:524,y:430},{name:vn.Aachen,region:mn.Cyan,x:614,y:654},{name:vn.Köln,region:mn.Cyan,x:590,y:589},{name:vn.Trier,region:mn.Cyan,x:739,y:628},{name:vn.Mainz,region:mn.Cyan,x:697,y:514},{name:vn.FrankfurtM,region:mn.Cyan,x:672,y:473},{name:vn.Saarbrücken,region:mn.Cyan,x:818,y:568},{name:vn.Mannheim,region:mn.Cyan,x:796,y:479},{name:vn.Freiburg,region:mn.Purple,x:966,y:537},{name:vn.Stuttgart,region:mn.Purple,x:884,y:458},{name:vn.Konstanz,region:mn.Purple,x:1011,y:459},{name:vn.Augsburg,region:mn.Purple,x:911,y:346},{name:vn.Regensburg,region:mn.Purple,x:846,y:256},{name:vn.München,region:mn.Purple,x:967,y:278},{name:vn.Passau,region:mn.Purple,x:904,y:153}],connections:[{nodes:[vn.Flensburg,vn.Kiel],cost:4},{nodes:[vn.Kiel,vn.Hamburg],cost:8},{nodes:[vn.Kiel,vn.Lubeck],cost:4},{nodes:[vn.Hamburg,vn.Hannover],cost:17},{nodes:[vn.Hamburg,vn.Bremen],cost:11},{nodes:[vn.Hamburg,vn.Cuxhaven],cost:11},{nodes:[vn.Hamburg,vn.Lubeck],cost:6},{nodes:[vn.Hamburg,vn.Schwerin],cost:8},{nodes:[vn.Bremen,vn.Wilhelmshaven],cost:11},{nodes:[vn.Bremen,vn.Hannover],cost:10},{nodes:[vn.Bremen,vn.Cuxhaven],cost:8},{nodes:[vn.Bremen,vn.Osnabrück],cost:11},{nodes:[vn.Hannover,vn.Schwerin],cost:19},{nodes:[vn.Hannover,vn.Magdeburg],cost:15},{nodes:[vn.Hannover,vn.Erfurt],cost:19},{nodes:[vn.Hannover,vn.Osnabrück],cost:16},{nodes:[vn.Hannover,vn.Kassel],cost:15},{nodes:[vn.Wilhelmshaven,vn.Osnabrück],cost:14},{nodes:[vn.Lubeck,vn.Schwerin],cost:6},{nodes:[vn.Schwerin,vn.Rostock],cost:6},{nodes:[vn.Schwerin,vn.Stralsund],cost:19},{nodes:[vn.Schwerin,vn.Berlin],cost:18},{nodes:[vn.Schwerin,vn.Magdeburg],cost:16},{nodes:[vn.Stralsund,vn.Rostock],cost:19},{nodes:[vn.Stralsund,vn.Berlin],cost:15},{nodes:[vn.Berlin,vn.Magdeburg],cost:10},{nodes:[vn.Berlin,vn.FrankfurtO],cost:6},{nodes:[vn.Berlin,vn.Halle],cost:17},{nodes:[vn.Magdeburg,vn.Halle],cost:11},{nodes:[vn.FrankfurtO,vn.Leipzig],cost:21},{nodes:[vn.FrankfurtO,vn.Dresden],cost:16},{nodes:[vn.Halle,vn.Leipzig],cost:0},{nodes:[vn.Leipzig,vn.Dresden],cost:13},{nodes:[vn.Erfurt,vn.Halle],cost:6},{nodes:[vn.Erfurt,vn.Dresden],cost:19},{nodes:[vn.Erfurt,vn.Nurnberg],cost:21},{nodes:[vn.Erfurt,vn.Fulda],cost:13},{nodes:[vn.Erfurt,vn.Kassel],cost:15},{nodes:[vn.Fulda,vn.Würzburg],cost:11},{nodes:[vn.Fulda,vn.Kassel],cost:8},{nodes:[vn.Fulda,vn.FrankfurtM],cost:8},{nodes:[vn.Würzburg,vn.Nurnberg],cost:8},{nodes:[vn.Würzburg,vn.FrankfurtM],cost:13},{nodes:[vn.Würzburg,vn.Mannheim],cost:10},{nodes:[vn.Würzburg,vn.Stuttgart],cost:12},{nodes:[vn.Würzburg,vn.Augsburg],cost:19},{nodes:[vn.Nurnberg,vn.Augsburg],cost:18},{nodes:[vn.Nurnberg,vn.Regensburg],cost:12},{nodes:[vn.Osnabrück,vn.Münster],cost:7},{nodes:[vn.Osnabrück,vn.Kassel],cost:20},{nodes:[vn.Münster,vn.Essen],cost:6},{nodes:[vn.Münster,vn.Dortmund],cost:2},{nodes:[vn.Essen,vn.Duisburg],cost:0},{nodes:[vn.Essen,vn.Dusseldorf],cost:2},{nodes:[vn.Essen,vn.Dortmund],cost:5},{nodes:[vn.Dortmund,vn.Kassel],cost:18},{nodes:[vn.Dortmund,vn.Köln],cost:10},{nodes:[vn.Dortmund,vn.FrankfurtM],cost:20},{nodes:[vn.Kassel,vn.FrankfurtM],cost:13},{nodes:[vn.Dusseldorf,vn.Aachen],cost:9},{nodes:[vn.Dusseldorf,vn.Köln],cost:4},{nodes:[vn.Aachen,vn.Köln],cost:7},{nodes:[vn.Aachen,vn.Trier],cost:19},{nodes:[vn.Trier,vn.Köln],cost:20},{nodes:[vn.Trier,vn.Mainz],cost:18},{nodes:[vn.Trier,vn.Saarbrücken],cost:11},{nodes:[vn.Mainz,vn.FrankfurtM],cost:0},{nodes:[vn.Mainz,vn.Köln],cost:21},{nodes:[vn.Mainz,vn.Saarbrücken],cost:10},{nodes:[vn.Mainz,vn.Mannheim],cost:11},{nodes:[vn.Mannheim,vn.Saarbrücken],cost:16},{nodes:[vn.Mannheim,vn.Stuttgart],cost:6},{nodes:[vn.Stuttgart,vn.Saarbrücken],cost:17},{nodes:[vn.Stuttgart,vn.Freiburg],cost:16},{nodes:[vn.Stuttgart,vn.Konstanz],cost:16},{nodes:[vn.Stuttgart,vn.Augsburg],cost:15},{nodes:[vn.Konstanz,vn.Freiburg],cost:14},{nodes:[vn.Konstanz,vn.Augsburg],cost:17},{nodes:[vn.Regensburg,vn.Augsburg],cost:13},{nodes:[vn.Regensburg,vn.München],cost:10},{nodes:[vn.Regensburg,vn.Passau],cost:12},{nodes:[vn.Augsburg,vn.München],cost:6},{nodes:[vn.Passau,vn.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"})(wn||(wn={})),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"}(xn||(xn={}));var Pn,Sn,Mn={name:"India",cities:[{name:xn.Thiruvananthapuram,region:wn.Red,x:217,y:868},{name:xn.Madurai,region:wn.Red,x:230,y:829},{name:xn.Coimbatore,region:wn.Red,x:197,y:797},{name:xn.Chennai,region:wn.Red,x:289,y:740},{name:xn.Hyderabad,region:wn.Red,x:232,y:618},{name:xn.Bangalore1,region:wn.Red,x:205,y:710},{name:xn.Bangalore2,region:wn.Red,x:205,y:735},{name:xn.Dibrugarh,region:wn.Brown,x:669,y:328},{name:xn.Imphal,region:wn.Brown,x:658,y:392},{name:xn.Aizawi,region:wn.Brown,x:625,y:427},{name:xn.Chittagong,region:wn.Brown,x:589,y:483},{name:xn.Shillong,region:wn.Brown,x:586,y:395},{name:xn.Dhaka,region:wn.Brown,x:548,y:432},{name:xn.Khulna,region:wn.Brown,x:528,y:468},{name:xn.Darjeeling,region:wn.Green,x:496,y:333},{name:xn.Kathmandu,region:wn.Green,x:418,y:307},{name:xn.Patna,region:wn.Green,x:416,y:373},{name:xn.Lakhnau,region:wn.Green,x:310,y:338},{name:xn.Varanasi,region:wn.Green,x:350,y:385},{name:xn.Agra,region:wn.Green,x:228,y:335},{name:xn.Kanpur,region:wn.Green,x:269,y:373},{name:xn.Srinagar,region:wn.Orange,x:135,y:115},{name:xn.Ludhiana,region:wn.Orange,x:186,y:215},{name:xn.Delhi1,region:wn.Orange,x:190,y:281},{name:xn.Delhi2,region:wn.Orange,x:190,y:303},{name:xn.Jaipur,region:wn.Orange,x:158,y:341},{name:xn.Udaipur,region:wn.Orange,x:105,y:410},{name:xn.Ahmedabad,region:wn.Orange,x:75,y:456},{name:xn.Dhanbad,region:wn.Yellow,x:424,y:427},{name:xn.Kolkata,region:wn.Yellow,x:463,y:477},{name:xn.Bhudaneswar,region:wn.Yellow,x:428,y:533},{name:xn.Sambalpur,region:wn.Yellow,x:376,y:494},{name:xn.Jabalpur,region:wn.Yellow,x:293,y:478},{name:xn.Nagpur,region:wn.Yellow,x:250,y:510},{name:xn.Visakhapatnam,region:wn.Yellow,x:358,y:597},{name:xn.Goa,region:wn.Pink,x:109,y:677},{name:xn.Pune,region:wn.Pink,x:133,y:587},{name:xn.Surat,region:wn.Pink,x:80,y:510},{name:xn.Indore,region:wn.Pink,x:160,y:476},{name:xn.Bhopal,region:wn.Pink,x:208,y:437},{name:xn.Mumbai1,region:wn.Pink,x:58,y:570},{name:xn.Mumbai2,region:wn.Pink,x:58,y:593}],connections:[{nodes:[xn.Srinagar,xn.Ludhiana],cost:15},{nodes:[xn.Ludhiana,xn.Delhi1],cost:9},{nodes:[xn.Delhi1,xn.Delhi2],cost:0},{nodes:[xn.Delhi2,xn.Jaipur],cost:7},{nodes:[xn.Delhi2,xn.Agra],cost:6},{nodes:[xn.Jaipur,xn.Bhopal],cost:12},{nodes:[xn.Jaipur,xn.Kanpur],cost:12},{nodes:[xn.Agra,xn.Lakhnau],cost:8},{nodes:[xn.Lakhnau,xn.Kathmandu],cost:15},{nodes:[xn.Kathmandu,xn.Darjeeling],cost:13},{nodes:[xn.Darjeeling,xn.Shillong],cost:12},{nodes:[xn.Shillong,xn.Patna],cost:18},{nodes:[xn.Patna,xn.Kathmandu],cost:10},{nodes:[xn.Imphal,xn.Dibrugarh],cost:11},{nodes:[xn.Dibrugarh,xn.Shillong],cost:9},{nodes:[xn.Shillong,xn.Imphal],cost:12},{nodes:[xn.Imphal,xn.Aizawi],cost:7},{nodes:[xn.Shillong,xn.Dhaka],cost:10},{nodes:[xn.Dhaka,xn.Khulna],cost:6},{nodes:[xn.Khulna,xn.Kolkata],cost:3},{nodes:[xn.Dhanbad,xn.Dhaka],cost:14},{nodes:[xn.Jabalpur,xn.Sambalpur],cost:13},{nodes:[xn.Sambalpur,xn.Nagpur],cost:13},{nodes:[xn.Nagpur,xn.Visakhapatnam],cost:17},{nodes:[xn.Visakhapatnam,xn.Sambalpur],cost:12},{nodes:[xn.Jabalpur,xn.Kanpur],cost:11},{nodes:[xn.Varanasi,xn.Jabalpur],cost:11},{nodes:[xn.Kanpur,xn.Varanasi],cost:8},{nodes:[xn.Varanasi,xn.Patna],cost:5},{nodes:[xn.Patna,xn.Lakhnau],cost:11},{nodes:[xn.Kanpur,xn.Bhopal],cost:13},{nodes:[xn.Ahmedabad,xn.Bhopal],cost:11},{nodes:[xn.Bhopal,xn.Udaipur],cost:11},{nodes:[xn.Udaipur,xn.Jaipur],cost:9},{nodes:[xn.Ahmedabad,xn.Surat],cost:7},{nodes:[xn.Ahmedabad,xn.Indore],cost:8},{nodes:[xn.Indore,xn.Surat],cost:10},{nodes:[xn.Mumbai1,xn.Mumbai2],cost:0},{nodes:[xn.Mumbai2,xn.Pune],cost:4},{nodes:[xn.Pune,xn.Hyderabad],cost:13},{nodes:[xn.Pune,xn.Nagpur],cost:17},{nodes:[xn.Pune,xn.Indore],cost:15},{nodes:[xn.Goa,xn.Coimbatore],cost:18},{nodes:[xn.Bangalore1,xn.Bangalore2],cost:0},{nodes:[xn.Bangalore2,xn.Coimbatore],cost:9},{nodes:[xn.Coimbatore,xn.Thiruvananthapuram],cost:10},{nodes:[xn.Thiruvananthapuram,xn.Madurai],cost:7},{nodes:[xn.Madurai,xn.Chennai],cost:12},{nodes:[xn.Chennai,xn.Bangalore1],cost:9},{nodes:[xn.Bangalore1,xn.Hyderabad],cost:14},{nodes:[xn.Hyderabad,xn.Goa],cost:15},{nodes:[xn.Goa,xn.Bangalore2],cost:14},{nodes:[xn.Mumbai2,xn.Goa],cost:11},{nodes:[xn.Indore,xn.Nagpur],cost:10},{nodes:[xn.Sambalpur,xn.Dhanbad],cost:8},{nodes:[xn.Sambalpur,xn.Bhudaneswar],cost:7},{nodes:[xn.Bhudaneswar,xn.Kolkata],cost:11},{nodes:[xn.Kolkata,xn.Dhanbad],cost:9},{nodes:[xn.Dhanbad,xn.Patna],cost:8},{nodes:[xn.Nagpur,xn.Hyderabad],cost:12},{nodes:[xn.Hyderabad,xn.Visakhapatnam],cost:13},{nodes:[xn.Visakhapatnam,xn.Chennai],cost:17},{nodes:[xn.Chittagong,xn.Aizawi],cost:7},{nodes:[xn.Dhaka,xn.Aizawi],cost:8},{nodes:[xn.Dhaka,xn.Chittagong],cost:7},{nodes:[xn.Patna,xn.Darjeeling],cost:11},{nodes:[xn.Visakhapatnam,xn.Bhudaneswar],cost:12},{nodes:[xn.Udaipur,xn.Ahmedabad],cost:6},{nodes:[xn.Madurai,xn.Coimbatore],cost:6},{nodes:[xn.Bangalore2,xn.Madurai],cost:10},{nodes:[xn.Bhopal,xn.Jabalpur],cost:8},{nodes:[xn.Bhopal,xn.Nagpur],cost:7},{nodes:[xn.Bhopal,xn.Indore],cost:4},{nodes:[xn.Surat,xn.Mumbai1],cost:6},{nodes:[xn.Agra,xn.Kanpur],cost:8},{nodes:[xn.Kanpur,xn.Lakhnau],cost:3},{nodes:[xn.Lakhnau,xn.Varanasi],cost:7}],layout:"Portrait",mapPosition:[200,-60],adjustRatio:[1.25,1.25],resupply:[[[4,5,4],[5,6,4],[6,7,5],[7,8,6],[8,10,7]],[[1,2,2],[2,2,2],[2,3,3],[3,4,4],[4,5,5]],[[1,3,4],[1,3,4],[3,4,6],[4,5,7],[4,7,9]],[[1,1,1],[1,1,1],[1,2,1],[2,2,2],[2,3,2]]],startingResources:[24,21,20,2],startingSupply:[24,24,24,8],maxPriceAvailable:[3,5,8],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],garbagePrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6],uraniumPrices:[1,2,3,4,5,6,7,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Je);if("original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[Yt(3,"India"),Yt(4,"India"),Yt(5,"India"),Yt(6,"India")],o=[Yt(7,"India"),Yt(8,"India"),Yt(9,"India"),Yt(10,"India")]}else{var c=De(a.splice(0,12),t()+""),u=c.splice(0,8);u=u.sort((function(e,n){return e.number-n.number})),r=u.slice(0,4),o=u.slice(4);var l=c.shift(),d=a.pop();a=De(a,t()+""),2==e?(c=c.slice(1),a=De(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=De(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=De(a.slice(3).concat(c),t()+"")):a=De(a.concat(c),t()+""),a.unshift(l),a.push(d)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"The power grid will suffer a power outage if too many cities are built in one round, penalizing players $3 per city built.\nPlayers take turns buying one resource at a time. The resource market is limited in steps 1 and 2.\nGarbage plants are less efficient. Their cost is one higher, but their storage capacity is not changed.\nPlayers must power as many cities as possible in each round."};(function(e){e["Brown"]="brown",e["Purple"]="purple",e["Red"]="red",e["Green"]="green",e["Yellow"]="yellow",e["Blue"]="blue"})(Pn||(Pn={})),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"}(Sn||(Sn={}));var Cn,Bn,Rn={name:"Italy",cities:[{name:Sn.Siracusa,region:Pn.Brown,x:1048,y:471},{name:Sn.Reggiodical,region:Pn.Brown,x:1013,y:346},{name:Sn.Cosenza,region:Pn.Brown,x:960,y:240},{name:Sn.Messina,region:Pn.Brown,x:975,y:365},{name:Sn.Palermo,region:Pn.Brown,x:875,y:468},{name:Sn.Catania,region:Pn.Brown,x:1007,y:460},{name:Sn.Brindisi,region:Pn.Purple,x:945,y:4},{name:Sn.Taranto,region:Pn.Brown,x:933,y:92},{name:Sn.Bari,region:Pn.Purple,x:871,y:32},{name:Sn.Foggia,region:Pn.Purple,x:777,y:69},{name:Sn.Pesara,region:Pn.Purple,x:646,y:76},{name:Sn.Napoli,region:Pn.Purple,x:747,y:222},{name:Sn.Salerno,region:Pn.Purple,x:799,y:212},{name:Sn.Roma,region:Pn.Purple,x:583,y:228},{name:Sn.Ancona,region:Pn.Red,x:549,y:16},{name:Sn.Rimini,region:Pn.Red,x:459,y:13},{name:Sn.Ravenna,region:Pn.Red,x:401,y:-5},{name:Sn.Sanmarino,region:Pn.Red,x:456,y:88},{name:Sn.Perugia,region:Pn.Red,x:507,y:123},{name:Sn.Frienze,region:Pn.Red,x:389,y:159},{name:Sn.Udine,region:Pn.Green,x:358,y:-207},{name:Sn.Trieste,region:Pn.Green,x:410,y:-181},{name:Sn.Bolanzo,region:Pn.Green,x:197,y:-172},{name:Sn.Mestre,region:Pn.Green,x:318,y:-115},{name:Sn.Venezia,region:Pn.Green,x:349,y:-103},{name:Sn.Vicenza,region:Pn.Green,x:235,y:-89},{name:Sn.Padua,region:Pn.Green,x:279,y:-72},{name:Sn.Torino,region:Pn.Blue,x:57,y:215},{name:Sn.Bergamo,region:Pn.Blue,x:125,y:14},{name:Sn.Milano,region:Pn.Blue,x:123,y:102},{name:Sn.Brescia,region:Pn.Blue,x:182,y:2},{name:Sn.Picenza,region:Pn.Blue,x:182,y:105},{name:Sn.Genova,region:Pn.Blue,x:182,y:217},{name:Sn.Verona,region:Pn.Blue,x:231,y:-13},{name:Sn.Lovorno,region:Pn.Red,x:333,y:216},{name:Sn.Ferrara,region:Pn.Yellow,x:333,y:-3},{name:Sn.Bologna,region:Pn.Yellow,x:350,y:85},{name:Sn.Modena,region:Pn.Yellow,x:303,y:72},{name:Sn.Reggio,region:Pn.Yellow,x:263,y:96},{name:Sn.Pisa,region:Pn.Yellow,x:304,y:197},{name:Sn.Parma,region:Pn.Yellow,x:224,y:81},{name:Sn.Laspezia,region:Pn.Yellow,x:245,y:206}],connections:[{nodes:[Sn.Palermo,Sn.Catania],cost:15},{nodes:[Sn.Catania,Sn.Siracusa],cost:3},{nodes:[Sn.Catania,Sn.Messina],cost:6},{nodes:[Sn.Messina,Sn.Palermo],cost:15},{nodes:[Sn.Messina,Sn.Reggiodical],cost:3},{nodes:[Sn.Reggiodical,Sn.Cosenza],cost:13},{nodes:[Sn.Cosenza,Sn.Salerno],cost:18},{nodes:[Sn.Cosenza,Sn.Taranto],cost:15},{nodes:[Sn.Taranto,Sn.Brindisi],cost:4},{nodes:[Sn.Brindisi,Sn.Bari],cost:7},{nodes:[Sn.Bari,Sn.Taranto],cost:7},{nodes:[Sn.Taranto,Sn.Salerno],cost:19},{nodes:[Sn.Salerno,Sn.Bari],cost:16},{nodes:[Sn.Bari,Sn.Foggia],cost:8},{nodes:[Sn.Foggia,Sn.Salerno],cost:10},{nodes:[Sn.Salerno,Sn.Napoli],cost:3},{nodes:[Sn.Napoli,Sn.Foggia],cost:12},{nodes:[Sn.Napoli,Sn.Roma],cost:14},{nodes:[Sn.Roma,Sn.Foggia],cost:22},{nodes:[Sn.Foggia,Sn.Pesara],cost:10},{nodes:[Sn.Pesara,Sn.Roma],cost:14},{nodes:[Sn.Roma,Sn.Ancona],cost:17},{nodes:[Sn.Roma,Sn.Perugia],cost:13},{nodes:[Sn.Perugia,Sn.Sanmarino],cost:12},{nodes:[Sn.Sanmarino,Sn.Rimini],cost:0},{nodes:[Sn.Rimini,Sn.Ancona],cost:6},{nodes:[Sn.Ancona,Sn.Perugia],cost:10},{nodes:[Sn.Ancona,Sn.Pesara],cost:9},{nodes:[Sn.Roma,Sn.Frienze],cost:20},{nodes:[Sn.Lovorno,Sn.Roma],cost:19},{nodes:[Sn.Frienze,Sn.Perugia],cost:13},{nodes:[Sn.Frienze,Sn.Sanmarino],cost:12},{nodes:[Sn.Genova,Sn.Torino],cost:12},{nodes:[Sn.Torino,Sn.Milano],cost:8},{nodes:[Sn.Milano,Sn.Bergamo],cost:3},{nodes:[Sn.Bergamo,Sn.Bolanzo],cost:12},{nodes:[Sn.Bolanzo,Sn.Brescia],cost:12},{nodes:[Sn.Bolanzo,Sn.Mestre],cost:12},{nodes:[Sn.Bolanzo,Sn.Udine],cost:14},{nodes:[Sn.Udine,Sn.Trieste],cost:4},{nodes:[Sn.Udine,Sn.Venezia],cost:7},{nodes:[Sn.Venezia,Sn.Mestre],cost:0},{nodes:[Sn.Genova,Sn.Laspezia],cost:5},{nodes:[Sn.Laspezia,Sn.Pisa],cost:5},{nodes:[Sn.Pisa,Sn.Lovorno],cost:0},{nodes:[Sn.Genova,Sn.Milano],cost:9},{nodes:[Sn.Milano,Sn.Picenza],cost:4},{nodes:[Sn.Picenza,Sn.Parma],cost:4},{nodes:[Sn.Parma,Sn.Reggio],cost:2},{nodes:[Sn.Reggio,Sn.Modena],cost:2},{nodes:[Sn.Modena,Sn.Bologna],cost:3},{nodes:[Sn.Bologna,Sn.Pisa],cost:12},{nodes:[Sn.Pisa,Sn.Reggio],cost:10},{nodes:[Sn.Laspezia,Sn.Parma],cost:9},{nodes:[Sn.Laspezia,Sn.Reggio],cost:9},{nodes:[Sn.Genova,Sn.Picenza],cost:7},{nodes:[Sn.Genova,Sn.Parma],cost:11},{nodes:[Sn.Milano,Sn.Brescia],cost:4},{nodes:[Sn.Brescia,Sn.Bergamo],cost:3},{nodes:[Sn.Brescia,Sn.Verona],cost:4},{nodes:[Sn.Brescia,Sn.Picenza],cost:5},{nodes:[Sn.Bolanzo,Sn.Vicenza],cost:10},{nodes:[Sn.Vicenza,Sn.Padua],cost:3},{nodes:[Sn.Vicenza,Sn.Verona],cost:3},{nodes:[Sn.Verona,Sn.Parma],cost:6},{nodes:[Sn.Parma,Sn.Brescia],cost:6},{nodes:[Sn.Verona,Sn.Padua],cost:5},{nodes:[Sn.Padua,Sn.Mestre],cost:3},{nodes:[Sn.Venezia,Sn.Ravenna],cost:12},{nodes:[Sn.Ravenna,Sn.Ferrara],cost:4},{nodes:[Sn.Ferrara,Sn.Venezia],cost:9},{nodes:[Sn.Ferrara,Sn.Padua],cost:7},{nodes:[Sn.Ferrara,Sn.Verona],cost:7},{nodes:[Sn.Verona,Sn.Modena],cost:8},{nodes:[Sn.Frienze,Sn.Pisa],cost:5},{nodes:[Sn.Frienze,Sn.Ravenna],cost:10},{nodes:[Sn.Ravenna,Sn.Rimini],cost:4},{nodes:[Sn.Frienze,Sn.Bologna],cost:8},{nodes:[Sn.Bologna,Sn.Ravenna],cost:4},{nodes:[Sn.Bologna,Sn.Ferrara],cost:3},{nodes:[Sn.Ferrara,Sn.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"})(Cn||(Cn={})),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"}(Bn||(Bn={}));var An,Ln,On={name:"Japan",cities:[{name:Bn.Asahikawa,region:Cn.Brown,x:3384,y:1014},{name:Bn.Sapporo,region:Cn.Brown,x:3028,y:982,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Hakodate,region:Cn.Brown,x:2622,y:1112},{name:Bn.Admori,region:Cn.Brown,x:3818,y:1336},{name:Bn.Morioka,region:Cn.Brown,x:3636,y:1646,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Akita,region:Cn.Brown,x:3472,y:1480},{name:Bn.Sendai,region:Cn.Brown,x:3408,y:1886},{name:Bn.Niigata,region:Cn.Green,x:2874,y:1628},{name:Bn.Koriyama,region:Cn.Green,x:3086,y:1932,slotCosts:[10,15]},{name:Bn.Nagano,region:Cn.Green,x:2486,y:1722},{name:Bn.Saitama,region:Cn.Green,x:2450,y:1986,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Tokyo,region:Cn.Green,x:2524,y:2122,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Chiba,region:Cn.Green,x:2650,y:2316},{name:Bn.Yokohama,region:Cn.Green,x:2306,y:2244,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Kanazawa,region:Cn.Purple,x:2207,y:1385},{name:Bn.Toyama,region:Cn.Purple,x:2257,y:1595,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Kyoto,region:Cn.Purple,x:1765,y:1595},{name:Bn.Osaka,region:Cn.Purple,x:1517,y:1631,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Nagoya,region:Cn.Purple,x:1942,y:1751},{name:Bn.Kofu,region:Cn.Purple,x:2179,y:1897},{name:Bn.Hamamatsu,region:Cn.Purple,x:1958,y:2024,slotCosts:[10,15]},{name:Bn.Kobe,region:Cn.Yellow,x:1555,y:1451,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Matsue,region:Cn.Yellow,x:1457,y:1006,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Okayama,region:Cn.Yellow,x:1390,y:1286},{name:Bn.Takamatsu,region:Cn.Yellow,x:1268,y:1507},{name:Bn.Kochi,region:Cn.Yellow,x:974,y:1472,slotCosts:[10,15]},{name:Bn.Matsuyama,region:Cn.Yellow,x:1036,y:1268},{name:Bn.Hiroshima,region:Cn.Yellow,x:1103,y:1078},{name:Bn.Shimonoseki,region:Cn.Red,x:856,y:962},{name:Bn.Oita,region:Cn.Red,x:731,y:1166,slotCosts:[10,15]},{name:Bn.Miyazaki,region:Cn.Red,x:469,y:1318,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Bn.Kagoshima,region:Cn.Red,x:157,y:1255},{name:Bn.Kumamoto,region:Cn.Red,x:457,y:1045},{name:Bn.Fukuoka,region:Cn.Red,x:644,y:823,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Bn.Nagasaki,region:Cn.Red,x:313,y:875}],layout:"Portrait",adjustRatio:[.28,.28],mapPosition:[0,120],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[21,15,9,3],startingCities:["Fukuoka","Kobe","Osaka","Sapporo","Tokyo","Yokohama"],mapSpecificRules:"Each player can have two separate networks.\nFirst houses must be placed in one of six starting cities: Fukuoka, Kobe, Osaka, Sapporo, Tokyo, or Yokohama.\nStarting cities have two first-connection spots (cost 10 Elektro each); two players can build there in Step 1.\nIn Step 3, a third connection spot opens in starting cities (cost 20 Elektro).\nSome smaller cities have only two building spots (costs 10 and 15, or 15 and 20 from Step 2).\nIf all spots in every starting city are taken, a player is forced to play with a single network.",connections:[{nodes:[Bn.Nagasaki,Bn.Fukuoka],cost:10},{nodes:[Bn.Fukuoka,Bn.Shimonoseki],cost:10},{nodes:[Bn.Shimonoseki,Bn.Hiroshima],cost:12},{nodes:[Bn.Hiroshima,Bn.Matsue],cost:13},{nodes:[Bn.Kumamoto,Bn.Kagoshima],cost:13},{nodes:[Bn.Kagoshima,Bn.Miyazaki],cost:8},{nodes:[Bn.Miyazaki,Bn.Kumamoto],cost:11},{nodes:[Bn.Kumamoto,Bn.Oita],cost:12},{nodes:[Bn.Oita,Bn.Miyazaki],cost:12},{nodes:[Bn.Oita,Bn.Matsuyama],cost:14},{nodes:[Bn.Matsuyama,Bn.Kochi],cost:7},{nodes:[Bn.Kochi,Bn.Takamatsu],cost:9},{nodes:[Bn.Hiroshima,Bn.Okayama],cost:11},{nodes:[Bn.Okayama,Bn.Matsue],cost:11},{nodes:[Bn.Okayama,Bn.Kobe],cost:9},{nodes:[Bn.Kobe,Bn.Matsue],cost:16},{nodes:[Bn.Matsuyama,Bn.Takamatsu],cost:10},{nodes:[Bn.Takamatsu,Bn.Okayama],cost:9},{nodes:[Bn.Osaka,Bn.Nagoya],cost:9},{nodes:[Bn.Nagoya,Bn.Kyoto],cost:9},{nodes:[Bn.Kyoto,Bn.Kobe],cost:3},{nodes:[Bn.Osaka,Bn.Kyoto],cost:0},{nodes:[Bn.Kyoto,Bn.Kanazawa],cost:19},{nodes:[Bn.Kanazawa,Bn.Toyama],cost:3},{nodes:[Bn.Kanazawa,Bn.Nagoya],cost:16},{nodes:[Bn.Nagoya,Bn.Toyama],cost:15},{nodes:[Bn.Toyama,Bn.Nagano],cost:9},{nodes:[Bn.Nagano,Bn.Niigata],cost:12},{nodes:[Bn.Niigata,Bn.Akita],cost:16},{nodes:[Bn.Hamamatsu,Bn.Kofu],cost:12},{nodes:[Bn.Kofu,Bn.Nagoya],cost:15},{nodes:[Bn.Nagoya,Bn.Hamamatsu],cost:6},{nodes:[Bn.Kofu,Bn.Saitama],cost:8},{nodes:[Bn.Saitama,Bn.Tokyo],cost:0},{nodes:[Bn.Tokyo,Bn.Yokohama],cost:0},{nodes:[Bn.Tokyo,Bn.Chiba],cost:4},{nodes:[Bn.Chiba,Bn.Sendai],cost:21},{nodes:[Bn.Tokyo,Bn.Koriyama],cost:14},{nodes:[Bn.Koriyama,Bn.Niigata],cost:11},{nodes:[Bn.Saitama,Bn.Nagano],cost:17},{nodes:[Bn.Saitama,Bn.Niigata],cost:21},{nodes:[Bn.Koriyama,Bn.Sendai],cost:7},{nodes:[Bn.Sendai,Bn.Akita],cost:14},{nodes:[Bn.Akita,Bn.Koriyama],cost:21},{nodes:[Bn.Sendai,Bn.Morioka],cost:10},{nodes:[Bn.Morioka,Bn.Akita],cost:7},{nodes:[Bn.Akita,Bn.Admori],cost:10},{nodes:[Bn.Admori,Bn.Morioka],cost:10},{nodes:[Bn.Admori,Bn.Hakodate],cost:15},{nodes:[Bn.Hakodate,Bn.Sapporo],cost:14},{nodes:[Bn.Sapporo,Bn.Asahikawa],cost:8},{nodes:[Bn.Kumamoto,Bn.Shimonoseki],cost:16},{nodes:[Bn.Kumamoto,Bn.Fukuoka],cost:8}]},jn=c({},On);(function(e){e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Pink"]="pink"})(An||(An={})),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"}(Ln||(Ln={}));var Gn,Dn,zn={name:"Korea",cities:[{name:Ln.Gyeongju,region:An.Yellow,x:2161,y:2980},{name:Ln.Ulsan,region:An.Yellow,x:2185,y:3226},{name:Ln.Busan,region:An.Yellow,x:2041,y:3440},{name:Ln.Jinju,region:An.Yellow,x:1676,y:3431},{name:Ln.Daegu,region:An.Yellow,x:1876,y:3062},{name:Ln.Andong,region:An.Yellow,x:1987,y:2737},{name:Ln.Sangju,region:An.Yellow,x:1747,y:2827},{name:Ln.Rasun,region:An.Red,x:2485,y:361},{name:Ln.Cheongjin,region:An.Red,x:2309,y:491},{name:Ln.Gyeongseong,region:An.Red,x:2209,y:689},{name:Ln.Seongjin,region:An.Red,x:2060,y:1001},{name:Ln.Hyesan,region:An.Red,x:1783,y:665},{name:Ln.Hamheung,region:An.Red,x:1516,y:1283},{name:Ln.Wonsan,region:An.Red,x:1484,y:1600},{name:Ln.Samcheok,region:An.Brown,x:2171,y:2437},{name:Ln.Donghae,region:An.Brown,x:2041,y:2299},{name:Ln.Taeraek,region:An.Brown,x:1999,y:2528},{name:Ln.Gangneung,region:An.Brown,x:1949,y:2092},{name:Ln.Sokcho,region:An.Brown,x:1832,y:1915},{name:Ln.Wonju,region:An.Brown,x:1735,y:2293},{name:Ln.Chuncheon,region:An.Brown,x:1594,y:2056},{name:Ln.Chungju,region:An.Green,x:1744,y:2552},{name:Ln.Cheongju,region:An.Green,x:1547,y:2645},{name:Ln.Jeju,region:An.Green,x:1223,y:4051},{name:Ln.Gwangju,region:An.Green,x:1309,y:3380},{name:Ln.Naju,region:An.Green,x:1121,y:3569},{name:Ln.Jeonju,region:An.Green,x:1363,y:3109},{name:Ln.Daejeon,region:An.Green,x:1462,y:2839},{name:Ln.Yongin,region:An.Purple,x:1532,y:2371},{name:Ln.Seoul,region:An.Purple,x:1400,y:2203},{name:Ln.Suwon,region:An.Purple,x:1366,y:2488},{name:Ln.Goyang,region:An.Purple,x:1219,y:2270},{name:Ln.Anyang,region:An.Purple,x:1156,y:2446},{name:Ln.Incheon,region:An.Purple,x:1028,y:2311},{name:Ln.Gaesung,region:An.Purple,x:1171,y:2042},{name:Ln.Ganggye,region:An.Pink,x:1213,y:809},{name:Ln.Haeju,region:An.Pink,x:856,y:2135},{name:Ln.Pyeongyang,region:An.Pink,x:938,y:1642},{name:Ln.Hwangju,region:An.Pink,x:901,y:1886},{name:Ln.Nampo,region:An.Pink,x:677,y:1763},{name:Ln.Anju,region:An.Pink,x:812,y:1391},{name:Ln.Sinuiju,region:An.Pink,x:433,y:1105}],connections:[{nodes:[Ln.Naju,Ln.Jeju],cost:19},{nodes:[Ln.Naju,Ln.Jinju],cost:15},{nodes:[Ln.Jinju,Ln.Gwangju],cost:14},{nodes:[Ln.Gwangju,Ln.Naju],cost:2},{nodes:[Ln.Gwangju,Ln.Jeonju],cost:11},{nodes:[Ln.Jeonju,Ln.Jinju],cost:15},{nodes:[Ln.Jinju,Ln.Busan],cost:11},{nodes:[Ln.Jinju,Ln.Daegu],cost:11},{nodes:[Ln.Daegu,Ln.Jeonju],cost:16},{nodes:[Ln.Daegu,Ln.Busan],cost:12},{nodes:[Ln.Busan,Ln.Ulsan],cost:7},{nodes:[Ln.Ulsan,Ln.Daegu],cost:10},{nodes:[Ln.Jeonju,Ln.Daejeon],cost:9},{nodes:[Ln.Daejeon,Ln.Daegu],cost:15},{nodes:[Ln.Andong,Ln.Gyeongju],cost:11},{nodes:[Ln.Gyeongju,Ln.Daegu],cost:7},{nodes:[Ln.Gyeongju,Ln.Ulsan],cost:3},{nodes:[Ln.Daegu,Ln.Sangju],cost:9},{nodes:[Ln.Sangju,Ln.Daejeon],cost:8},{nodes:[Ln.Daegu,Ln.Andong],cost:10},{nodes:[Ln.Andong,Ln.Sangju],cost:6},{nodes:[Ln.Andong,Ln.Taeraek],cost:8},{nodes:[Ln.Taeraek,Ln.Samcheok],cost:5},{nodes:[Ln.Samcheok,Ln.Donghae],cost:0},{nodes:[Ln.Donghae,Ln.Gangneung],cost:4},{nodes:[Ln.Chungju,Ln.Taeraek],cost:13},{nodes:[Ln.Andong,Ln.Chungju],cost:11},{nodes:[Ln.Chungju,Ln.Cheongju],cost:7},{nodes:[Ln.Cheongju,Ln.Sangju],cost:8},{nodes:[Ln.Sangju,Ln.Chungju],cost:9},{nodes:[Ln.Daejeon,Ln.Cheongju],cost:4},{nodes:[Ln.Wonju,Ln.Donghae],cost:14},{nodes:[Ln.Wonju,Ln.Taeraek],cost:13},{nodes:[Ln.Chungju,Ln.Wonju],cost:5},{nodes:[Ln.Wonju,Ln.Gangneung],cost:12},{nodes:[Ln.Wonju,Ln.Sokcho],cost:15},{nodes:[Ln.Sokcho,Ln.Gangneung],cost:6},{nodes:[Ln.Chuncheon,Ln.Wonju],cost:7},{nodes:[Ln.Sinuiju,Ln.Ganggye],cost:25},{nodes:[Ln.Ganggye,Ln.Hyesan],cost:20},{nodes:[Ln.Sinuiju,Ln.Anju],cost:13},{nodes:[Ln.Anju,Ln.Ganggye],cost:22},{nodes:[Ln.Ganggye,Ln.Hamheung],cost:19},{nodes:[Ln.Hamheung,Ln.Anju],cost:20},{nodes:[Ln.Anju,Ln.Nampo],cost:10},{nodes:[Ln.Anju,Ln.Pyeongyang],cost:7},{nodes:[Ln.Pyeongyang,Ln.Nampo],cost:5},{nodes:[Ln.Nampo,Ln.Hwangju],cost:4},{nodes:[Ln.Hwangju,Ln.Pyeongyang],cost:4},{nodes:[Ln.Pyeongyang,Ln.Wonsan],cost:18},{nodes:[Ln.Pyeongyang,Ln.Hamheung],cost:23},{nodes:[Ln.Hamheung,Ln.Wonsan],cost:11},{nodes:[Ln.Pyeongyang,Ln.Gaesung],cost:14},{nodes:[Ln.Gaesung,Ln.Haeju],cost:8},{nodes:[Ln.Haeju,Ln.Hwangju],cost:8},{nodes:[Ln.Gaesung,Ln.Goyang],cost:7},{nodes:[Ln.Anyang,Ln.Suwon],cost:3},{nodes:[Ln.Suwon,Ln.Yongin],cost:2},{nodes:[Ln.Goyang,Ln.Incheon],cost:0},{nodes:[Ln.Incheon,Ln.Anyang],cost:0},{nodes:[Ln.Goyang,Ln.Seoul],cost:0},{nodes:[Ln.Suwon,Ln.Cheongju],cost:10},{nodes:[Ln.Seoul,Ln.Yongin],cost:2},{nodes:[Ln.Gaesung,Ln.Chuncheon],cost:13},{nodes:[Ln.Gaesung,Ln.Wonsan],cost:18},{nodes:[Ln.Wonsan,Ln.Sokcho],cost:18},{nodes:[Ln.Wonsan,Ln.Chuncheon],cost:19},{nodes:[Ln.Sokcho,Ln.Chuncheon],cost:10},{nodes:[Ln.Chuncheon,Ln.Seoul],cost:8},{nodes:[Ln.Chuncheon,Ln.Yongin],cost:9},{nodes:[Ln.Yongin,Ln.Wonju],cost:8},{nodes:[Ln.Yongin,Ln.Chungju],cost:10},{nodes:[Ln.Yongin,Ln.Cheongju],cost:10},{nodes:[Ln.Rasun,Ln.Cheongjin],cost:8},{nodes:[Ln.Cheongjin,Ln.Gyeongseong],cost:4},{nodes:[Ln.Gyeongseong,Ln.Seongjin],cost:16},{nodes:[Ln.Hyesan,Ln.Gyeongseong],cost:18},{nodes:[Ln.Hyesan,Ln.Seongjin],cost:14},{nodes:[Ln.Seongjin,Ln.Hamheung],cost:17},{nodes:[Ln.Hamheung,Ln.Hyesan],cost:23}],layout:"Portrait",adjustRatio:[.25,.25],mapPosition:[40,30],viewBox:[1480,1180],supplyPosition:[675,1040],resupply:[[[2,2,2],[2,3,2],[3,3,2],[3,4,3],[4,5,3]],[[1,1,3],[1,2,3],[2,3,3],[3,3,4],[3,4,4]],[[1,1,2],[1,1,2],[1,2,2],[2,2,3],[2,3,3]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],resupplyNorth:[[[1,2,1],[2,2,1],[2,3,2],[2,3,2],[3,4,3]],[[1,1,1],[1,1,1],[1,1,2],[1,2,2],[2,2,3]],[[0,1,1],[0,1,1],[1,1,2],[1,1,2],[1,2,3]]],startingResources:[12,12,4,2],startingResourcesNorth:[12,6,2],startingSupply:[24,24,24,12],coalPrices:[1,2,3,4,5,5,6,6,7,7,8,8],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8],garbagePrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8],uraniumPrices:[1,2,3,4,5,6,7,8,10,12,14,16],coalPricesNorth:[1,1,2,2,3,3,4,4,5,6,7,8],oilPricesNorth:[1,2,3,4,5,6,7,8],garbagePricesNorth:[1,2,3,4,5,6,7,8],mapSpecificRules:"Korea has two separate resource markets: North and South.\nOn your buying turn, choose one side — all resources you buy that turn must come from that side. The next turn you may choose the other side.\nThe North market has no uranium track; uranium is only available from the South.\nBoth markets share a single supply pool. During bureaucracy, North restocks first, then South from whatever remains."};(function(e){e["Pink"]="pink",e["Green"]="green",e["Orange"]="orange",e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown"})(Gn||(Gn={})),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"}(Dn||(Dn={}));var Nn,Tn,En={name:"Middle East",cities:[{name:Dn.Mashhad,region:Gn.Pink,x:859,y:327},{name:Dn.Corgan,region:Gn.Pink,x:734,y:287},{name:Dn.Tehran,region:Gn.Pink,x:633,y:342},{name:Dn.Tabriz,region:Gn.Pink,x:450,y:251},{name:Dn.Mosul,region:Gn.Pink,x:352,y:307},{name:Dn.Kermanshah,region:Gn.Pink,x:503,y:391},{name:Dn.Baghdad,region:Gn.Pink,x:393,y:406},{name:Dn.Isfahan,region:Gn.Green,x:621,y:436},{name:Dn.Yazo,region:Gn.Green,x:720,y:472},{name:Dn.Zahedan,region:Gn.Green,x:896,y:547},{name:Dn.Kerman,region:Gn.Green,x:784,y:534},{name:Dn.Shiraz,region:Gn.Green,x:651,y:557},{name:Dn.Bandarabbas,region:Gn.Green,x:756,y:629},{name:Dn.Chabahar,region:Gn.Green,x:898,y:687},{name:Dn.Dubai,region:Gn.Orange,x:752,y:690},{name:Dn.Muscat,region:Gn.Orange,x:828,y:773},{name:Dn.Abudhari,region:Gn.Orange,x:692,y:747},{name:Dn.Alain,region:Gn.Orange,x:715,y:812},{name:Dn.Salalah,region:Gn.Orange,x:694,y:981},{name:Dn.Doha,region:Gn.Orange,x:596,y:713},{name:Dn.Manama,region:Gn.Orange,x:532,y:652},{name:Dn.Ahvaz,region:Gn.Yellow,x:555,y:499},{name:Dn.Basra,region:Gn.Yellow,x:452,y:519},{name:Dn.Najaf,region:Gn.Yellow,x:356,y:478},{name:Dn.Kuwaitcity,region:Gn.Yellow,x:500,y:580},{name:Dn.Buraydah,region:Gn.Yellow,x:360,y:674},{name:Dn.Riyadh,region:Gn.Yellow,x:443,y:741},{name:Dn.Medina,region:Gn.Yellow,x:264,y:738},{name:Dn.Alhasahah,region:Gn.Red,x:248,y:300},{name:Dn.Aleppo,region:Gn.Red,x:132,y:315},{name:Dn.Damascus,region:Gn.Red,x:186,y:433},{name:Dn.Amman,region:Gn.Red,x:171,y:493},{name:Dn.Beirut,region:Gn.Red,x:94,y:401},{name:Dn.Jerusalem,region:Gn.Red,x:76,y:481},{name:Dn.Aqaba,region:Gn.Red,x:103,y:563},{name:Dn.Mukalla,region:Gn.Brown,x:555,y:1059},{name:Dn.Sanaa,region:Gn.Brown,x:426,y:1018},{name:Dn.Aden,region:Gn.Brown,x:431,y:1105},{name:Dn.Alhudaydah,region:Gn.Brown,x:317,y:1057},{name:Dn.Abha,region:Gn.Brown,x:306,y:938},{name:Dn.Mecca,region:Gn.Brown,x:280,y:850},{name:Dn.Jeddah,region:Gn.Brown,x:190,y:800}],connections:[{nodes:[Dn.Tabriz,Dn.Tehran],cost:13},{nodes:[Dn.Tehran,Dn.Corgan],cost:9},{nodes:[Dn.Corgan,Dn.Mashhad],cost:12},{nodes:[Dn.Mashhad,Dn.Zahedan],cost:20},{nodes:[Dn.Zahedan,Dn.Kerman],cost:10},{nodes:[Dn.Kerman,Dn.Yazo],cost:7},{nodes:[Dn.Yazo,Dn.Mashhad],cost:18},{nodes:[Dn.Mashhad,Dn.Tehran],cost:19},{nodes:[Dn.Tehran,Dn.Yazo],cost:12},{nodes:[Dn.Yazo,Dn.Shiraz],cost:9},{nodes:[Dn.Shiraz,Dn.Kerman],cost:11},{nodes:[Dn.Yazo,Dn.Isfahan],cost:7},{nodes:[Dn.Isfahan,Dn.Shiraz],cost:10},{nodes:[Dn.Isfahan,Dn.Tehran],cost:9},{nodes:[Dn.Tehran,Dn.Kermanshah],cost:13},{nodes:[Dn.Kermanshah,Dn.Isfahan],cost:13},{nodes:[Dn.Isfahan,Dn.Ahvaz],cost:11},{nodes:[Dn.Ahvaz,Dn.Shiraz],cost:11},{nodes:[Dn.Ahvaz,Dn.Kermanshah],cost:11},{nodes:[Dn.Kermanshah,Dn.Tabriz],cost:13},{nodes:[Dn.Tabriz,Dn.Mosul],cost:13},{nodes:[Dn.Mosul,Dn.Baghdad],cost:8},{nodes:[Dn.Baghdad,Dn.Kermanshah],cost:8},{nodes:[Dn.Basra,Dn.Ahvaz],cost:3},{nodes:[Dn.Ahvaz,Dn.Kuwaitcity],cost:7},{nodes:[Dn.Kuwaitcity,Dn.Basra],cost:5},{nodes:[Dn.Basra,Dn.Najaf],cost:10},{nodes:[Dn.Najaf,Dn.Baghdad],cost:4},{nodes:[Dn.Baghdad,Dn.Basra],cost:12},{nodes:[Dn.Alhasahah,Dn.Mosul],cost:4},{nodes:[Dn.Alhasahah,Dn.Baghdad],cost:11},{nodes:[Dn.Baghdad,Dn.Damascus],cost:16},{nodes:[Dn.Damascus,Dn.Najaf],cost:15},{nodes:[Dn.Alhasahah,Dn.Damascus],cost:14},{nodes:[Dn.Damascus,Dn.Amman],cost:4},{nodes:[Dn.Amman,Dn.Aqaba],cost:7},{nodes:[Dn.Aqaba,Dn.Jerusalem],cost:6},{nodes:[Dn.Jerusalem,Dn.Amman],cost:3},{nodes:[Dn.Jerusalem,Dn.Beirut],cost:6},{nodes:[Dn.Beirut,Dn.Damascus],cost:4},{nodes:[Dn.Damascus,Dn.Aleppo],cost:8},{nodes:[Dn.Aleppo,Dn.Beirut],cost:9},{nodes:[Dn.Aleppo,Dn.Alhasahah],cost:7},{nodes:[Dn.Baghdad,Dn.Tabriz],cost:18},{nodes:[Dn.Zahedan,Dn.Chabahar],cost:13},{nodes:[Dn.Zahedan,Dn.Bandarabbas],cost:14},{nodes:[Dn.Bandarabbas,Dn.Kerman],cost:13},{nodes:[Dn.Shiraz,Dn.Bandarabbas],cost:14},{nodes:[Dn.Bandarabbas,Dn.Chabahar],cost:15},{nodes:[Dn.Kuwaitcity,Dn.Manama],cost:12},{nodes:[Dn.Manama,Dn.Doha],cost:6},{nodes:[Dn.Doha,Dn.Abudhari],cost:9},{nodes:[Dn.Abudhari,Dn.Dubai],cost:2},{nodes:[Dn.Dubai,Dn.Muscat],cost:9},{nodes:[Dn.Muscat,Dn.Alain],cost:7},{nodes:[Dn.Alain,Dn.Abudhari],cost:3},{nodes:[Dn.Alain,Dn.Dubai],cost:3},{nodes:[Dn.Riyadh,Dn.Alain],cost:23},{nodes:[Dn.Doha,Dn.Riyadh],cost:12},{nodes:[Dn.Riyadh,Dn.Manama],cost:10},{nodes:[Dn.Riyadh,Dn.Kuwaitcity],cost:12},{nodes:[Dn.Kuwaitcity,Dn.Buraydah],cost:12},{nodes:[Dn.Buraydah,Dn.Riyadh],cost:7},{nodes:[Dn.Buraydah,Dn.Medina],cost:10},{nodes:[Dn.Medina,Dn.Riyadh],cost:15},{nodes:[Dn.Buraydah,Dn.Najaf],cost:14},{nodes:[Dn.Aqaba,Dn.Jeddah],cost:23},{nodes:[Dn.Aqaba,Dn.Medina],cost:17},{nodes:[Dn.Medina,Dn.Jeddah],cost:7},{nodes:[Dn.Jeddah,Dn.Mecca],cost:1},{nodes:[Dn.Mecca,Dn.Medina],cost:7},{nodes:[Dn.Mecca,Dn.Riyadh],cost:17},{nodes:[Dn.Riyadh,Dn.Abha],cost:19},{nodes:[Dn.Abha,Dn.Mecca],cost:12},{nodes:[Dn.Salalah,Dn.Muscat],cost:21},{nodes:[Dn.Alain,Dn.Salalah],cost:18},{nodes:[Dn.Salalah,Dn.Mukalla],cost:15},{nodes:[Dn.Salalah,Dn.Sanaa],cost:25},{nodes:[Dn.Sanaa,Dn.Mukalla],cost:14},{nodes:[Dn.Mukalla,Dn.Aden],cost:13},{nodes:[Dn.Aden,Dn.Alhudaydah],cost:9},{nodes:[Dn.Alhudaydah,Dn.Abha],cost:10},{nodes:[Dn.Abha,Dn.Sanaa],cost:11},{nodes:[Dn.Sanaa,Dn.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"})(Nn||(Nn={})),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"}(Tn||(Tn={}));var Kn,In,Un,Wn={name:"North America",cities:[{name:Tn.Edmonton,region:Nn.Pink,x:325,y:71},{name:Tn.Calgary,region:Nn.Pink,x:250,y:190},{name:Tn.Vancouver,region:Nn.Pink,x:114,y:266},{name:Tn.Seattle,region:Nn.Pink,x:100,y:387},{name:Tn.Regina,region:Nn.Pink,x:536,y:277},{name:Tn.Winnipeg,region:Nn.Pink,x:830,y:272},{name:Tn.Minneapolis,region:Nn.Pink,x:907,y:486},{name:Tn.Portland,region:Nn.Brown,x:122,y:516},{name:Tn.SanFrancisco,region:Nn.Brown,x:135,y:660},{name:Tn.LosAngeles,region:Nn.Brown,x:160,y:911},{name:Tn.SanDiego,region:Nn.Brown,x:223,y:1007},{name:Tn.SaltLakeCity,region:Nn.Brown,x:380,y:555},{name:Tn.LasVegas,region:Nn.Brown,x:322,y:760},{name:Tn.Denver,region:Nn.Brown,x:569,y:694},{name:Tn.Albuquerque,region:Nn.Orange,x:539,y:941},{name:Tn.Juarez,region:Nn.Orange,x:558,y:1043},{name:Tn.Chihuahua,region:Nn.Orange,x:577,y:1183},{name:Tn.Monterrey,region:Nn.Orange,x:791,y:1292},{name:Tn.Guadalajara,region:Nn.Orange,x:715,y:1391},{name:Tn.MexicoCityN,region:Nn.Orange,x:918,y:1410},{name:Tn.MexicoCityS,region:Nn.Orange,x:918,y:1474},{name:Tn.SanAntonio,region:Nn.Green,x:767,y:1172},{name:Tn.DallasFortWorth,region:Nn.Green,x:850,y:1020},{name:Tn.Houston,region:Nn.Green,x:931,y:1095},{name:Tn.NewOrleans,region:Nn.Green,x:1126,y:1095},{name:Tn.Atlanta,region:Nn.Green,x:1318,y:1021},{name:Tn.Jacksonville,region:Nn.Green,x:1398,y:1109},{name:Tn.Miami,region:Nn.Green,x:1398,y:1235},{name:Tn.Milwaukee,region:Nn.Blue,x:1165,y:502},{name:Tn.Chicago,region:Nn.Blue,x:1148,y:601},{name:Tn.KansasCity,region:Nn.Blue,x:825,y:720},{name:Tn.StLouis,region:Nn.Blue,x:1047,y:768},{name:Tn.Indianapolis,region:Nn.Blue,x:1206,y:694},{name:Tn.OklahomaCity,region:Nn.Blue,x:800,y:870},{name:Tn.Memphis,region:Nn.Blue,x:1099,y:938},{name:Tn.Toronto,region:Nn.Yellow,x:1488,y:513},{name:Tn.Detroit,region:Nn.Yellow,x:1390,y:590},{name:Tn.Pittsburgh,region:Nn.Yellow,x:1524,y:659},{name:Tn.Columbus,region:Nn.Yellow,x:1398,y:733},{name:Tn.Nashville,region:Nn.Yellow,x:1233,y:826},{name:Tn.Washington,region:Nn.Yellow,x:1554,y:829},{name:Tn.Charlotte,region:Nn.Yellow,x:1480,y:965},{name:Tn.Quebec,region:Nn.Red,x:1911,y:354},{name:Tn.Ottawa,region:Nn.Red,x:1653,y:458},{name:Tn.Montreal,region:Nn.Red,x:1875,y:461},{name:Tn.NewYorkN,region:Nn.Red,x:1730,y:598},{name:Tn.NewYorkS,region:Nn.Red,x:1730,y:648},{name:Tn.Boston,region:Nn.Red,x:1928,y:579},{name:Tn.Philadelphia,region:Nn.Red,x:1724,y:755}],connections:[{nodes:[Tn.Edmonton,Tn.Calgary],cost:5},{nodes:[Tn.Calgary,Tn.Vancouver],cost:16},{nodes:[Tn.Vancouver,Tn.Seattle],cost:4},{nodes:[Tn.Edmonton,Tn.Regina],cost:15},{nodes:[Tn.Calgary,Tn.Regina],cost:14},{nodes:[Tn.Vancouver,Tn.Regina],cost:28},{nodes:[Tn.Regina,Tn.Winnipeg],cost:11},{nodes:[Tn.Winnipeg,Tn.Minneapolis],cost:13},{nodes:[Tn.Seattle,Tn.Portland],cost:5},{nodes:[Tn.Regina,Tn.SaltLakeCity],cost:29},{nodes:[Tn.Regina,Tn.Denver],cost:24},{nodes:[Tn.Winnipeg,Tn.Denver],cost:26},{nodes:[Tn.Minneapolis,Tn.Denver],cost:23},{nodes:[Tn.Portland,Tn.SanFrancisco],cost:20},{nodes:[Tn.SanFrancisco,Tn.LosAngeles],cost:12},{nodes:[Tn.LosAngeles,Tn.SanDiego],cost:3},{nodes:[Tn.Portland,Tn.SaltLakeCity],cost:22},{nodes:[Tn.SanFrancisco,Tn.SaltLakeCity],cost:22},{nodes:[Tn.SanFrancisco,Tn.LasVegas],cost:16},{nodes:[Tn.SaltLakeCity,Tn.LasVegas],cost:14},{nodes:[Tn.LasVegas,Tn.LosAngeles],cost:8},{nodes:[Tn.SaltLakeCity,Tn.Denver],cost:14},{nodes:[Tn.LasVegas,Tn.Denver],cost:25},{nodes:[Tn.LosAngeles,Tn.Albuquerque],cost:25},{nodes:[Tn.LasVegas,Tn.Albuquerque],cost:18},{nodes:[Tn.Denver,Tn.Albuquerque],cost:12},{nodes:[Tn.SanDiego,Tn.Juarez],cost:22},{nodes:[Tn.Albuquerque,Tn.Juarez],cost:9},{nodes:[Tn.Juarez,Tn.Chihuahua],cost:8},{nodes:[Tn.Chihuahua,Tn.Monterrey],cost:14},{nodes:[Tn.Chihuahua,Tn.Guadalajara],cost:23},{nodes:[Tn.Monterrey,Tn.Guadalajara],cost:16},{nodes:[Tn.Monterrey,Tn.MexicoCityS],cost:17},{nodes:[Tn.Guadalajara,Tn.MexicoCityS],cost:10},{nodes:[Tn.MexicoCityN,Tn.MexicoCityS],cost:0},{nodes:[Tn.Albuquerque,Tn.OklahomaCity],cost:18},{nodes:[Tn.Juarez,Tn.DallasFortWorth],cost:19},{nodes:[Tn.Juarez,Tn.SanAntonio],cost:18},{nodes:[Tn.Chihuahua,Tn.SanAntonio],cost:16},{nodes:[Tn.Monterrey,Tn.SanAntonio],cost:10},{nodes:[Tn.Milwaukee,Tn.Chicago],cost:3},{nodes:[Tn.Chicago,Tn.KansasCity],cost:16},{nodes:[Tn.Chicago,Tn.StLouis],cost:9},{nodes:[Tn.Chicago,Tn.Indianapolis],cost:6},{nodes:[Tn.KansasCity,Tn.StLouis],cost:8},{nodes:[Tn.StLouis,Tn.Indianapolis],cost:8},{nodes:[Tn.KansasCity,Tn.OklahomaCity],cost:10},{nodes:[Tn.KansasCity,Tn.Memphis],cost:14},{nodes:[Tn.StLouis,Tn.Memphis],cost:9},{nodes:[Tn.OklahomaCity,Tn.Memphis],cost:15},{nodes:[Tn.Milwaukee,Tn.Minneapolis],cost:10},{nodes:[Tn.KansasCity,Tn.Minneapolis],cost:14},{nodes:[Tn.KansasCity,Tn.Denver],cost:19},{nodes:[Tn.OklahomaCity,Tn.Denver],cost:17},{nodes:[Tn.OklahomaCity,Tn.DallasFortWorth],cost:7},{nodes:[Tn.Memphis,Tn.DallasFortWorth],cost:15},{nodes:[Tn.Memphis,Tn.NewOrleans],cost:14},{nodes:[Tn.Memphis,Tn.Atlanta],cost:12},{nodes:[Tn.DallasFortWorth,Tn.SanAntonio],cost:9},{nodes:[Tn.DallasFortWorth,Tn.Houston],cost:8},{nodes:[Tn.DallasFortWorth,Tn.NewOrleans],cost:16},{nodes:[Tn.SanAntonio,Tn.Houston],cost:6},{nodes:[Tn.Houston,Tn.NewOrleans],cost:12},{nodes:[Tn.NewOrleans,Tn.Atlanta],cost:16},{nodes:[Tn.NewOrleans,Tn.Jacksonville],cost:20},{nodes:[Tn.Atlanta,Tn.Jacksonville],cost:10},{nodes:[Tn.Jacksonville,Tn.Miami],cost:12},{nodes:[Tn.Atlanta,Tn.Nashville],cost:9},{nodes:[Tn.Atlanta,Tn.Charlotte],cost:8},{nodes:[Tn.Jacksonville,Tn.Charlotte],cost:12},{nodes:[Tn.Toronto,Tn.Detroit],cost:8},{nodes:[Tn.Toronto,Tn.Pittsburgh],cost:11},{nodes:[Tn.Detroit,Tn.Columbus],cost:7},{nodes:[Tn.Columbus,Tn.Pittsburgh],cost:6},{nodes:[Tn.Nashville,Tn.Columbus],cost:15},{nodes:[Tn.Nashville,Tn.Washington],cost:22},{nodes:[Tn.Nashville,Tn.Charlotte],cost:12},{nodes:[Tn.Columbus,Tn.Washington],cost:12},{nodes:[Tn.Washington,Tn.Pittsburgh],cost:7},{nodes:[Tn.Washington,Tn.Charlotte],cost:12},{nodes:[Tn.Detroit,Tn.Chicago],cost:10},{nodes:[Tn.Columbus,Tn.Chicago],cost:10},{nodes:[Tn.Columbus,Tn.Indianapolis],cost:7},{nodes:[Tn.Nashville,Tn.Indianapolis],cost:9},{nodes:[Tn.Nashville,Tn.StLouis],cost:9},{nodes:[Tn.Nashville,Tn.Memphis],cost:7},{nodes:[Tn.Toronto,Tn.Ottawa],cost:8},{nodes:[Tn.Toronto,Tn.NewYorkS],cost:14},{nodes:[Tn.Pittsburgh,Tn.NewYorkS],cost:11},{nodes:[Tn.Pittsburgh,Tn.Philadelphia],cost:9},{nodes:[Tn.Washington,Tn.Philadelphia],cost:5},{nodes:[Tn.Quebec,Tn.Montreal],cost:5},{nodes:[Tn.Montreal,Tn.Boston],cost:9},{nodes:[Tn.Ottawa,Tn.Montreal],cost:3},{nodes:[Tn.Ottawa,Tn.NewYorkS],cost:13},{nodes:[Tn.Montreal,Tn.NewYorkS],cost:12},{nodes:[Tn.NewYorkS,Tn.Boston],cost:7},{nodes:[Tn.NewYorkS,Tn.Philadelphia],cost:3},{nodes:[Tn.NewYorkN,Tn.NewYorkS],cost:0}],layout:"Landscape",adjustRatio:[.5,.38],mapPosition:[70,50],mapRotation:-5,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"})(In||(In={})),function(e){e["Oulu"]="Oulu",e["Kuopid"]="Kuopid",e["Tampere"]="Tampere",e["Helsinki"]="Helsinki",e["Espoo"]="Espoo",e["Pori"]="Pori",e["Turku"]="Turku",e["Uppsala"]="Uppsala",e["Stockholm"]="Stockholm",e["Vasteras"]="Vasteras",e["Drebro"]="Drebro",e["Sundsvall"]="Sundsvall",e["Lulea"]="Lulea",e["Ostersund"]="Ostersund",e["Tallinn"]="Tallinn",e["Tartu"]="Tartu",e["Daugavpils"]="Daugavpils",e["Vilnius"]="Vilnius",e["Kaunas"]="Kaunas",e["Rica"]="Rica",e["Klaipeda"]="Klaipeda",e["Karlstad"]="Karlstad",e["Linkopinc"]="Linkopinc",e["Jonkoping"]="Jonkoping",e["Visby"]="Visby",e["Kristianstad"]="Kristianstad",e["Malmo"]="Malmo",e["Goteborg"]="Goteborg",e["Aalborg"]="Aalborg",e["Aarhus"]="Aarhus",e["Kobenhavn"]="Kobenhavn",e["Nykobingfalster"]="Nykobing Falster",e["Ringkobing"]="Ringkobing",e["Esbjerg"]="Esbjerg",e["Odense"]="Odense",e["Tromso"]="Tromso",e["Bood"]="Bood",e["Trondheim"]="Trondheim",e["Oslo"]="Oslo",e["Arendal"]="Arendal",e["Bergen"]="Bergen",e["Stavanger"]="Stavanger"}(Un||(Un={}));var Fn,Yn,Hn={name:"Northern Europe",cities:[{name:Un.Oulu,region:In.Brown,x:514,y:376},{name:Un.Kuopid,region:In.Brown,x:551,y:474},{name:Un.Tampere,region:In.Brown,x:492,y:544},{name:Un.Helsinki,region:In.Brown,x:530,y:602},{name:Un.Espoo,region:In.Brown,x:457,y:603},{name:Un.Pori,region:In.Brown,x:400,y:526},{name:Un.Turku,region:In.Brown,x:409,y:593},{name:Un.Uppsala,region:In.Yellow,x:350,y:585},{name:Un.Stockholm,region:In.Yellow,x:380,y:660},{name:Un.Vasteras,region:In.Yellow,x:295,y:576},{name:Un.Drebro,region:In.Yellow,x:295,y:628},{name:Un.Sundsvall,region:In.Yellow,x:332,y:506},{name:Un.Lulea,region:In.Yellow,x:423,y:345},{name:Un.Ostersund,region:In.Yellow,x:272,y:462},{name:Un.Tallinn,region:In.Pink,x:475,y:656},{name:Un.Tartu,region:In.Pink,x:544,y:689},{name:Un.Daugavpils,region:In.Pink,x:547,y:771},{name:Un.Vilnius,region:In.Pink,x:520,y:819},{name:Un.Kaunas,region:In.Pink,x:458,y:811},{name:Un.Rica,region:In.Pink,x:472,y:734},{name:Un.Klaipeda,region:In.Pink,x:411,y:784},{name:Un.Karlstad,region:In.Purple,x:246,y:629},{name:Un.Linkopinc,region:In.Purple,x:309,y:676},{name:Un.Jonkoping,region:In.Purple,x:285,y:712},{name:Un.Visby,region:In.Purple,x:364,y:717},{name:Un.Kristianstad,region:In.Purple,x:330,y:750},{name:Un.Malmo,region:In.Purple,x:287,y:787},{name:Un.Goteborg,region:In.Purple,x:231,y:700},{name:Un.Aalborg,region:In.Orange,x:177,y:717},{name:Un.Aarhus,region:In.Orange,x:195,y:758},{name:Un.Kobenhavn,region:In.Orange,x:228,y:792},{name:Un.Nykobingfalster,region:In.Orange,x:238,y:842},{name:Un.Ringkobing,region:In.Orange,x:120,y:733},{name:Un.Esbjerg,region:In.Orange,x:104,y:787},{name:Un.Odense,region:In.Orange,x:148,y:824},{name:Un.Tromso,region:In.Red,x:371,y:122},{name:Un.Bood,region:In.Red,x:276,y:254},{name:Un.Trondheim,region:In.Red,x:173,y:450},{name:Un.Oslo,region:In.Red,x:176,y:606},{name:Un.Arendal,region:In.Red,x:145,y:651},{name:Un.Bergen,region:In.Red,x:68,y:586},{name:Un.Stavanger,region:In.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:(Kn={},i(Kn,In.Orange,[{number:19,type:ve.Oil,cost:2,citiesPowered:4},{number:26,type:ve.Oil,cost:3,citiesPowered:5}]),i(Kn,In.Red,[{number:7,type:ve.Wind,cost:0,citiesPowered:1},{number:46,type:ve.Wind,cost:0,citiesPowered:6}]),i(Kn,In.Purple,[{number:10,type:ve.Uranium,cost:2,citiesPowered:3},{number:39,type:ve.Wind,cost:0,citiesPowered:5}]),i(Kn,In.Yellow,[{number:21,type:ve.Wind,cost:0,citiesPowered:2},{number:25,type:ve.Uranium,cost:1,citiesPowered:4}]),i(Kn,In.Brown,[{number:32,type:ve.Garbage,cost:2,citiesPowered:6},{number:44,type:ve.Uranium,cost:1,citiesPowered:7}]),i(Kn,In.Pink,[{number:18,type:ve.Oil,cost:1,citiesPowered:3},{number:22,type:ve.Wind,cost:0,citiesPowered:3}]),Kn),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:[Un.Bood,Un.Tromso],cost:17},{nodes:[Un.Tromso,Un.Oulu],cost:25},{nodes:[Un.Oulu,Un.Kuopid],cost:10},{nodes:[Un.Lulea,Un.Tromso],cost:19},{nodes:[Un.Lulea,Un.Oulu],cost:13},{nodes:[Un.Oulu,Un.Pori],cost:15},{nodes:[Un.Oulu,Un.Tampere],cost:14},{nodes:[Un.Sundsvall,Un.Lulea],cost:16},{nodes:[Un.Lulea,Un.Bood],cost:16},{nodes:[Un.Bood,Un.Ostersund],cost:18},{nodes:[Un.Ostersund,Un.Lulea],cost:17},{nodes:[Un.Lulea,Un.Pori],cost:22},{nodes:[Un.Pori,Un.Sundsvall],cost:17},{nodes:[Un.Bood,Un.Trondheim],cost:21},{nodes:[Un.Trondheim,Un.Bergen],cost:17},{nodes:[Un.Trondheim,Un.Oslo],cost:17},{nodes:[Un.Oslo,Un.Ostersund],cost:18},{nodes:[Un.Ostersund,Un.Karlstad],cost:16},{nodes:[Un.Bergen,Un.Oslo],cost:15},{nodes:[Un.Oslo,Un.Stavanger],cost:11},{nodes:[Un.Stavanger,Un.Arendal],cost:8},{nodes:[Un.Arendal,Un.Oslo],cost:7},{nodes:[Un.Bergen,Un.Stavanger],cost:9},{nodes:[Un.Arendal,Un.Ringkobing],cost:19},{nodes:[Un.Ringkobing,Un.Esbjerg],cost:4},{nodes:[Un.Esbjerg,Un.Odense],cost:5},{nodes:[Un.Odense,Un.Nykobingfalster],cost:8},{nodes:[Un.Arendal,Un.Aalborg],cost:16},{nodes:[Un.Arendal,Un.Goteborg],cost:19},{nodes:[Un.Goteborg,Un.Oslo],cost:11},{nodes:[Un.Oslo,Un.Karlstad],cost:7},{nodes:[Un.Karlstad,Un.Goteborg],cost:9},{nodes:[Un.Karlstad,Un.Jonkoping],cost:9},{nodes:[Un.Karlstad,Un.Linkopinc],cost:7},{nodes:[Un.Tampere,Un.Kuopid],cost:10},{nodes:[Un.Tampere,Un.Pori],cost:4},{nodes:[Un.Tampere,Un.Turku],cost:5},{nodes:[Un.Tampere,Un.Espoo],cost:5},{nodes:[Un.Tampere,Un.Helsinki],cost:6},{nodes:[Un.Helsinki,Un.Espoo],cost:2},{nodes:[Un.Espoo,Un.Tallinn],cost:7},{nodes:[Un.Tallinn,Un.Helsinki],cost:7},{nodes:[Un.Visby,Un.Kristianstad],cost:13},{nodes:[Un.Visby,Un.Klaipeda],cost:19},{nodes:[Un.Visby,Un.Rica],cost:20},{nodes:[Un.Rica,Un.Tallinn],cost:11},{nodes:[Un.Tallinn,Un.Tartu],cost:5},{nodes:[Un.Tartu,Un.Daugavpils],cost:9},{nodes:[Un.Rica,Un.Tartu],cost:7},{nodes:[Un.Daugavpils,Un.Kaunas],cost:7},{nodes:[Un.Kaunas,Un.Vilnius],cost:3},{nodes:[Un.Kaunas,Un.Klaipeda],cost:7},{nodes:[Un.Klaipeda,Un.Rica],cost:8},{nodes:[Un.Rica,Un.Kaunas],cost:8},{nodes:[Un.Rica,Un.Daugavpils],cost:7},{nodes:[Un.Daugavpils,Un.Vilnius],cost:5},{nodes:[Un.Vasteras,Un.Sundsvall],cost:10},{nodes:[Un.Sundsvall,Un.Ostersund],cost:7},{nodes:[Un.Uppsala,Un.Stockholm],cost:2},{nodes:[Un.Uppsala,Un.Turku],cost:15},{nodes:[Un.Uppsala,Un.Pori],cost:17},{nodes:[Un.Uppsala,Un.Sundsvall],cost:11},{nodes:[Un.Vasteras,Un.Drebro],cost:5},{nodes:[Un.Drebro,Un.Linkopinc],cost:3},{nodes:[Un.Linkopinc,Un.Stockholm],cost:7},{nodes:[Un.Visby,Un.Stockholm],cost:12},{nodes:[Un.Visby,Un.Linkopinc],cost:9},{nodes:[Un.Jonkoping,Un.Malmo],cost:10},{nodes:[Un.Jonkoping,Un.Kristianstad],cost:8},{nodes:[Un.Kristianstad,Un.Malmo],cost:3},{nodes:[Un.Malmo,Un.Kobenhavn],cost:3},{nodes:[Un.Kobenhavn,Un.Nykobingfalster],cost:6},{nodes:[Un.Odense,Un.Aarhus],cost:7},{nodes:[Un.Aarhus,Un.Aalborg],cost:3},{nodes:[Un.Aalborg,Un.Goteborg],cost:11},{nodes:[Un.Kobenhavn,Un.Goteborg],cost:18},{nodes:[Un.Goteborg,Un.Jonkoping],cost:4},{nodes:[Un.Trondheim,Un.Ostersund],cost:9},{nodes:[Un.Vasteras,Un.Stockholm],cost:4},{nodes:[Un.Esbjerg,Un.Aarhus],cost:5},{nodes:[Un.Jonkoping,Un.Linkopinc],cost:5},{nodes:[Un.Kobenhavn,Un.Jonkoping],cost:12},{nodes:[Un.Karlstad,Un.Drebro],cost:4},{nodes:[Un.Vasteras,Un.Uppsala],cost:2},{nodes:[Un.Odense,Un.Kobenhavn],cost:7},{nodes:[Un.Kobenhavn,Un.Aarhus],cost:10},{nodes:[Un.Ringkobing,Un.Aalborg],cost:5},{nodes:[Un.Linkopinc,Un.Kristianstad],cost:9},{nodes:[Un.Drebro,Un.Stockholm],cost:7},{nodes:[Un.Espoo,Un.Turku],cost:4},{nodes:[Un.Pori,Un.Turku],cost:4}]};(function(e){e["Green"]="green",e["Brown"]="brown",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple"})(Fn||(Fn={})),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"}(Yn||(Yn={}));var Vn,Jn,$n={name:"Quebec",cities:[{name:Yn.Septiles,region:Fn.Green,x:3524,y:228},{name:Yn.Portcartier,region:Fn.Green,x:3328,y:370},{name:Yn.Baiecomeau,region:Fn.Green,x:3066,y:630},{name:Yn.Chicoutimi,region:Fn.Green,x:2392,y:898},{name:Yn.Alma,region:Fn.Green,x:2172,y:844},{name:Yn.Roberval,region:Fn.Green,x:1944,y:950},{name:Yn.Jonquiere,region:Fn.Green,x:2240,y:1052},{name:Yn.Gaspe,region:Fn.Brown,x:4014,y:808},{name:Yn.Steannedesmonts,region:Fn.Brown,x:3512,y:708},{name:Yn.Matane,region:Fn.Brown,x:3244,y:808},{name:Yn.Rimouski,region:Fn.Brown,x:2990,y:946},{name:Yn.Pointealacroix,region:Fn.Brown,x:3492,y:1094},{name:Yn.Riviereduloup,region:Fn.Brown,x:2780,y:1208},{name:Yn.Montmagny,region:Fn.Brown,x:2522,y:1534},{name:Yn.Stgeorges,region:Fn.Pink,x:2506,y:1836},{name:Yn.Sherbrooke,region:Fn.Pink,x:2242,y:2128},{name:Yn.Victoriaville,region:Fn.Pink,x:2178,y:1822},{name:Yn.Stsimeon,region:Fn.Pink,x:2576,y:1146},{name:Yn.Charlesbourg,region:Fn.Pink,x:2246,y:1434},{name:Yn.Quebec,region:Fn.Pink,x:2302,y:1536},{name:Yn.Beauport,region:Fn.Pink,x:2196,y:1524},{name:Yn.Granby,region:Fn.Red,x:1974,y:2160},{name:Yn.Sthyacinthe,region:Fn.Red,x:1796,y:2038},{name:Yn.Brossard,region:Fn.Red,x:1790,y:2296},{name:Yn.Valleyfield,region:Fn.Red,x:1576,y:2306},{name:Yn.Vaudreuildorion,region:Fn.Red,x:1414,y:2186},{name:Yn.Montreal,region:Fn.Red,x:1624,y:2052},{name:Yn.Pointeclaire,region:Fn.Red,x:1510,y:2060},{name:Yn.Shawinigan,region:Fn.Yellow,x:1864,y:1448},{name:Yn.Troisrivieres,region:Fn.Yellow,x:1918,y:1650},{name:Yn.Drummondville,region:Fn.Yellow,x:1984,y:1886},{name:Yn.Repentigny,region:Fn.Yellow,x:1696,y:1820},{name:Yn.Longueuil,region:Fn.Yellow,x:1598,y:1964},{name:Yn.Laval,region:Fn.Yellow,x:1512,y:1990},{name:Yn.Lachute,region:Fn.Yellow,x:1364,y:1944},{name:Yn.Amos,region:Fn.Purple,x:492,y:868},{name:Yn.Valdor,region:Fn.Purple,x:570,y:1098},{name:Yn.Rouynnoranda,region:Fn.Purple,x:236,y:1028},{name:Yn.Montlaurier,region:Fn.Purple,x:1180,y:1630},{name:Yn.Maniwaki,region:Fn.Purple,x:964,y:1760},{name:Yn.Gatineau,region:Fn.Purple,x:1076,y:2096},{name:Yn.Hull,region:Fn.Purple,x:862,y:2104}],connections:[{nodes:[Yn.Maniwaki,Yn.Montlaurier],cost:5},{nodes:[Yn.Maniwaki,Yn.Valdor],cost:24},{nodes:[Yn.Valdor,Yn.Amos],cost:8},{nodes:[Yn.Amos,Yn.Rouynnoranda],cost:9},{nodes:[Yn.Rouynnoranda,Yn.Valdor],cost:12},{nodes:[Yn.Hull,Yn.Maniwaki],cost:15},{nodes:[Yn.Hull,Yn.Gatineau],cost:0},{nodes:[Yn.Gatineau,Yn.Montlaurier],cost:16},{nodes:[Yn.Montlaurier,Yn.Lachute],cost:18},{nodes:[Yn.Shawinigan,Yn.Troisrivieres],cost:3},{nodes:[Yn.Troisrivieres,Yn.Drummondville],cost:9},{nodes:[Yn.Drummondville,Yn.Victoriaville],cost:6},{nodes:[Yn.Victoriaville,Yn.Stgeorges],cost:10},{nodes:[Yn.Stgeorges,Yn.Sherbrooke],cost:15},{nodes:[Yn.Sherbrooke,Yn.Granby],cost:8},{nodes:[Yn.Granby,Yn.Sthyacinthe],cost:4},{nodes:[Yn.Sthyacinthe,Yn.Drummondville],cost:6},{nodes:[Yn.Troisrivieres,Yn.Victoriaville],cost:9},{nodes:[Yn.Victoriaville,Yn.Sherbrooke],cost:9},{nodes:[Yn.Sherbrooke,Yn.Drummondville],cost:9},{nodes:[Yn.Sthyacinthe,Yn.Repentigny],cost:7},{nodes:[Yn.Sthyacinthe,Yn.Brossard],cost:5},{nodes:[Yn.Brossard,Yn.Valleyfield],cost:8},{nodes:[Yn.Valleyfield,Yn.Vaudreuildorion],cost:4},{nodes:[Yn.Gatineau,Yn.Lachute],cost:14},{nodes:[Yn.Montlaurier,Yn.Shawinigan],cost:28},{nodes:[Yn.Shawinigan,Yn.Beauport],cost:14},{nodes:[Yn.Beauport,Yn.Troisrivieres],cost:15},{nodes:[Yn.Troisrivieres,Yn.Repentigny],cost:13},{nodes:[Yn.Repentigny,Yn.Longueuil],cost:3},{nodes:[Yn.Laval,Yn.Lachute],cost:6},{nodes:[Yn.Vaudreuildorion,Yn.Pointeclaire],cost:3},{nodes:[Yn.Montreal,Yn.Brossard],cost:4},{nodes:[Yn.Laval,Yn.Longueuil],cost:0},{nodes:[Yn.Pointeclaire,Yn.Montreal],cost:0},{nodes:[Yn.Montreal,Yn.Longueuil],cost:0},{nodes:[Yn.Pointeclaire,Yn.Laval],cost:0},{nodes:[Yn.Beauport,Yn.Charlesbourg],cost:0},{nodes:[Yn.Charlesbourg,Yn.Quebec],cost:0},{nodes:[Yn.Quebec,Yn.Beauport],cost:0},{nodes:[Yn.Victoriaville,Yn.Beauport],cost:12},{nodes:[Yn.Quebec,Yn.Stgeorges],cost:12},{nodes:[Yn.Stgeorges,Yn.Montmagny],cost:12},{nodes:[Yn.Montmagny,Yn.Riviereduloup],cost:16},{nodes:[Yn.Jonquiere,Yn.Charlesbourg],cost:21},{nodes:[Yn.Montmagny,Yn.Quebec],cost:5},{nodes:[Yn.Stsimeon,Yn.Charlesbourg],cost:18},{nodes:[Yn.Drummondville,Yn.Granby],cost:4},{nodes:[Yn.Roberval,Yn.Shawinigan],cost:25},{nodes:[Yn.Jonquiere,Yn.Stsimeon],cost:16},{nodes:[Yn.Roberval,Yn.Jonquiere],cost:10},{nodes:[Yn.Jonquiere,Yn.Alma],cost:4},{nodes:[Yn.Alma,Yn.Chicoutimi],cost:4},{nodes:[Yn.Jonquiere,Yn.Chicoutimi],cost:0},{nodes:[Yn.Chicoutimi,Yn.Baiecomeau],cost:23},{nodes:[Yn.Stsimeon,Yn.Baiecomeau],cost:23},{nodes:[Yn.Baiecomeau,Yn.Portcartier],cost:16},{nodes:[Yn.Septiles,Yn.Portcartier],cost:6},{nodes:[Yn.Riviereduloup,Yn.Rimouski],cost:12},{nodes:[Yn.Rimouski,Yn.Matane],cost:11},{nodes:[Yn.Matane,Yn.Pointealacroix],cost:15},{nodes:[Yn.Matane,Yn.Steannedesmonts],cost:10},{nodes:[Yn.Pointealacroix,Yn.Steannedesmonts],cost:16},{nodes:[Yn.Steannedesmonts,Yn.Gaspe],cost:21},{nodes:[Yn.Gaspe,Yn.Pointealacroix],cost:25}],layout:"Portrait",adjustRatio:[.25,.35],mapPosition:[-20,75],resupply:[[[3,3,3],[4,4,3],[5,4,4],[5,5,5],[7,6,6]],[[2,2,3],[2,3,3],[3,4,4],[4,5,4],[5,6,5]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[21,21,6,2],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){var i=a.filter((function(e){return[13,18,22].includes(e.number)})),s=a.filter((function(e){return(e.type==ve.Wind||e.type==ve.Nuclear)&&![13,18,22].includes(e.number)})),c=a.filter((function(e){return e.type!=ve.Wind&&e.type!=ve.Nuclear}));a=c.slice(8),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)];var u=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(s),a=De(a,t()+""),a=i.concat(a),a.push(u)}else{var l=a.pop(),d=a.filter((function(e){return e.number>=3&&e.number<=10})),f=a.filter((function(e){return 13==e.number})),p=a.filter((function(e){return 18==e.number||22==e.number})),h=a.filter((function(e){return![13,18,22].includes(e.number)&&(e.type==ve.Wind||e.type==ve.Nuclear)})),g=a.filter((function(e){return e.type!=ve.Wind&&e.number>=11&&e.number<=15})),y=a.filter((function(e){return e.type!=ve.Wind&&e.type!=ve.Nuclear&&e.number>=16}));2==e?(g=De(g,t()+"").slice(1),y=De(y,t()+"").slice(5)):3==e?(g=De(g,t()+"").slice(2),y=De(y,t()+"").slice(6)):4==e&&(g=De(g,t()+"").slice(1),y=De(y,t()+"").slice(3));var m=De(d.concat(f).concat(g),t()+""),v=m.splice(0,8);v=v.sort((function(e,n){return e.number-n.number})),r=v.splice(0,4),o=v;var b=m.splice(0,1);a=m.concat(h).concat(y),a=De(a,t()+""),a=b.concat(p).concat(a).concat([l])}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Put power plants 13, 18, 22 on top of the deck. Ecological power plants will never be put on the bottom of the deck."};(function(e){e["Green"]="green",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple",e["Brown"]="brown"})(Vn||(Vn={})),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"}(Jn||(Jn={}));var qn,Zn,Xn={name:"Russia",cities:[{name:Jn.Murmansk,region:Vn.Green,x:1574,y:351},{name:Jn.Arkhangelsk,region:Vn.Green,x:1456,y:695},{name:Jn.Syktyvkar,region:Vn.Green,x:1669,y:1005},{name:Jn.Kirov,region:Vn.Green,x:1457,y:1172},{name:Jn.Kazan,region:Vn.Green,x:1378,y:1478},{name:Jn.Cheboksary,region:Vn.Green,x:1200,y:1328},{name:Jn.Ulyanovsk,region:Vn.Green,x:884,y:1448},{name:Jn.Tula,region:Vn.Pink,x:485,y:1077},{name:Jn.Kaliningrad,region:Vn.Pink,x:394,y:606},{name:Jn.Ryazan,region:Vn.Pink,x:793,y:1193},{name:Jn.Nizhnynovgorod,region:Vn.Pink,x:1129,y:1116},{name:Jn.Moscow,region:Vn.Pink,x:763,y:961},{name:Jn.Stpetersburg,region:Vn.Pink,x:883,y:597},{name:Jn.Yaroslavl,region:Vn.Pink,x:1018,y:915},{name:Jn.Chita,region:Vn.Red,x:4168,y:2048},{name:Jn.Bratsk,region:Vn.Red,x:3599,y:1808},{name:Jn.Krasnoyarsk,region:Vn.Red,x:3230,y:1930},{name:Jn.Kemerovd,region:Vn.Red,x:2953,y:1987},{name:Jn.Novokuznetsk,region:Vn.Red,x:3041,y:2159},{name:Jn.Irkutsk,region:Vn.Red,x:3721,y:2162},{name:Jn.Ulanude,region:Vn.Red,x:4030,y:2228},{name:Jn.Norilsk,region:Vn.Yellow,x:3001,y:856},{name:Jn.Surgut,region:Vn.Yellow,x:2348,y:1411},{name:Jn.Tyumen,region:Vn.Yellow,x:2060,y:1627},{name:Jn.Tomsk,region:Vn.Yellow,x:2773,y:1835},{name:Jn.Novosibirsk,region:Vn.Yellow,x:2647,y:2005},{name:Jn.Barnaul,region:Vn.Yellow,x:2662,y:2191},{name:Jn.Omsk,region:Vn.Yellow,x:2195,y:1957},{name:Jn.Chelyabinsk,region:Vn.Purple,x:1768,y:1865},{name:Jn.Ufa,region:Vn.Purple,x:1472,y:1907},{name:Jn.Perm,region:Vn.Purple,x:1688,y:1388},{name:Jn.Yekaterinburg,region:Vn.Purple,x:1757,y:1620},{name:Jn.Orenburg,region:Vn.Purple,x:1250,y:1997},{name:Jn.Naberezhnyechelny,region:Vn.Purple,x:1427,y:1709},{name:Jn.Samara,region:Vn.Purple,x:1132,y:1701},{name:Jn.Astrakhan,region:Vn.Brown,x:619,y:2092},{name:Jn.Makhachkala,region:Vn.Brown,x:317,y:2262},{name:Jn.Saratov,region:Vn.Brown,x:808,y:1661},{name:Jn.Volgograd,region:Vn.Brown,x:589,y:1795},{name:Jn.Krasnodar,region:Vn.Brown,x:260,y:1865},{name:Jn.Rostov,region:Vn.Brown,x:311,y:1658},{name:Jn.Voronezh,region:Vn.Brown,x:485,y:1409}],connections:[{nodes:[Jn.Kaliningrad,Jn.Stpetersburg],cost:15},{nodes:[Jn.Stpetersburg,Jn.Murmansk],cost:19},{nodes:[Jn.Murmansk,Jn.Arkhangelsk],cost:15},{nodes:[Jn.Arkhangelsk,Jn.Stpetersburg],cost:14},{nodes:[Jn.Tula,Jn.Kaliningrad],cost:20},{nodes:[Jn.Tula,Jn.Moscow],cost:3},{nodes:[Jn.Moscow,Jn.Ryazan],cost:3},{nodes:[Jn.Ryazan,Jn.Voronezh],cost:5},{nodes:[Jn.Voronezh,Jn.Tula],cost:5},{nodes:[Jn.Tula,Jn.Stpetersburg],cost:13},{nodes:[Jn.Tula,Jn.Ryazan],cost:0},{nodes:[Jn.Stpetersburg,Jn.Moscow],cost:10},{nodes:[Jn.Moscow,Jn.Yaroslavl],cost:3},{nodes:[Jn.Yaroslavl,Jn.Nizhnynovgorod],cost:4},{nodes:[Jn.Nizhnynovgorod,Jn.Moscow],cost:7},{nodes:[Jn.Yaroslavl,Jn.Stpetersburg],cost:9},{nodes:[Jn.Yaroslavl,Jn.Arkhangelsk],cost:12},{nodes:[Jn.Arkhangelsk,Jn.Syktyvkar],cost:10},{nodes:[Jn.Syktyvkar,Jn.Surgut],cost:21},{nodes:[Jn.Perm,Jn.Syktyvkar],cost:8},{nodes:[Jn.Syktyvkar,Jn.Kirov],cost:6},{nodes:[Jn.Syktyvkar,Jn.Nizhnynovgorod],cost:11},{nodes:[Jn.Nizhnynovgorod,Jn.Arkhangelsk],cost:15},{nodes:[Jn.Nizhnynovgorod,Jn.Cheboksary],cost:3},{nodes:[Jn.Cheboksary,Jn.Ulyanovsk],cost:4},{nodes:[Jn.Ulyanovsk,Jn.Voronezh],cost:11},{nodes:[Jn.Voronezh,Jn.Volgograd],cost:8},{nodes:[Jn.Volgograd,Jn.Saratov],cost:6},{nodes:[Jn.Saratov,Jn.Samara],cost:5},{nodes:[Jn.Samara,Jn.Ulyanovsk],cost:3},{nodes:[Jn.Ulyanovsk,Jn.Kazan],cost:3},{nodes:[Jn.Kazan,Jn.Samara],cost:4},{nodes:[Jn.Samara,Jn.Naberezhnyechelny],cost:5},{nodes:[Jn.Cheboksary,Jn.Kazan],cost:2},{nodes:[Jn.Cheboksary,Jn.Kirov],cost:5},{nodes:[Jn.Kirov,Jn.Kazan],cost:5},{nodes:[Jn.Kazan,Jn.Perm],cost:8},{nodes:[Jn.Kazan,Jn.Naberezhnyechelny],cost:3},{nodes:[Jn.Naberezhnyechelny,Jn.Ufa],cost:4},{nodes:[Jn.Ufa,Jn.Orenburg],cost:6},{nodes:[Jn.Orenburg,Jn.Samara],cost:6},{nodes:[Jn.Orenburg,Jn.Naberezhnyechelny],cost:7},{nodes:[Jn.Ufa,Jn.Chelyabinsk],cost:8},{nodes:[Jn.Chelyabinsk,Jn.Yekaterinburg],cost:3},{nodes:[Jn.Yekaterinburg,Jn.Perm],cost:5},{nodes:[Jn.Perm,Jn.Kirov],cost:6},{nodes:[Jn.Chelyabinsk,Jn.Tyumen],cost:5},{nodes:[Jn.Tyumen,Jn.Surgut],cost:10},{nodes:[Jn.Syktyvkar,Jn.Tyumen],cost:17},{nodes:[Jn.Tyumen,Jn.Yekaterinburg],cost:5},{nodes:[Jn.Chelyabinsk,Jn.Omsk],cost:13},{nodes:[Jn.Omsk,Jn.Tyumen],cost:9},{nodes:[Jn.Tyumen,Jn.Tomsk],cost:19},{nodes:[Jn.Tomsk,Jn.Surgut],cost:15},{nodes:[Jn.Tomsk,Jn.Novosibirsk],cost:4},{nodes:[Jn.Novosibirsk,Jn.Barnaul],cost:4},{nodes:[Jn.Barnaul,Jn.Omsk],cost:11},{nodes:[Jn.Omsk,Jn.Novosibirsk],cost:10},{nodes:[Jn.Omsk,Jn.Tomsk],cost:12},{nodes:[Jn.Rostov,Jn.Krasnodar],cost:4},{nodes:[Jn.Krasnodar,Jn.Volgograd],cost:9},{nodes:[Jn.Volgograd,Jn.Astrakhan],cost:6},{nodes:[Jn.Krasnodar,Jn.Makhachkala],cost:14},{nodes:[Jn.Makhachkala,Jn.Astrakhan],cost:8},{nodes:[Jn.Makhachkala,Jn.Volgograd],cost:11},{nodes:[Jn.Rostov,Jn.Volgograd],cost:7},{nodes:[Jn.Ryazan,Jn.Ulyanovsk],cost:9},{nodes:[Jn.Ulyanovsk,Jn.Saratov],cost:6},{nodes:[Jn.Saratov,Jn.Voronezh],cost:8},{nodes:[Jn.Rostov,Jn.Voronezh],cost:9},{nodes:[Jn.Naberezhnyechelny,Jn.Perm],cost:6},{nodes:[Jn.Naberezhnyechelny,Jn.Yekaterinburg],cost:8},{nodes:[Jn.Ufa,Jn.Yekaterinburg],cost:6},{nodes:[Jn.Chita,Jn.Ulanude],cost:6},{nodes:[Jn.Ulanude,Jn.Irkutsk],cost:6},{nodes:[Jn.Irkutsk,Jn.Novokuznetsk],cost:21},{nodes:[Jn.Novokuznetsk,Jn.Kemerovd],cost:3},{nodes:[Jn.Kemerovd,Jn.Tomsk],cost:3},{nodes:[Jn.Novosibirsk,Jn.Novokuznetsk],cost:5},{nodes:[Jn.Novosibirsk,Jn.Kemerovd],cost:4},{nodes:[Jn.Novokuznetsk,Jn.Barnaul],cost:6},{nodes:[Jn.Kemerovd,Jn.Krasnoyarsk],cost:7},{nodes:[Jn.Krasnoyarsk,Jn.Novokuznetsk],cost:7},{nodes:[Jn.Krasnoyarsk,Jn.Irkutsk],cost:17},{nodes:[Jn.Krasnoyarsk,Jn.Bratsk],cost:10},{nodes:[Jn.Bratsk,Jn.Tomsk],cost:17},{nodes:[Jn.Bratsk,Jn.Irkutsk],cost:10},{nodes:[Jn.Bratsk,Jn.Ulanude],cost:14},{nodes:[Jn.Tomsk,Jn.Norilsk],cost:24},{nodes:[Jn.Norilsk,Jn.Bratsk],cost:29},{nodes:[Jn.Norilsk,Jn.Surgut],cost:19}],adjustRatio:[.25,.25],resupply:[[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[3,4,3],[3,4,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,3],[2,2,3],[3,3,4],[4,3,5],[4,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[18,24,0,7],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ve),o=[],a=[],i=r.pop();if("original"==n){o=r.filter((function(e){return e.number>=3&&e.number<=5})),a=r.filter((function(e){return e.number>=7&&e.number<=9}));var s=Yt(10),c=Yt(11),u=Yt(13),l=r.filter((function(e){return 12==e.number||e.number>=15})),d=De(l,t()+"");2==e||3==e?d=d.slice(8):4==e&&(d=d.slice(4));var f=d.slice(0,3).concat(s,c);f=De(f,t()+""),r=[u].concat(f,d.slice(3),i)}else{var p=r.filter((function(e){return e.number<=15&&6!=e.number&&14!=e.number})),h=De(p,t()+""),g=r.filter((function(e){return e.number>=16})),y=De(g,t()+"");2==e?y=y.slice(6):3==e?y=y.slice(8):4==e&&(y=y.slice(4));var m=h.slice(0,6),v=h.slice(6);m=m.sort((function(e,n){return e.number-n.number})),o=m.slice(0,3),a=m.slice(3),r=v.concat(y,i)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:r}},mapSpecificRules:"The power plant market is restricted, and the rules for removing old plants are changed."};(function(e){e["Orange"]="orange",e["Green"]="green",e["Yellow"]="yellow",e["Brown"]="brown",e["Red"]="red"})(qn||(qn={})),function(e){e["Zimbabwe"]="Zimbabwe",e["Musina"]="Musina",e["Botswana"]="Botswana",e["Polokwane"]="Polokwane",e["PretoriaN"]="Pretoria N",e["PretoriaS"]="Pretoria S",e["Rustenburg"]="Rustenburg",e["Mozambique"]="Mozambique",e["Mbombela"]="Mbombela",e["Eswatini"]="Eswatini",e["Germiston"]="Germiston",e["JohannesburgN"]="Johannesburg N",e["JohannesburgS"]="Johannesburg S",e["Ladysmith"]="Ladysmith",e["Newcastle"]="Newcastle",e["Pietermaritzburg"]="Pietermaritzburg",e["DurbanN"]="Durban N",e["DurbanS"]="Durban S",e["Mthatha"]="Mthatha",e["Lesotho"]="Lesotho",e["Bloemfontein"]="Bloemfontein",e["Klerksdorp"]="Klerksdorp",e["Welkom"]="Welkom",e["Kuruman"]="Kuruman",e["Kimberly"]="Kimberly",e["Upington"]="Upington",e["Springbok"]="Springbok",e["Namibia"]="Namibia",e["DeAar"]="De Aar",e["BeaufortWest"]="Beaufort West",e["EastLondon"]="East London",e["PortElizabeth"]="Port Elizabeth",e["George"]="George",e["CapeTownN"]="Cape Town N",e["CapeTownS"]="Cape Town S"}(Zn||(Zn={}));var Qn,et,nt={name:"South Africa",cities:[{name:Zn.Zimbabwe,region:qn.Orange,x:903,y:50,singleOccupancy:!0},{name:Zn.Musina,region:qn.Orange,x:874,y:134},{name:Zn.Botswana,region:qn.Orange,x:560,y:187,singleOccupancy:!0},{name:Zn.Polokwane,region:qn.Orange,x:802,y:189},{name:Zn.PretoriaN,region:qn.Orange,x:759,y:261},{name:Zn.PretoriaS,region:qn.Orange,x:759,y:291},{name:Zn.Rustenburg,region:qn.Orange,x:632,y:232},{name:Zn.Mozambique,region:qn.Green,x:1011,y:170,singleOccupancy:!0},{name:Zn.Mbombela,region:qn.Green,x:891,y:275},{name:Zn.Eswatini,region:qn.Green,x:926,y:351,singleOccupancy:!0},{name:Zn.Germiston,region:qn.Green,x:836,y:351},{name:Zn.JohannesburgN,region:qn.Green,x:753,y:343},{name:Zn.JohannesburgS,region:qn.Green,x:754,y:371},{name:Zn.Ladysmith,region:qn.Green,x:823,y:456},{name:Zn.Newcastle,region:qn.Yellow,x:957,y:478},{name:Zn.Pietermaritzburg,region:qn.Yellow,x:851,y:511},{name:Zn.DurbanN,region:qn.Yellow,x:894,y:563},{name:Zn.DurbanS,region:qn.Yellow,x:893,y:592},{name:Zn.Mthatha,region:qn.Yellow,x:791,y:663},{name:Zn.Lesotho,region:qn.Yellow,x:759,y:523,singleOccupancy:!0},{name:Zn.Bloemfontein,region:qn.Yellow,x:656,y:509},{name:Zn.Klerksdorp,region:qn.Brown,x:660,y:362},{name:Zn.Welkom,region:qn.Brown,x:652,y:431},{name:Zn.Kuruman,region:qn.Brown,x:499,y:386},{name:Zn.Kimberly,region:qn.Brown,x:564,y:496},{name:Zn.Upington,region:qn.Brown,x:378,y:453},{name:Zn.Springbok,region:qn.Brown,x:211,y:530},{name:Zn.Namibia,region:qn.Brown,x:189,y:311,singleOccupancy:!0},{name:Zn.DeAar,region:qn.Red,x:539,y:665},{name:Zn.BeaufortWest,region:qn.Red,x:427,y:705},{name:Zn.EastLondon,region:qn.Red,x:722,y:750},{name:Zn.PortElizabeth,region:qn.Red,x:600,y:811},{name:Zn.George,region:qn.Red,x:439,y:811},{name:Zn.CapeTownN,region:qn.Red,x:233,y:783},{name:Zn.CapeTownS,region:qn.Red,x:231,y:812}],connections:[{nodes:[Zn.Springbok,Zn.Namibia],cost:30},{nodes:[Zn.Bloemfontein,Zn.Lesotho],cost:30},{nodes:[Zn.Germiston,Zn.Eswatini],cost:30},{nodes:[Zn.Mbombela,Zn.Mozambique],cost:30},{nodes:[Zn.Botswana,Zn.Rustenburg],cost:30},{nodes:[Zn.Zimbabwe,Zn.Musina],cost:30},{nodes:[Zn.CapeTownS,Zn.CapeTownN],cost:0},{nodes:[Zn.CapeTownS,Zn.George],cost:16},{nodes:[Zn.George,Zn.PortElizabeth],cost:12},{nodes:[Zn.PortElizabeth,Zn.EastLondon],cost:13},{nodes:[Zn.EastLondon,Zn.Mthatha],cost:8},{nodes:[Zn.Mthatha,Zn.DurbanS],cost:13},{nodes:[Zn.DurbanS,Zn.DurbanN],cost:0},{nodes:[Zn.DurbanN,Zn.Pietermaritzburg],cost:3},{nodes:[Zn.DurbanN,Zn.Newcastle],cost:9},{nodes:[Zn.Newcastle,Zn.Pietermaritzburg],cost:9},{nodes:[Zn.Pietermaritzburg,Zn.Ladysmith],cost:5},{nodes:[Zn.Ladysmith,Zn.Newcastle],cost:10},{nodes:[Zn.Bloemfontein,Zn.Mthatha],cost:18},{nodes:[Zn.Bloemfontein,Zn.EastLondon],cost:22},{nodes:[Zn.EastLondon,Zn.DeAar],cost:22},{nodes:[Zn.DeAar,Zn.PortElizabeth],cost:18},{nodes:[Zn.George,Zn.DeAar],cost:17},{nodes:[Zn.DeAar,Zn.BeaufortWest],cost:10},{nodes:[Zn.BeaufortWest,Zn.George],cost:8},{nodes:[Zn.BeaufortWest,Zn.CapeTownN],cost:22},{nodes:[Zn.CapeTownN,Zn.Springbok],cost:22},{nodes:[Zn.Springbok,Zn.BeaufortWest],cost:24},{nodes:[Zn.DeAar,Zn.Springbok],cost:26},{nodes:[Zn.Springbok,Zn.Upington],cost:16},{nodes:[Zn.Upington,Zn.DeAar],cost:16},{nodes:[Zn.DeAar,Zn.Bloemfontein],cost:13},{nodes:[Zn.Bloemfontein,Zn.Kimberly],cost:6},{nodes:[Zn.Kimberly,Zn.DeAar],cost:10},{nodes:[Zn.Kimberly,Zn.Upington],cost:14},{nodes:[Zn.Kimberly,Zn.Welkom],cost:9},{nodes:[Zn.Welkom,Zn.Bloemfontein],cost:6},{nodes:[Zn.Bloemfontein,Zn.Ladysmith],cost:19},{nodes:[Zn.Mthatha,Zn.Pietermaritzburg],cost:12},{nodes:[Zn.Upington,Zn.Kuruman],cost:11},{nodes:[Zn.Musina,Zn.Polokwane],cost:8},{nodes:[Zn.Polokwane,Zn.PretoriaN],cost:11},{nodes:[Zn.PretoriaN,Zn.PretoriaS],cost:0},{nodes:[Zn.PretoriaS,Zn.JohannesburgN],cost:2},{nodes:[Zn.JohannesburgN,Zn.JohannesburgS],cost:0},{nodes:[Zn.JohannesburgS,Zn.Germiston],cost:1},{nodes:[Zn.JohannesburgN,Zn.Mbombela],cost:13},{nodes:[Zn.Mbombela,Zn.Germiston],cost:13},{nodes:[Zn.PretoriaN,Zn.Mbombela],cost:13},{nodes:[Zn.Mbombela,Zn.Polokwane],cost:10},{nodes:[Zn.Musina,Zn.Mbombela],cost:15},{nodes:[Zn.PretoriaN,Zn.Rustenburg],cost:4},{nodes:[Zn.Rustenburg,Zn.JohannesburgN],cost:4},{nodes:[Zn.JohannesburgN,Zn.Klerksdorp],cost:7},{nodes:[Zn.Klerksdorp,Zn.Welkom],cost:5},{nodes:[Zn.Bloemfontein,Zn.JohannesburgS],cost:16},{nodes:[Zn.Kuruman,Zn.Rustenburg],cost:18},{nodes:[Zn.Klerksdorp,Zn.Kuruman],cost:12},{nodes:[Zn.Kuruman,Zn.Kimberly],cost:8},{nodes:[Zn.JohannesburgS,Zn.Ladysmith],cost:13},{nodes:[Zn.Ladysmith,Zn.Germiston],cost:13}],resupply:[[[4,7,5],[4,7,5],[5,8,6],[6,9,7],[7,10,8]],[[1,2,1],[1,2,1],[2,3,2],[2,4,3],[4,5,4]],[[1,3,3],[1,3,3],[2,4,4],[3,4,5],[3,6,6]],[[1,1,2],[1,1,2],[2,2,3],[2,3,3],[2,3,4]]],layout:"Landscape",adjustRatio:[.9,.75],mapPosition:[70,50],mapRotation:0,startingResources:[24,15,12,3],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve).filter((function(e){return 7!==e.number}));if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(8),Yt(9),Yt(10),Yt(11)]}else{var u=De(a.splice(0,12),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Coal storage: there is a separate storage space below the resource market, empty at game start. Coal used to power plants returns to this storage space (not the main supply). The resource-market refill draws coal from storage first, then from the main supply. Players can always buy coal for $8 from the storage space (in addition to the standard market price). Metropolises: Cape Town, Durban, Johannesburg and Pretoria each consist of two cities (N and S) connected by a 0-cost edge. Cross-border connections: the six 30-Elektro connections to neighboring countries (Namibia, Botswana, Zimbabwe, Mozambique, Eswatini, Lesotho) are available from the start of the game. The 30 Elektro is the complete cost — no house-base cost is added on top. Only a single player can build on each cross-border space (cap of 1 instead of the standard 3). Power plant 07 is removed from the deck."};(function(e){e["Pink"]="pink",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Red"]="red",e["Yellow"]="yellow"})(Qn||(Qn={})),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"}(et||(et={}));var tt,rt,ot={name:"Spain & Portugal",cities:[{name:et.Evora,region:Qn.Yellow,x:890,y:1780},{name:et.Faro,region:Qn.Yellow,x:822,y:2348},{name:et.Portimao,region:Qn.Yellow,x:592,y:2218},{name:et.Setubal,region:Qn.Yellow,x:578,y:1864},{name:et.Lisboa,region:Qn.Yellow,x:572,y:1586},{name:et.Porto,region:Qn.Yellow,x:736,y:1052},{name:et.Braga,region:Qn.Yellow,x:990,y:828},{name:et.Gerona,region:Qn.Pink,x:3728,y:666},{name:et.Barcelona,region:Qn.Pink,x:3538,y:848},{name:et.Tarragona,region:Qn.Pink,x:3312,y:970},{name:et.Lerida,region:Qn.Pink,x:3166,y:752},{name:et.Castellondelaplana,region:Qn.Pink,x:3010,y:1284},{name:et.Valencia,region:Qn.Pink,x:2938,y:1580},{name:et.Alicante,region:Qn.Pink,x:2936,y:1922},{name:et.Sansebastian,region:Qn.Brown,x:2498,y:278},{name:et.Pamplona,region:Qn.Brown,x:2648,y:484},{name:et.Zaragoza,region:Qn.Brown,x:2760,y:810},{name:et.Madrid,region:Qn.Brown,x:2088,y:1170},{name:et.Logrono,region:Qn.Brown,x:2310,y:622},{name:et.Bilbao,region:Qn.Brown,x:2264,y:226},{name:et.Santander,region:Qn.Brown,x:2022,y:252},{name:et.Gijon,region:Qn.Green,x:1672,y:190},{name:et.Leon,region:Qn.Green,x:1604,y:518},{name:et.Valladolid,region:Qn.Green,x:1850,y:782},{name:et.Salamanca,region:Qn.Green,x:1564,y:1032},{name:et.Orense,region:Qn.Green,x:1072,y:532},{name:et.Lacoruna,region:Qn.Green,x:982,y:184},{name:et.Santiagodecompostela,region:Qn.Green,x:772,y:394},{name:et.Cuenca,region:Qn.Purple,x:2464,y:1300},{name:et.Albacete,region:Qn.Purple,x:2532,y:1684},{name:et.Murcia,region:Qn.Purple,x:2678,y:2056},{name:et.Toledo,region:Qn.Purple,x:1920,y:1400},{name:et.Ciudadreal,region:Qn.Purple,x:1982,y:1714},{name:et.Caceres,region:Qn.Purple,x:1354,y:1432},{name:et.Merida,region:Qn.Purple,x:1318,y:1764},{name:et.Almeria,region:Qn.Red,x:2402,y:2440},{name:et.Granada,region:Qn.Red,x:2044,y:2272},{name:et.Cordoba,region:Qn.Red,x:1728,y:2074},{name:et.Malaga,region:Qn.Red,x:1782,y:2484},{name:et.Cadiz,region:Qn.Red,x:1290,y:2552},{name:et.Sevilla,region:Qn.Red,x:1390,y:2168},{name:et.Huelva,region:Qn.Red,x:1082,y:2196}],connections:[{nodes:[et.Huelva,et.Faro],cost:6},{nodes:[et.Faro,et.Portimao],cost:4},{nodes:[et.Portimao,et.Setubal],cost:12},{nodes:[et.Setubal,et.Evora],cost:6},{nodes:[et.Evora,et.Merida],cost:9},{nodes:[et.Merida,et.Sevilla],cost:14},{nodes:[et.Sevilla,et.Cadiz],cost:8},{nodes:[et.Cadiz,et.Malaga],cost:12},{nodes:[et.Malaga,et.Granada],cost:7},{nodes:[et.Granada,et.Almeria],cost:9},{nodes:[et.Almeria,et.Murcia],cost:13},{nodes:[et.Murcia,et.Alicante],cost:4},{nodes:[et.Alicante,et.Valencia],cost:9},{nodes:[et.Valencia,et.Castellondelaplana],cost:4},{nodes:[et.Albacete,et.Almeria],cost:19},{nodes:[et.Albacete,et.Murcia],cost:10},{nodes:[et.Albacete,et.Alicante],cost:11},{nodes:[et.Albacete,et.Valencia],cost:11},{nodes:[et.Albacete,et.Cuenca],cost:8},{nodes:[et.Albacete,et.Ciudadreal],cost:13},{nodes:[et.Albacete,et.Granada],cost:19},{nodes:[et.Albacete,et.Toledo],cost:14},{nodes:[et.Toledo,et.Madrid],cost:6},{nodes:[et.Madrid,et.Cuenca],cost:11},{nodes:[et.Cuenca,et.Valencia],cost:13},{nodes:[et.Cuenca,et.Castellondelaplana],cost:14},{nodes:[et.Castellondelaplana,et.Tarragona],cost:12},{nodes:[et.Toledo,et.Caceres],cost:16},{nodes:[et.Caceres,et.Merida],cost:4},{nodes:[et.Merida,et.Ciudadreal],cost:16},{nodes:[et.Ciudadreal,et.Granada],cost:16},{nodes:[et.Granada,et.Cordoba],cost:11},{nodes:[et.Cordoba,et.Malaga],cost:11},{nodes:[et.Malaga,et.Sevilla],cost:12},{nodes:[et.Sevilla,et.Cordoba],cost:8},{nodes:[et.Cordoba,et.Ciudadreal],cost:10},{nodes:[et.Merida,et.Cordoba],cost:14},{nodes:[et.Huelva,et.Cadiz],cost:9},{nodes:[et.Huelva,et.Sevilla],cost:6},{nodes:[et.Merida,et.Huelva],cost:15},{nodes:[et.Huelva,et.Evora],cost:12},{nodes:[et.Evora,et.Faro],cost:13},{nodes:[et.Faro,et.Setubal],cost:14},{nodes:[et.Setubal,et.Lisboa],cost:4},{nodes:[et.Lisboa,et.Evora],cost:9},{nodes:[et.Lisboa,et.Merida],cost:16},{nodes:[et.Caceres,et.Ciudadreal],cost:16},{nodes:[et.Toledo,et.Cuenca],cost:13},{nodes:[et.Salamanca,et.Toledo],cost:14},{nodes:[et.Salamanca,et.Madrid],cost:14},{nodes:[et.Salamanca,et.Caceres],cost:13},{nodes:[et.Porto,et.Lisboa],cost:18},{nodes:[et.Porto,et.Salamanca],cost:19},{nodes:[et.Porto,et.Caceres],cost:21},{nodes:[et.Caceres,et.Lisboa],cost:19},{nodes:[et.Ciudadreal,et.Toledo],cost:7},{nodes:[et.Braga,et.Porto],cost:3},{nodes:[et.Braga,et.Salamanca],cost:19},{nodes:[et.Salamanca,et.Valladolid],cost:7},{nodes:[et.Valladolid,et.Madrid],cost:13},{nodes:[et.Madrid,et.Zaragoza],cost:19},{nodes:[et.Zaragoza,et.Lerida],cost:8},{nodes:[et.Lerida,et.Tarragona],cost:6},{nodes:[et.Tarragona,et.Barcelona],cost:6},{nodes:[et.Lerida,et.Castellondelaplana],cost:13},{nodes:[et.Castellondelaplana,et.Zaragoza],cost:15},{nodes:[et.Zaragoza,et.Cuenca],cost:16},{nodes:[et.Braga,et.Valladolid],cost:24},{nodes:[et.Lerida,et.Barcelona],cost:10},{nodes:[et.Barcelona,et.Gerona],cost:6},{nodes:[et.Gerona,et.Lerida],cost:13},{nodes:[et.Lerida,et.Pamplona],cost:17},{nodes:[et.Pamplona,et.Zaragoza],cost:11},{nodes:[et.Zaragoza,et.Logrono],cost:11},{nodes:[et.Logrono,et.Madrid],cost:18},{nodes:[et.Santiagodecompostela,et.Braga],cost:11},{nodes:[et.Braga,et.Orense],cost:9},{nodes:[et.Orense,et.Santiagodecompostela],cost:7},{nodes:[et.Santiagodecompostela,et.Lacoruna],cost:4},{nodes:[et.Lacoruna,et.Gijon],cost:9},{nodes:[et.Gijon,et.Santander],cost:11},{nodes:[et.Santander,et.Bilbao],cost:6},{nodes:[et.Bilbao,et.Sansebastian],cost:5},{nodes:[et.Sansebastian,et.Pamplona],cost:6},{nodes:[et.Pamplona,et.Logrono],cost:7},{nodes:[et.Logrono,et.Sansebastian],cost:9},{nodes:[et.Bilbao,et.Logrono],cost:9},{nodes:[et.Logrono,et.Santander],cost:13},{nodes:[et.Santander,et.Valladolid],cost:16},{nodes:[et.Valladolid,et.Logrono],cost:15},{nodes:[et.Leon,et.Santander],cost:13},{nodes:[et.Gijon,et.Leon],cost:9},{nodes:[et.Leon,et.Valladolid],cost:9},{nodes:[et.Valladolid,et.Orense],cost:22},{nodes:[et.Orense,et.Leon],cost:14},{nodes:[et.Gijon,et.Orense],cost:10},{nodes:[et.Orense,et.Lacoruna],cost:6}],layout:"Portrait",adjustRatio:[.315,.315],mapPosition:[-135,60],resupply:[[[3,4,2],[4,5,2],[4,6,3],[4,7,3],[6,8,4]],[[2,3,5],[2,4,5],[3,5,6],[4,6,7],[5,7,9]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[0,2,1],[0,2,1],[0,4,1],[0,5,1],[0,5,2]]],startingResources:[24,18,9,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if(a=a.filter((function(e){return![18,22,27].includes(e.number)})),"original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var c=De(a.splice(0,13),t()+""),u=c.splice(0,8);u=u.sort((function(e,n){return e.number-n.number})),r=u.slice(0,4),o=u.slice(4);var l=c.shift(),d=a.pop();a=De(a,t()+""),2==e?(c=c.slice(1),a=De(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=De(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=De(a.slice(3).concat(c),t()+"")):a=De(a.concat(c),t()+""),a.unshift(l),a.push(d)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Remove power plants 18, 22 and 27 from the deck. Place them on top of the deck at the start of Step 2.\nYou cannot buy a nuclear power plant if you only have cities in Portugal."};(function(e){e["Red"]="red",e["Pink"]="pink",e["Yellow"]="yellow",e["Brown"]="brown",e["Orange"]="orange",e["Green"]="green"})(tt||(tt={})),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"}(rt||(rt={}));var at={name:"UK & Ireland",cities:[{name:rt.Norwich,region:tt.Red,island:"gb",x:646,y:702},{name:rt.London1,region:tt.Red,island:"gb",x:554,y:756},{name:rt.London2,region:tt.Red,island:"gb",x:550,y:780},{name:rt.Brighton,region:tt.Red,island:"gb",x:537,y:837},{name:rt.Southampton,region:tt.Red,island:"gb",x:451,y:805},{name:rt.Plymouth,region:tt.Red,island:"gb",x:312,y:814},{name:rt.Leicester,region:tt.Red,island:"gb",x:540,y:680},{name:rt.Bristol,region:tt.Red,island:"gb",x:425,y:762},{name:rt.Newcastleupontyne,region:tt.Pink,island:"gb",x:550,y:414},{name:rt.Leeds,region:tt.Pink,island:"gb",x:559,y:541},{name:rt.Sheffield,region:tt.Pink,island:"gb",x:530,y:590},{name:rt.Nottingham,region:tt.Pink,island:"gb",x:531,y:632},{name:rt.Birmingham,region:tt.Pink,island:"gb",x:465,y:663},{name:rt.Manchester,region:tt.Pink,island:"gb",x:479,y:543},{name:rt.Liverpool,region:tt.Pink,island:"gb",x:433,y:576},{name:rt.Newportcasnewydd,region:tt.Yellow,island:"gb",x:425,y:722},{name:rt.Bangor,region:tt.Yellow,island:"gb",x:348,y:574},{name:rt.Aberystwyth,region:tt.Yellow,island:"gb",x:357,y:639},{name:rt.Swanseaabertawe,region:tt.Yellow,island:"gb",x:346,y:706},{name:rt.Cardiffcaerdydd,region:tt.Yellow,island:"gb",x:357,y:761},{name:rt.Haverfordwesthwlffordd,region:tt.Yellow,island:"gb",x:303,y:673},{name:rt.Invernessinbhirnis,region:tt.Brown,island:"gb",x:479,y:208},{name:rt.Aberdeenobardheathain,region:tt.Brown,island:"gb",x:588,y:245},{name:rt.Dundeedundeach,region:tt.Brown,island:"gb",x:552,y:286},{name:rt.Perthpeairt,region:tt.Brown,island:"gb",x:489,y:307},{name:rt.Edinburgh,region:tt.Brown,island:"gb",x:494,y:375},{name:rt.Dumfries,region:tt.Brown,island:"gb",x:441,y:417},{name:rt.Glasgow,region:tt.Brown,island:"gb",x:422,y:335},{name:rt.Coleraine,region:tt.Orange,island:"ie",x:330,y:367},{name:rt.Derry,region:tt.Orange,island:"ie",x:256,y:362},{name:rt.Belfast,region:tt.Orange,island:"ie",x:342,y:421},{name:rt.Newry,region:tt.Orange,island:"ie",x:298,y:462},{name:rt.Omagh,region:tt.Orange,island:"ie",x:260,y:403},{name:rt.Sligo,region:tt.Green,island:"ie",x:181,y:411},{name:rt.Dublin,region:tt.Green,island:"ie",x:274,y:530},{name:rt.Waterford,region:tt.Green,island:"ie",x:210,y:611},{name:rt.Cork,region:tt.Green,island:"ie",x:114,y:626},{name:rt.Athlone,region:tt.Green,island:"ie",x:200,y:489},{name:rt.Galway,region:tt.Green,island:"ie",x:112,y:486},{name:rt.Limerick,region:tt.Green,island:"ie",x:122,y:546}],connections:[{nodes:[rt.Nottingham,rt.Leicester],cost:4},{nodes:[rt.London1,rt.London2],cost:0},{nodes:[rt.London2,rt.Brighton],cost:6},{nodes:[rt.Brighton,rt.Southampton],cost:7},{nodes:[rt.Southampton,rt.Plymouth],cost:19},{nodes:[rt.Plymouth,rt.Bristol],cost:14},{nodes:[rt.Bristol,rt.Newportcasnewydd],cost:7},{nodes:[rt.Cardiffcaerdydd,rt.Swanseaabertawe],cost:7},{nodes:[rt.Swanseaabertawe,rt.Newportcasnewydd],cost:8},{nodes:[rt.Newportcasnewydd,rt.Cardiffcaerdydd],cost:3},{nodes:[rt.Bristol,rt.Southampton],cost:11},{nodes:[rt.Southampton,rt.London2],cost:9},{nodes:[rt.London2,rt.Bristol],cost:14},{nodes:[rt.London1,rt.Newportcasnewydd],cost:16},{nodes:[rt.Haverfordwesthwlffordd,rt.Aberystwyth],cost:9},{nodes:[rt.Haverfordwesthwlffordd,rt.Swanseaabertawe],cost:8},{nodes:[rt.Swanseaabertawe,rt.Aberystwyth],cost:11},{nodes:[rt.Aberystwyth,rt.Bangor],cost:11},{nodes:[rt.Bangor,rt.Liverpool],cost:9},{nodes:[rt.Liverpool,rt.Aberystwyth],cost:16},{nodes:[rt.Aberystwyth,rt.Newportcasnewydd],cost:14},{nodes:[rt.Aberystwyth,rt.Birmingham],cost:16},{nodes:[rt.Birmingham,rt.Liverpool],cost:12},{nodes:[rt.Birmingham,rt.Newportcasnewydd],cost:9},{nodes:[rt.London1,rt.Norwich],cost:11},{nodes:[rt.Norwich,rt.Leicester],cost:12},{nodes:[rt.Leicester,rt.London1],cost:10},{nodes:[rt.London1,rt.Birmingham],cost:13},{nodes:[rt.Birmingham,rt.Leicester],cost:6},{nodes:[rt.Birmingham,rt.Nottingham],cost:7},{nodes:[rt.Nottingham,rt.Sheffield],cost:6},{nodes:[rt.Sheffield,rt.Leeds],cost:5},{nodes:[rt.Leeds,rt.Manchester],cost:8},{nodes:[rt.Manchester,rt.Sheffield],cost:8},{nodes:[rt.Sheffield,rt.Liverpool],cost:12},{nodes:[rt.Liverpool,rt.Nottingham],cost:15},{nodes:[rt.Manchester,rt.Dumfries],cost:18},{nodes:[rt.Manchester,rt.Newcastleupontyne],cost:15},{nodes:[rt.Newcastleupontyne,rt.Dumfries],cost:12},{nodes:[rt.Dumfries,rt.Edinburgh],cost:12},{nodes:[rt.Edinburgh,rt.Newcastleupontyne],cost:13},{nodes:[rt.Newcastleupontyne,rt.Leeds],cost:13},{nodes:[rt.Dumfries,rt.Glasgow],cost:11},{nodes:[rt.Glasgow,rt.Edinburgh],cost:7},{nodes:[rt.Glasgow,rt.Perthpeairt],cost:10},{nodes:[rt.Perthpeairt,rt.Dundeedundeach],cost:3},{nodes:[rt.Glasgow,rt.Invernessinbhirnis],cost:20},{nodes:[rt.Invernessinbhirnis,rt.Perthpeairt],cost:14},{nodes:[rt.Invernessinbhirnis,rt.Dundeedundeach],cost:14},{nodes:[rt.Invernessinbhirnis,rt.Aberdeenobardheathain],cost:15},{nodes:[rt.Aberdeenobardheathain,rt.Dundeedundeach],cost:10},{nodes:[rt.Limerick,rt.Cork],cost:12},{nodes:[rt.Cork,rt.Waterford],cost:8},{nodes:[rt.Waterford,rt.Limerick],cost:11},{nodes:[rt.Limerick,rt.Galway],cost:10},{nodes:[rt.Galway,rt.Sligo],cost:10},{nodes:[rt.Sligo,rt.Derry],cost:10},{nodes:[rt.Derry,rt.Coleraine],cost:6},{nodes:[rt.Coleraine,rt.Belfast],cost:8},{nodes:[rt.Belfast,rt.Newry],cost:6},{nodes:[rt.Newry,rt.Dublin],cost:10},{nodes:[rt.Dublin,rt.Waterford],cost:13},{nodes:[rt.Galway,rt.Athlone],cost:8},{nodes:[rt.Athlone,rt.Sligo],cost:9},{nodes:[rt.Athlone,rt.Limerick],cost:9},{nodes:[rt.Limerick,rt.Dublin],cost:16},{nodes:[rt.Dublin,rt.Athlone],cost:9},{nodes:[rt.Athlone,rt.Newry],cost:12},{nodes:[rt.Athlone,rt.Omagh],cost:14},{nodes:[rt.Omagh,rt.Newry],cost:8},{nodes:[rt.Omagh,rt.Belfast],cost:10},{nodes:[rt.Belfast,rt.Derry],cost:10},{nodes:[rt.Omagh,rt.Derry],cost:5},{nodes:[rt.Omagh,rt.Sligo],cost:10}],layout:"Portrait",adjustRatio:[1.1,1.1],mapPosition:[10,-75],mapRotation:0,resupply:[[[3,4,3],[3,5,3],[4,6,4],[4,7,5],[6,8,6]],[[2,3,2],[2,4,2],[3,5,3],[4,6,4],[5,7,5]],[[1,2,2],[1,2,2],[2,3,3],[3,3,5],[3,5,5]],[[1,1,1],[1,2,1],[1,3,1],[2,4,2],[2,4,3]]],startingResources:[24,18,12,0],startingSupply:[24,24,24,12],crossIslandSurcharge:20,setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.splice(a.length-2,0,c),r=[Yt(3),Yt(4),Yt(5),Yt(6)],o=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var u=De(a.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.splice(a.length-2,0,f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Two networks: Ireland (Green and Orange regions) and Great Britain (Red, Pink, Yellow, Brown) have no sea connection. A player may run one network on each island. Starting a second network on the other island costs an extra 20 Elektro on top of the normal first-house cost. Nuclear restriction: a player whose network is entirely in the Republic of Ireland (Green region) cannot bid on or auction a nuclear power plant until they build a city in Scotland, Wales, England, or Northern Ireland. Early Step 3: the Step 3 card is placed 3rd from last in the deck (two plants below it). Step 2 begins when a player connects their 7th city (6th for 6 players)."},it=[Ye,kn,sn,ot,bn,Mn,Rn,$n,En,pn,rn,Xn,ln,en,Hn,zn,yn,Wn,nt,at,Ze,On],st=[He,_n,sn,ot,bn,Mn,Rn,$n,En,pn,rn,Xn,ln,en,Hn,zn,yn,Wn,nt,at,Ze,jn];const ct=Math.pow(2,-52),ut=new Uint32Array(512);class lt{static from(e,n=wt,t=xt){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 lt(o)}constructor(e){const n=e.length>>1;if(n>0&&"number"!==typeof e[0])throw new Error("Expected coords to contain numbers.");this.coords=e;const t=Math.max(2*n-5,0);this._triangles=new Uint32Array(3*t),this._halfedges=new Int32Array(3*t),this._hashSize=Math.ceil(Math.sqrt(n)),this._hullPrev=new Uint32Array(n),this._hullNext=new Uint32Array(n),this._hullTri=new Uint32Array(n),this._hullHash=new Int32Array(this._hashSize).fill(-1),this._ids=new Uint32Array(n),this._dists=new Float64Array(n),this.update()}update(){const{coords:e,_hullPrev:n,_hullNext:t,_hullTri:r,_hullHash:o}=this,a=e.length>>1;let i=1/0,s=1/0,c=-1/0,u=-1/0;for(let S=0;S<a;S++){const n=e[2*S],t=e[2*S+1];n<i&&(i=n),t<s&&(s=t),n>c&&(c=n),t>u&&(u=t),this._ids[S]=S}const l=(i+c)/2,d=(s+u)/2;let f,p,h,g=1/0;for(let S=0;S<a;S++){const n=ft(l,d,e[2*S],e[2*S+1]);n<g&&(f=S,g=n)}const y=e[2*f],m=e[2*f+1];g=1/0;for(let S=0;S<a;S++){if(S===f)continue;const n=ft(y,m,e[2*S],e[2*S+1]);n<g&&n>0&&(p=S,g=n)}let v=e[2*p],b=e[2*p+1],w=1/0;for(let S=0;S<a;S++){if(S===f||S===p)continue;const n=yt(y,m,v,b,e[2*S],e[2*S+1]);n<w&&(h=S,w=n)}let x=e[2*h],k=e[2*h+1];if(w===1/0){for(let r=0;r<a;r++)this._dists[r]=e[2*r]-e[0]||e[2*r+1]-e[1];vt(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(ht(y,m,v,b,x,k)){const e=p,n=v,t=b;p=h,v=x,b=k,h=e,x=n,k=t}const _=mt(y,m,v,b,x,k);this._cx=_.x,this._cy=_.y;for(let S=0;S<a;S++)this._dists[S]=ft(e[2*S],e[2*S+1],_.x,_.y);vt(this._ids,this._dists,0,a-1),this._hullStart=f;let P=3;t[f]=n[h]=p,t[p]=n[f]=h,t[h]=n[p]=f,r[f]=0,r[p]=1,r[h]=2,o.fill(-1),o[this._hashKey(y,m)]=f,o[this._hashKey(v,b)]=p,o[this._hashKey(x,k)]=h,this.trianglesLen=0,this._addTriangle(f,p,h,-1,-1,-1);for(let S,M,C=0;C<this._ids.length;C++){const a=this._ids[C],i=e[2*a],s=e[2*a+1];if(C>0&&Math.abs(i-S)<=ct&&Math.abs(s-M)<=ct)continue;if(S=i,M=s,a===f||a===p||a===h)continue;let c=0;for(let e=0,n=this._hashKey(i,s);e<this._hashSize;e++)if(c=o[(n+e)%this._hashSize],-1!==c&&c!==t[c])break;c=n[c];let u,l=c;while(u=t[l],!ht(i,s,e[2*l],e[2*l+1],e[2*u],e[2*u+1]))if(l=u,l===c){l=-1;break}if(-1===l)continue;let d=this._addTriangle(l,a,t[l],-1,-1,r[l]);r[a]=this._legalize(d+2),r[l]=d,P++;let g=t[l];while(u=t[g],ht(i,s,e[2*g],e[2*g+1],e[2*u],e[2*u+1]))d=this._addTriangle(g,a,u,r[a],-1,r[g]),r[a]=this._legalize(d+2),t[g]=g,P--,g=u;if(l===c)while(u=n[l],ht(i,s,e[2*u],e[2*u+1],e[2*l],e[2*l+1]))d=this._addTriangle(u,a,l,-1,r[l],r[u]),this._legalize(d+2),r[u]=d,t[l]=l,P--,l=u;this._hullStart=n[a]=l,t[l]=n[g]=a,t[a]=g,o[this._hashKey(i,s)]=a,o[this._hashKey(e[2*l],e[2*l+1])]=l}this.hull=new Uint32Array(P);for(let S=0,M=this._hullStart;S<P;S++)this.hull[S]=M,M=t[M];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(e,n){return Math.floor(dt(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=ut[--o];continue}const c=i-i%3,u=s+(e+1)%3,l=c+(i+2)%3,d=n[a],f=n[e],p=n[u],h=n[l],g=gt(r[2*d],r[2*d+1],r[2*f],r[2*f+1],r[2*p],r[2*p+1],r[2*h],r[2*h+1]);if(g){n[e]=h,n[i]=d;const r=t[l];if(-1===r){let n=this._hullStart;do{if(this._hullTri[n]===l){this._hullTri[n]=e;break}n=this._hullPrev[n]}while(n!==this._hullStart)}this._link(e,r),this._link(i,t[a]),this._link(a,l);const s=c+(i+1)%3;o<ut.length&&(ut[o++]=s)}else{if(0===o)break;e=ut[--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 dt(e,n){const t=e/(Math.abs(e)+Math.abs(n));return(n>0?3-t:1+t)/4}function ft(e,n,t,r){const o=e-t,a=n-r;return o*o+a*a}function pt(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 ht(e,n,t,r,o,a){const i=pt(o,a,e,n,t,r)||pt(e,n,t,r,o,a)||pt(t,r,o,a,e,n);return i<0}function gt(e,n,t,r,o,a,i,s){const c=e-i,u=n-s,l=t-i,d=r-s,f=o-i,p=a-s,h=c*c+u*u,g=l*l+d*d,y=f*f+p*p;return c*(d*y-g*p)-u*(l*y-g*f)+h*(l*p-d*f)<0}function yt(e,n,t,r,o,a){const i=t-e,s=r-n,c=o-e,u=a-n,l=i*i+s*s,d=c*c+u*u,f=.5/(i*u-s*c),p=(u*l-s*d)*f,h=(i*d-c*l)*f;return p*p+h*h}function mt(e,n,t,r,o,a){const i=t-e,s=r-n,c=o-e,u=a-n,l=i*i+s*s,d=c*c+u*u,f=.5/(i*u-s*c),p=e+(u*l-s*d)*f,h=n+(i*d-c*l)*f;return{x:p,y:h}}function vt(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?(vt(e,n,a,r),vt(e,n,t,i-1)):(vt(e,n,t,i-1),vt(e,n,a,r))}}function bt(e,n,t){const r=e[n];e[n]=e[t],e[t]=r}function wt(e){return e[0]}function xt(e){return e[1]}function kt(e,n,t){var r=_(new Set(e.cities.map((function(e){return e.region})))),o=Array(7*n).fill(0).map((function(e){return{name:"",region:"",x:0,y:0}})),a=[420,490,490],i=[490,560,700],s=a[n-3],c=i[n-3],u=70,l=Math.ceil(s/u),d=Math.ceil(c/u),f=l*d,p=Array(f).fill(-1);e.mapPosition=[100,200],e.layout="Portrait";var h=Array(f).fill(0).map((function(e,n){return n}));o.forEach((function(e,n){var r=h[Math.floor(t()*h.length)],o=Math.floor(r/l),a=r%l;e.x=Math.floor(2*a*u),e.y=Math.floor(o*u),o%2===0&&(e.x+=u);var i=2*t()*Math.PI,s=t()*u/2;e.x+=s*Math.cos(i),e.y+=s*Math.sin(i),h=h.filter((function(e){return e!==r})),p[r]=n}));for(var g=Array(o.length).fill(0).map((function(e){return Array(o.length).fill(0)})),y=Array(o.length).fill(0).map((function(e){return Array(o.length).fill(null)})),m=lt.from(o,(function(e){return e.x}),(function(e){return e.y})),v=0;v<m.triangles.length;v+=3){var b=o[m.triangles[v]],w=o[m.triangles[v+1]],x=o[m.triangles[v+2]],k=g[m.triangles[v]][m.triangles[v+1]],P=k?Math.pow(k,2):Math.pow(b.x-w.x,2)+Math.pow(b.y-w.y,2),S=k||(g[m.triangles[v+1]][m.triangles[v]]=g[m.triangles[v]][m.triangles[v+1]]=Math.sqrt(P));k=g[m.triangles[v]][m.triangles[v+2]];var M=k?Math.pow(k,2):Math.pow(b.x-x.x,2)+Math.pow(b.y-x.y,2),C=k||(g[m.triangles[v+2]][m.triangles[v]]=g[m.triangles[v]][m.triangles[v+2]]=Math.sqrt(M));k=g[m.triangles[v+1]][m.triangles[v+2]];var B=k?Math.pow(k,2):Math.pow(w.x-x.x,2)+Math.pow(w.y-x.y,2),R=k||(g[m.triangles[v+2]][m.triangles[v+1]]=g[m.triangles[v+1]][m.triangles[v+2]]=Math.sqrt(B)),A=Math.acos((P+M-B)/(2*S*C)),L=Math.acos((P+B-M)/(2*S*R)),O=Math.PI-A-L,j=105*Math.PI/180;!1!==y[m.triangles[v]][m.triangles[v+1]]&&O<j?(y[m.triangles[v]][m.triangles[v+1]]=!0,y[m.triangles[v+1]][m.triangles[v]]=!0):(y[m.triangles[v]][m.triangles[v+1]]=!1,y[m.triangles[v+1]][m.triangles[v]]=!1),!1!==y[m.triangles[v]][m.triangles[v+2]]&&L<j?(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<j?(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 G=0,D=1e3,z=0;z<o.length;z++)for(var N=0;N<z;N++)if(y[z][N]){var T=g[z][N];G=Math.max(G,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=_t(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 F=0;F<W;F++)if(y[W][F]){var Y=o[W],H=o[F],V=g[W][F];U.push({nodes:[Y.name,H.name],cost:Math.floor(5*V/u)})}return e.cities=o,e.connections=U,e}function _t(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=Pt(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=Pt(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 Pt(e,n){return(e[0]-n[0])*(e[0]-n[0])+(e[1]-n[1])*(e[1]-n[1])}var St=["limegreen","mediumorchid","red","dodgerblue","yellow","brown"],Mt=[10,7,7,7,6],Ct=[9,6,6,6,5],Bt=[10,7,7,7,6],Rt=[21,17,17,15,14],At=[18,17,17,15,14],Lt=[10,22,33,44,54,64,73,82,90,98,105,112,118,124,129,134,138,142,145,148,150,150],Ot=[3,3,4,5,5];function jt(e,n,t,r){var o,a,i=Object(we["cloneDeep"])(Ve);if("original"==n){i=i.slice(8);var s=i.splice(2,1)[0],c=i.pop();i=De(i,t()+""),2==e||3==e?i=i.slice(8):4==e&&(i=i.slice(4)),i.unshift(s),i.push(c),o=[Yt(3),Yt(4),Yt(5),Yt(6)],a=[Yt(7),Yt(8),Yt(9),Yt(10)]}else{var u=De(i.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),o=l.slice(0,4),a=l.slice(4);var d=u.shift(),f=i.pop();i=De(i,t()+""),2==e?(u=u.slice(1),i=De(i.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),i=De(i.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),i=De(i.slice(3).concat(u),t()+"")):r&&(i=De(i.concat(u),t()+"")),i.unshift(d),i.push(f)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:i}}function Gt(e,n,t,r,o){var a,i,s,u,l,d,f,p,h=n.fastBid,g=void 0!==h&&h,y=n.map,m=void 0===y?"USA":y,v=n.variant,b=void 0===v?"original":v,w=n.showMoney,x=void 0!==w&&w,k=n.useNewRechargedSetup,S=void 0===k||k,M=n.trackTotalSpent,C=void 0===M||M,B=n.randomizeMap,R=void 0!==B&&B;t=null!==(a=t)&&void 0!==a?a:Math.random().toString();var A=Oe()(t),L="original"==b?it.find((function(e){return e.name==m})):st.find((function(e){return e.name==m}));if(!L)throw new Error('Map "'.concat(m,'" not found for variant "').concat(b,'"'));var O,j,G,D=Object(we["cloneDeep"])(L);if(r)G=r,O=G.splice(0,4),j=G.splice(0,4);else if(D.setupDeck){var z=D.setupDeck(e,b,A);O=z.actualMarket,j=z.futureMarket,G=z.powerPlantsDeck}else{var N=jt(e,b,A,S);O=N.actualMarket,j=N.futureMarket,G=N.powerPlantsDeck}var T,E,K,I,U,W,F,Y,H=Object(we["range"])(e).map((function(e){return{id:e,powerPlants:[],coalCapacity:0,coalLeft:0,oilCapacity:0,oilLeft:0,garbageCapacity:0,garbageLeft:0,uraniumCapacity:0,uraniumLeft:0,hybridCapacity:0,hybridLeft:0,money:50,housesLeft:22,cities:[],powerPlantsNotUsed:[],availableMoves:null,lastMove:null,isDropped:!1,isAI:!1,bid:0,passed:!1,skipAuction:!1,citiesPowered:0,resourcesUsed:[],totalIncome:0,totalSpentCities:0,totalSpentConnections:0,totalSpentPlants:0,totalSpentResources:0,usedFreeJump:!1}})),V=H.length-2,J=Object(we["range"])(e),$=J[0];if(D.resupplyNorth&&(U=D.resupplyNorth[0],W=D.resupplyNorth[1],F=D.resupplyNorth[2]),D.resupply?(T=D.resupply[0],E=D.resupply[1],K=D.resupply[2],I=D.resupply[3]):(T=[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],E=[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],K=[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],I=[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]),"Portrait"==D.layout||R){var q="USA"===D.name&&"recharged"===b;D.viewBox=D.viewBox||[1480,1060],D.adjustRatio=D.adjustRatio||[1,1],D.playerOrderPosition=D.playerOrderPosition||[1160,160],D.cityCountPosition=D.cityCountPosition||[0,0],D.powerPlantMarketPosition=D.powerPlantMarketPosition||[745,0],D.actualMarketWidth=D.actualMarketWidth||430,D.mapPosition=D.mapPosition||[0,0],D.buttonsPosition=D.buttonsPosition||[1305,0],D.playerBoardsPosition=D.playerBoardsPosition||[1105,240],D.roundInfoPosition=D.roundInfoPosition||[20,920],D.supplyPosition=D.supplyPosition||[q?480:675,920]}else D.viewBox=D.viewBox||[1465,860],D.adjustRatio=D.adjustRatio||[1,1],D.playerOrderPosition=D.playerOrderPosition||[1160,140],D.cityCountPosition=D.cityCountPosition||[0,0],D.powerPlantMarketPosition=D.powerPlantMarketPosition||[745,0],D.actualMarketWidth=D.actualMarketWidth||430,D.mapPosition=D.mapPosition||[-10,0],D.buttonsPosition=D.buttonsPosition||[1305,0],D.playerBoardsPosition=D.playerBoardsPosition||[1105,200],D.roundInfoPosition=D.roundInfoPosition||[20,590],D.supplyPosition=D.supplyPosition||[0,720];R?Y=kt(D,Ot[V],A):function(){D.cities=D.cities.map((function(e){return c(c({},e),{},{x:e.x*D.adjustRatio[0],y:e.y*D.adjustRatio[1]})}));var e,n=D.cities.filter((function(e,n){return D.cities.findIndex((function(n){return n.region==e.region}))==n})).map((function(e){return e.region})),t=D.connections.map((function(e){return e.nodes.map((function(e){return D.cities.find((function(n){return n.name==e})).region}))})),r=n.map((function(e){return n.filter((function(n){return e!=n&&t.some((function(t){return t.includes(e)&&t.includes(n)}))}))})),o={},a=P(D.cities);try{for(a.s();!(e=a.n()).done;){var i=e.value;i.island&&void 0===o[i.region]&&(o[i.region]=i.island)}}catch(x){a.e(x)}finally{a.f()}var s=new Set;while(s.size!=Math.min(Ot[V],n.length)){var u=n[Math.floor(A()*n.length)],l=0==s.size||r[n.indexOf(u)].some((function(e){return s.has(e)})),d=l;if(!d&&"UK & Ireland"===D.name){var f=new Set(_(s).map((function(e){return o[e]})));f.has(o[u])||(d=!0)}d||"Australia"!==D.name||(d=!0),d&&(s.add(u),"Italy"===D.name&&s.has("red")&&s.has("green")&&s.has("blue")&&s.clear())}var p=Object(we["cloneDeep"])(D);if(p.cities=p.cities.filter((function(e){return s.has(e.region)})),p.connections=p.connections.filter((function(e){return e.nodes.map((function(e){return D.cities.find((function(n){return n.name==e})).region})).every((function(e){return s.has(e)}))})),Y=p,D.regionalPowerPlants){var h,g=P(s);try{for(g.s();!(h=g.n()).done;){var y=h.value,m=D.regionalPowerPlants[y];if(m){var v,b=P(m);try{var w=function(){var e=v.value,n=function(n){var t=n.findIndex((function(n){return n.number===e.number}));-1!==t&&(n[t]=c({},e))};n(O),n(j),n(G)};for(b.s();!(v=b.n()).done;)w()}catch(x){b.e(x)}finally{b.f()}}}}catch(x){g.e(x)}finally{g.f()}}}();var Z=D.startingResources?D.startingResources[0]:24,X=D.startingResources?D.startingResources[1]:18,Q=D.startingResources?D.startingResources[2]:"original"==b?6:9,ee=D.startingResources?D.startingResources[3]:2,ne=D.startingSupply?D.startingSupply[0]:24,te=D.startingSupply?D.startingSupply[1]:24,re=D.startingSupply?D.startingSupply[2]:24,oe=D.startingSupply?D.startingSupply[3]:12,ae=null===(i=D.startingResourcesNorth)||void 0===i?void 0:i[0],ie=null===(s=D.startingResourcesNorth)||void 0===s?void 0:s[1],se=null===(u=D.startingResourcesNorth)||void 0===u?void 0:u[2],ce=ne-Z-(null!==ae&&void 0!==ae?ae:0),ue=te-X-(null!==ie&&void 0!==ie?ie:0),le=re-Q-(null!==se&&void 0!==se?se:0),de=oe-ee,fe=Object(we["cloneDeep"])(null!==(l=D.coalPrices)&&void 0!==l?l:Ae.coal),pe=Object(we["cloneDeep"])(null!==(d=D.oilPrices)&&void 0!==d?d:Ae.oil),he=Object(we["cloneDeep"])(null!==(f=D.garbagePrices)&&void 0!==f?f:Ae.garbage),ge=Object(we["cloneDeep"])(null!==(p=D.uraniumPrices)&&void 0!==p?p:Ae.uranium),ye=D.coalPricesNorth?Object(we["cloneDeep"])(D.coalPricesNorth):void 0,me=D.oilPricesNorth?Object(we["cloneDeep"])(D.oilPricesNorth):void 0,ve=D.garbagePricesNorth?Object(we["cloneDeep"])(D.garbagePricesNorth):void 0,xe="South Africa"==(o||Y).name,ke={map:o||Y,players:H,playerOrder:J,currentPlayers:[$],powerPlantsDeck:G,coalSupply:ce,oilSupply:ue,garbageSupply:le,uraniumSupply:de,coalStorage:xe?0:void 0,coalResupply:T,oilResupply:E,garbageResupply:K,uraniumResupply:I,coalMarket:Z,oilMarket:X,garbageMarket:Q,uraniumMarket:ee,uraniumMineMarket:"Australia"==(o||Y).name?[2,2,2,2,2,2]:void 0,coalPrices:fe,oilPrices:pe,garbagePrices:he,uraniumPrices:ge,coalMarketNorth:ae,oilMarketNorth:ie,garbageMarketNorth:se,coalResupplyNorth:U,oilResupplyNorth:W,garbageResupplyNorth:F,coalPricesNorth:ye,oilPricesNorth:me,garbagePricesNorth:ve,actualMarket:O,futureMarket:j,chosenPowerPlant:void 0,currentBid:void 0,highestBidders:[],auctioningPlayer:void 0,step:1,phase:be.Auction,options:{fastBid:g,map:m,variant:b,showMoney:x,useNewRechargedSetup:S,trackTotalSpent:C},log:[],hiddenLog:[],seed:t,round:1,auctionSkips:0,citiesToStep2:"Baden-Württemberg"==(o||Y).name?Ct[e-2]:"UK & Ireland"==(o||Y).name?Bt[e-2]:Mt[e-2],citiesToEndGame:"South Africa"==(o||Y).name?At[e-2]:"UK & Ireland"==(o||Y).name&&2==e?Math.min(Rt[e-2],(o||Y).cities.length):Rt[e-2],resourceResupply:["[".concat(T[V][0],", ").concat(E[V][0],", ").concat(K[V][0],", ").concat(I[V][0],"]"),"[".concat(T[V][1],", ").concat(E[V][1],", ").concat(K[V][1],", ").concat(I[V][1],"]"),"[".concat(T[V][2],", ").concat(E[V][2],", ").concat(K[V][2],", ").concat(I[V][2],"]")],resourceResupplyNorth:U&&W&&F?["[".concat(U[V][0],", ").concat(W[V][0],", ").concat(F[V][0],"]"),"[".concat(U[V][1],", ").concat(W[V][1],", ").concat(F[V][1],"]"),"[".concat(U[V][2],", ").concat(W[V][2],", ").concat(F[V][2],"]")]:void 0,paymentTable:Lt,variant:b,minimunBid:0,plantDiscountActive:"recharged"==b&&"China"!=(o||Y).name&&"Russia"!=(o||Y).name&&"Baden-Württemberg"!=(o||Y).name,discardSmallestPlant:!1,cardsLeft:G.length,nextCardWeak:"recharged"==b,card39Bought:!1,knownPowerPlantDeck:O.concat(j),knownPowerPlantDeckStep3:[],powerPlantDeckAfterStep3:void 0};return ke.log.push({type:"event",event:"Game Start!"}),"Middle East"==ke.map.name&&Kt(ke),ke.players[$].availableMoves=ze(ke,ke.players[$]),ke}function Dt(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(ir(e),Ue()(e.currentPlayers.includes(t),"It is not your turn!"),Ue()(i,"You are not allowed to run the command "+n.name),o&&n.name==_e.DiscardPowerPlant&&a.powerPlants[a.powerPlants.length-1].number==n.data||Ue()(i.some((function(e){return Object(we["isEqual"])(e,n.data)})),"Wrong argument for the command "+n.name),n.name){case _e.ChoosePowerPlant: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(Vt(a)," chooses Power Plant <b>").concat(n.data,"</b>.")});var c=s[0];Qt(e,c,e.minimunBid),1==e.round&&er(e),(ke(e,c)<=3||2==e.players.length&&4==ke(e,c))&&("China"==e.map.name&&3!=e.step||Et(e),Xt(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(Vt(a)," chooses Power Plant <b>").concat(n.data,"</b> to initiate an auction.")}),e.options.fastBid&&(e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].skipAuction&&!e.players[n].isDropped})));break;case _e.Bid:je(n),e.options.fastBid?(e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," bids $").concat(n.data,"."),pretty:"".concat(Vt(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),sr(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(Vt(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),rr(e));break;case _e.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(Vt(a)," passes.")}),e.phase){case be.Auction:var u;if(void 0==e.chosenPowerPlant)if(a.skipAuction=!0,e.auctionSkips++,1==e.auctionSkips&&"Russia"==e.map.name&&(null===(u=e.actualMarket)||void 0===u?void 0:u.length)>0&&(e.log.push({type:"event",event:"First pass, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),Et(e)),e.players.some((function(e){return!e.skipAuction&&!e.isDropped})))ar(e);else{if(e.auctionSkips==e.players.length&&"Baden-Württemberg"==e.map.name){for(var l=[],d=0;d<2&&e.actualMarket.length>0;d++)l.push(e.actualMarket[0].number),e.actualMarket.shift(),Et(e);e.log.push({type:"event",event:"Everyone passed, removing the two lowest numbered Power Plants (".concat(l.join(", "),").")})}else e.auctionSkips==e.players.length&&"original"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&(e.log.push({type:"event",event:"Everyone passed, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),Et(e));Xt(e)}else if(e.options.fastBid)e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," passes."),pretty:"".concat(Vt(a)," passes.")}),sr(e,a,0);else{a.passed=!0;var f=e.players.filter((function(e){return!e.passed&&!e.skipAuction&&!e.isDropped}));if(1==f.length){var p=f[0];Qt(e,p,p.bid),(ke(e,p)>4||e.players.length>2&&ke(e,p)>3)&&!p.isDropped?nr(e,p.id):("China"==e.map.name&&3!=e.step||Et(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),ar(e,!0)):Xt(e))}else rr(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),nr(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,or(e))):or(e),"India"==e.map.name)while(e.players[e.currentPlayers[0]].passed)or(e);break;case be.Building:if(a.passed=!0,0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var h=Math.max.apply(Math,_(e.players.map((function(e){return e.cities.length}))));if(1==e.step){var g=e.players.reduce((function(e,n){return e+n.cities.length}),0),y=g>=e.map.cities.length;if((h>=e.citiesToStep2||y)&&"Middle East"!=e.map.name){var m=e.actualMarket.shift();if(e.log.push({type:"event",event:"Starting Step 2, Power Plant ".concat(null===m||void 0===m?void 0:m.number," discarded.")}),e.step=2,"Spain & Portugal"==e.map.name&&(e.powerPlantsDeck.find((function(e){return 18==e.number}))||(e.powerPlantsDeck.unshift(Yt(27)),e.powerPlantsDeck.unshift(Yt(22)),e.powerPlantsDeck.unshift(Yt(18)))),"Europe"==e.map.name){var v=[].concat(_(e.actualMarket),_(e.futureMarket));v.sort((function(e,n){return e.number-n.number})),e.actualMarket=v.slice(0,4),e.futureMarket=v.slice(4)}else Et(e)}}h>=e.citiesToEndGame?(e.phase=be.GameEnd,e.currentPlayers=[],$t(e),"India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&e.players.forEach((function(n){var t=e.paymentTable[n.citiesPowered]-3*n.cities.length;n.money+=Math.max(t,0),n.totalIncome+=Math.max(t,0)})),e.uraniumMineMarket&&_(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Ce(e,t);if(r.mines>0&&r.income>0){var o,a=null!==(o=t.name)&&void 0!==o?o:"Player ".concat(t.id);e.log.push({type:"event",event:"".concat(a," sells uranium for ").concat(r.income," Elektro (").concat(r.cities," cities × $").concat(r.price,", ").concat(r.mines," mine(s)).")})}})),e.log.push({type:"event",event:"Game Ended!"})):(e.players.forEach((function(e){e.passed=e.isDropped,e.powerPlantsNotUsed=e.powerPlants.map((function(e){return e.number}))})),e.phase=be.Bureaucracy,e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped})),"India"==e.map.name&&(e.players.forEach((function(n){return n.targetCitiesPowered=qt(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?Wt(e):0==e.futureMarket.length&&(e.step=3,Ut(e)))}else or(e);break;case be.Bureaucracy:a.passed=!0;var b=Math.min(a.cities.length,a.citiesPowered),w=e.paymentTable[b];if("India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&(w-=3*a.cities.length,w=Math.max(w,0)),a.money+=w,e.options.trackTotalSpent&&(a.totalIncome+=w),a.citiesPowered=0,"India"==e.map.name&&(a.targetCitiesPowered=0),0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var x,k,P,S,M,C,B,R;if(e.uraniumMineMarket){_(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Ce(e,t);if(r.mines>0){var o,a=null!==(o=t.name)&&void 0!==o?o:"Player ".concat(t.id);e.log.push({type:"event",event:r.income>0?"".concat(a," sells uranium for ").concat(r.income," Elektro (").concat(r.cities," cities × $").concat(r.price,", ").concat(r.mines," mine(s))."):"".concat(a,"'s uranium mines earn nothing (market full).")})}}));var A=Be(e,e.map.uraniumMineResupply[e.players.length-2][e.step-1]);A>0&&e.log.push({type:"event",event:"Removing ".concat(A," uranium from the mine market (cheapest slots).")})}var L,O,j=(null!==(x=null===(k=e.coalPrices)||void 0===k?void 0:k.length)&&void 0!==x?x:Ae[me.Coal].length)-e.coalMarket,G=(null!==(P=null===(S=e.oilPrices)||void 0===S?void 0:S.length)&&void 0!==P?P:Ae[me.Oil].length)-e.oilMarket,D=(null!==(M=null===(C=e.garbagePrices)||void 0===C?void 0:C.length)&&void 0!==M?M:Ae[me.Garbage].length)-e.garbageMarket,z=(null!==(B=null===(R=e.uraniumPrices)||void 0===R?void 0:R.length)&&void 0!==B?B:Ae[me.Uranium].length)-e.uraniumMarket,N=0,T=0,E=0;if(e.coalResupplyNorth){var K=e.coalPricesNorth.length-e.coalMarketNorth,I=e.oilPricesNorth.length-e.oilMarketNorth,U=e.garbagePricesNorth.length-e.garbageMarketNorth;N=Math.min(e.coalSupply,e.coalResupplyNorth[e.players.length-2][e.step-1],K),e.coalMarketNorth+=N,e.coalSupply-=N,T=Math.min(e.oilSupply,e.oilResupplyNorth[e.players.length-2][e.step-1],I),e.oilMarketNorth+=T,e.oilSupply-=T,E=Math.min(e.garbageSupply,e.garbageResupplyNorth[e.players.length-2][e.step-1],U),e.garbageMarketNorth+=E,e.garbageSupply-=E}if(void 0!==e.coalStorage){var W=Math.min(e.coalResupply[e.players.length-2][e.step-1],j),F=Math.min(e.coalStorage,W),Y=Math.min(e.coalSupply,W-F);L=F+Y,e.coalMarket+=L,e.coalStorage-=F,e.coalSupply-=Y}else L=Math.min(e.coalSupply,e.coalResupply[e.players.length-2][e.step-1],j),e.coalMarket+=L,e.coalSupply-=L;if("Middle East"==e.map.name){0==e.oilMarket&&(e.oilPrices=Ae[me.Oil]),O=e.oilResupply[e.players.length-2][e.step-1];for(var H=0;H<O;H++)e.oilSupply>0?(e.oilMarket++,e.oilSupply--):(e.oilPrices.pop(),e.oilPrices.unshift(1))}else O=Math.min(e.oilSupply,e.oilResupply[e.players.length-2][e.step-1],G),e.oilMarket+=O,e.oilSupply-=O;var V=Math.min(e.garbageSupply,e.garbageResupply[e.players.length-2][e.step-1],D);e.garbageMarket+=V,e.garbageSupply-=V;var J=0;if(("recharged"!=e.options.variant||"Germany"!=e.options.map&&"Italy"!=e.options.map||!e.card39Bought)&&(J=Math.min(e.uraniumSupply,e.uraniumResupply[e.players.length-2][e.step-1],z),e.uraniumMarket+=J,e.uraniumSupply-=J),e.coalResupplyNorth?e.log.push({type:"event",event:"Resupplying resources — North: [".concat(N,", ").concat(T,", ").concat(E,"], South: [").concat(L,", ").concat(O,", ").concat(V,", ").concat(J,"].")}):e.log.push({type:"event",event:"Resupplying resources: [".concat(L,", ").concat(O,", ").concat(V,", ").concat(J,"].")}),"Middle East"==e.map.name&&2==e.step&&e.futureMarket.length>0){var $=e.futureMarket.pop();e.log.push({type:"event",event:"Putting Power Plant ".concat($.number," on the bottom of the deck.")}),e.powerPlantsDeck.push($),Et(e),$=e.futureMarket.length?e.futureMarket.pop():e.actualMarket.pop(),e.log.push({type:"event",event:"Putting Power Plant ".concat($.number," on the bottom of the deck.")}),e.powerPlantsDeck.push($),Et(e)}else if(e.futureMarket.length>0){if("Benelux"==e.map.name&&("original"==e.options.variant||e.discardSmallestPlant)){var q=e.actualMarket[0];e.log.push({type:"event",event:"Removing smallest plant, Power Plant ".concat(q.number,".")}),e.actualMarket.shift(),Et(e),e.discardSmallestPlant=!1}var Z;if("Quebec"==e.map.name){var X=e.futureMarket.filter((function(e){return e.type!=ve.Wind}));if(Z=X.pop(),Z)e.futureMarket=e.futureMarket.filter((function(e){var n;return e.number!=(null===(n=Z)||void 0===n?void 0:n.number)}));else{var Q=e.actualMarket.filter((function(e){return e.type!=ve.Wind}));Z=Q.pop(),Z&&(e.actualMarket=e.actualMarket.filter((function(e){var n;return e.number!=(null===(n=Z)||void 0===n?void 0:n.number)})))}}else Z=e.futureMarket.pop();Z&&(e.log.push({type:"event",event:"Putting Power Plant ".concat(Z.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Z),Et(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(),Et(e));e.round++,"Baden-Württemberg"!=e.map.name&&er(e),e.players.forEach((function(e){e.passed=e.isDropped})),e.auctionSkips=0,e.actualMarket.length>0?(e.phase=be.Auction,0==e.futureMarket.length&&"China"!=e.map.name&&(e.step=3,Ut(e)),e.plantDiscountActive="recharged"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name,nr(e,e.playerOrder[0])):Xt(e)}else e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped}));break}break;case _e.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(Vt(a)," discards Power Plant <b>").concat(n.data,"</b>.")});var ee=a.powerPlants.find((function(e){return e.number==n.data}));if(a.powerPlants=a.powerPlants.filter((function(e){return e.number!=n.data})),Tt(a),n.extra){var ne=[];switch(ee.type){case ve.Coal:e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],ne.push(n.extra[0]+" Coal");break;case ve.Oil:e.oilSupply+=n.extra[0],a.oilLeft-=n.extra[0],ne.push(n.extra[0]+" Oil");break;case ve.Garbage:e.garbageSupply+=n.extra[0],a.garbageLeft-=n.extra[0],ne.push(n.extra[0]+" Garbage");break;case ve.Uranium:e.uraniumSupply+=n.extra[0],a.uraniumLeft-=n.extra[0],ne.push(n.extra[0]+" Uranium");break;case ve.Hybrid:n.extra[0]>0&&(e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],ne.push(n.extra[0]+" Coal")),n.extra[1]>0&&(e.oilSupply+=n.extra[1],a.oilLeft-=n.extra[1],ne.push(n.extra[1]+" Oil"));break}e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discards Power Plant ").concat(n.data," and ").concat(ne.join(", "),"."),pretty:"".concat(Vt(a)," discards Power Plant <b>").concat(n.data,"</b> and ").concat(ne.join(", "),".")}),"China"==e.map.name&&3!=e.step||Et(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?ar(e,!0):Xt(e)}else{var te=[],re=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+re&&te.push(me.Coal),re=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+re&&te.push(me.Oil),a.garbageLeft>a.garbageCapacity&&(e.garbageSupply+=a.garbageLeft-a.garbageCapacity,a.garbageLeft=a.garbageCapacity),a.uraniumLeft>a.uraniumCapacity&&(e.uraniumSupply+=a.uraniumLeft-a.uraniumCapacity,a.uraniumLeft=a.uraniumCapacity),1==te.length&&(te[0]==me.Coal?(e.coalSupply+=a.coalLeft-a.coalCapacity,a.coalLeft=a.coalCapacity):te[0]==me.Oil&&(e.oilSupply+=a.oilLeft-a.oilCapacity,a.oilLeft=a.oilCapacity),te.pop()),0==te.length&&("China"==e.map.name&&3!=e.step||Et(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?ar(e,!0):Xt(e))}break;case _e.DiscardResources:je(n),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discarded a ").concat(n.data,"."),pretty:"".concat(Vt(a)," discarded a <b>").concat(n.data,"</b>.")}),n.data==me.Coal?(a.coalLeft--,e.coalSupply++):n.data==me.Oil&&(a.oilLeft--,e.oilSupply++);var oe=[],ae=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+ae&&oe.push(me.Coal),ae=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+ae&&oe.push(me.Oil),1==oe.length&&(oe[0]==me.Coal?a.coalLeft--:oe[0]==me.Oil&&a.oilLeft--,oe.pop()),0==oe.length&&("China"==e.map.name&&3!=e.step||Et(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?ar(e,!0):Xt(e));break;case _e.BuyResource:je(n),e.chosenResource=n.data.resource,n.data.side&&(e.chosenSide=n.data.side);var ie,se="north"===n.data.side;switch(n.data.resource){case me.Coal:if(se){var ce=e.coalPricesNorth;ie=ce[ce.length-e.coalMarketNorth],a.coalLeft++,e.coalMarketNorth--}else if(n.data.fromStorage)ie=8,a.coalLeft++,e.coalStorage--;else if(0==e.coalMarket)ie=8,a.coalLeft++,e.coalSupply--,n.fromSupply=!0;else{var ue,le=null!==(ue=e.coalPrices)&&void 0!==ue?ue:Ae[me.Coal];ie=le[le.length-e.coalMarket],a.coalLeft++,e.coalMarket--}break;case me.Oil:if(se){var de=e.oilPricesNorth;ie=de[de.length-e.oilMarketNorth],a.oilLeft++,e.oilMarketNorth--}else{var fe,pe=null!==(fe=e.oilPrices)&&void 0!==fe?fe:Ae[me.Oil];ie=pe[pe.length-e.oilMarket],a.oilLeft++,e.oilMarket--}break;case me.Garbage:if(se){var he=e.garbagePricesNorth;ie=he[he.length-e.garbageMarketNorth],a.garbageLeft++,e.garbageMarketNorth--}else{var ge,ye=null!==(ge=e.garbagePrices)&&void 0!==ge?ge:Ae[me.Garbage];if(ie=ye[ye.length-e.garbageMarket],"Central Europe"==e.map.name){var xe=a.cities.filter((function(e){return"Wien"==e.name}));(null===xe||void 0===xe?void 0:xe.length)>0&&ie--}a.garbageLeft++,e.garbageMarket--}break;case me.Uranium:var Pe,Se=null!==(Pe=e.uraniumPrices)&&void 0!==Pe?Pe:Ae[me.Uranium];ie=Se[Se.length-e.uraniumMarket],a.uraniumLeft++,e.uraniumMarket--;break}a.money-=ie,e.options.trackTotalSpent&&(a.totalSpentResources+=ie),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," buys ").concat(n.data.resource," for $").concat(ie,"."),pretty:"".concat(Vt(a)," buys <b>").concat(n.data.resource,'</b> for <span style="color: green">$').concat(ie,"</span>.")});break;case _e.Build:je(n);var Me=!1;if("Japan"===e.map.name&&!a.usedFreeJump&&a.cities.length>=1)if(1===e.round&&e.map.startingCities){var Re=new Set(e.map.startingCities);Re.has(n.data.name)&&(Me=!0)}else n.data.freeJump&&(Me=!0);var Le=e.players.filter((function(e){return e.cities.find((function(e){return e.name==n.data.name}))})).length;if(a.cities.push({name:n.data.name,position:Le}),a.money-=n.data.price,e.options.trackTotalSpent){var Oe=e.map.cities.find((function(e){return e.name==n.data.name}));Oe.singleOccupancy?a.totalSpentConnections+=n.data.price:(a.totalSpentCities+=10+5*Le,a.totalSpentConnections+=n.data.price-(10+5*Le))}e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," builds on ").concat(n.data.name," for $").concat(n.data.price,"."),pretty:"".concat(Vt(a)," builds on <b>").concat(n.data.name,'</b> for <span style="color: green">$').concat(n.data.price,"</span>.")}),Me&&(a.usedFreeJump=!0),"India"==e.map.name&&e.citiesBuiltInCurrentRound++,"original"==e.options.variant&&e.actualMarket.length>0&&a.cities.length>=e.actualMarket[0].number&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name&&(e.actualMarket.shift(),Et(e));break;case _e.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(Vt(a)," uses Power Plant <b>").concat(n.data.powerPlant,"</b>.")});break;case _e.Undo:je(n);var Ge=a.lastMove;switch(null===Ge||void 0===Ge?void 0:Ge.name){case _e.ChoosePowerPlant:39==Ge.data&&(e.card39Bought=!1),Ge.usedPlantDiscount&&(e.plantDiscountActive=!0),e.chosenPowerPlant=void 0,e.auctioningPlayer=void 0,e.currentPlayers=[a.id],e.log.pop();break;case _e.BuyResource:var De,Te="north"===Ge.data.side;switch(Ge.data.resource){case me.Coal:if(Te){a.coalLeft--,e.coalMarketNorth++;var Ee=e.coalPricesNorth;De=Ee[Ee.length-e.coalMarketNorth]}else if(Ge.data.fromStorage)De=8,a.coalLeft--,e.coalStorage++;else if(Ge.fromSupply)De=8,a.coalLeft--,e.coalSupply++;else{var Ke;a.coalLeft--,e.coalMarket++;var Ie=null!==(Ke=e.coalPrices)&&void 0!==Ke?Ke:Ae[me.Coal];De=Ie[Ie.length-e.coalMarket]}break;case me.Oil:if(Te){a.oilLeft--,e.oilMarketNorth++;var We=e.oilPricesNorth;De=We[We.length-e.oilMarketNorth]}else{var Fe;a.oilLeft--,e.oilMarket++;var Ye=null!==(Fe=e.oilPrices)&&void 0!==Fe?Fe:Ae[me.Oil];De=Ye[Ye.length-e.oilMarket]}break;case me.Garbage:if(Te){a.garbageLeft--,e.garbageMarketNorth++;var He=e.garbagePricesNorth;De=He[He.length-e.garbageMarketNorth]}else{var Ve;a.garbageLeft--,e.garbageMarket++;var Je=null!==(Ve=e.garbagePrices)&&void 0!==Ve?Ve:Ae[me.Garbage];if(De=Je[Je.length-e.garbageMarket],"Central Europe"==e.map.name){var $e=a.cities.filter((function(e){return"Wien"==e.name}));(null===$e||void 0===$e?void 0:$e.length)>0&&De--}}break;case me.Uranium:var qe;a.uraniumLeft--,e.uraniumMarket++;var Ze=null!==(qe=e.uraniumPrices)&&void 0!==qe?qe:Ae[me.Uranium];De=Ze[Ze.length-e.uraniumMarket];break}if(a.money+=De,e.options.trackTotalSpent&&(a.totalSpentResources-=De),"India"==e.map.name&&(e.chosenResource=void 0),e.log.pop(),"Korea"==e.map.name&&e.chosenSide){for(var Xe=!1,Qe=e.log.length-1;Qe>=0;Qe--){var en=e.log[Qe];if("move"===en.type){Xe=en.player===t&&en.move.name===_e.BuyResource;break}}Xe||(e.chosenSide=void 0)}break;case _e.Build:a.cities.pop(),a.money+=Ge.data.price;var nn=e.players.filter((function(e){return e.cities.find((function(e){return e.name==Ge.data.name}))})).length;if(e.options.trackTotalSpent&&(a.totalSpentCities-=10+5*nn,a.totalSpentConnections-=Ge.data.price-(10+5*nn)),e.log.pop(),"India"==e.map.name&&e.citiesBuiltInCurrentRound--,"Japan"===e.map.name&&a.usedFreeJump){var tn=Ne(e.map.connections,a.cities.map((function(e){return e.name})));tn<2&&(a.usedFreeJump=!1)}break;case _e.UsePowerPlant:a.powerPlantsNotUsed.push(Ge.data.powerPlant),Ge.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-=Ge.data.citiesPowered;var rn=e.log.slice().reverse(),on=e.log.length-rn.findIndex((function(e){return"move"==e.type&&e.player==a.id}))-1;e.log.splice(on,1);break}}if(a.availableMoves=null,n.name==_e.Undo){var an=e.log.slice().reverse(),sn=an.find((function(e){return"move"==e.type&&e.player==a.id}));a.lastMove=null===sn||void 0===sn?void 0:sn.move}else a.lastMove=n;return e.cardsLeft=e.powerPlantsDeck.length,e.nextCardWeak="recharged"==e.options.variant&&e.cardsLeft>0&&e.powerPlantsDeck[0].number<=15,e.currentPlayers.forEach((function(n){return e.players[n].availableMoves=ze(e,e.players[n])})),e}function zt(e){return e.phase==be.GameEnd}function Nt(e,n){var t=Ht(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=P(a);try{for(i.s();!(o=i.n()).done;){var s=o.value;switch(s.type){case"event":if(s.event.endsWith("was dropped")){var c=+s.event.split(" ")[1];r.players[c].isDropped=!0}break;case"move":Dt(r,s.move,s.player,!0);break}}}catch(u){i.e(u)}finally{i.f()}return r}function Tt(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 Et(e){var n=e.powerPlantsDeck.shift();if(n){if(3==e.step?e.knownPowerPlantDeckStep3&&e.knownPowerPlantDeckStep3.push(n):e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(n),"original"==e.options.variant&&"China"!=e.map.name){var t=Math.max.apply(Math,_(e.players.map((function(e){return e.cities.length}))));while(n.number<=t){var r;if(e.log.push({type:"event",event:"Power plant ".concat(null===(r=n)||void 0===r?void 0:r.number," discarded.")}),!(e.powerPlantsDeck.length>0))break;n=e.powerPlantsDeck.shift(),3==e.step?e.knownPowerPlantDeckStep3&&e.knownPowerPlantDeckStep3.push(n):e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(n)}}var o=!1;if(99==n.number){if(e.powerPlantDeckAfterStep3?e.powerPlantsDeck=e.powerPlantDeckAfterStep3:"China"==e.map.name?e.step=3:e.powerPlantsDeck=De(e.powerPlantsDeck,e.seed),e.phase!=be.Auction)if("Middle East"==e.map.name&&1==e.step){var a=[].concat(_(e.actualMarket),_(e.futureMarket),[n]);a.sort((function(e,n){return e.number-n.number})),e.actualMarket=a.slice(0,4),e.futureMarket=a.slice(4),It(e),o=!0}else{"UK & Ireland"==e.map.name&&1==e.step&&(e.log.push({type:"event",event:"Starting Step 2 (Step 3 card drawn before Step 2 threshold)."}),e.step=2);var i=e.actualMarket.shift();e.log.push({type:"event",event:"Step 3 will begin next phase, Power Plant ".concat(null===i||void 0===i?void 0:i.number," discarded.")});var s=[].concat(_(e.actualMarket),_(e.futureMarket));s.sort((function(e,n){return e.number-n.number})),e.actualMarket=s,e.futureMarket=[]}}else{if(e.plantDiscountActive&&n.number<e.actualMarket[0].number)return e.log.push({type:"event",event:"Power Plant ".concat(n.number," drawn from the deck and discarded.")}),e.plantDiscountActive=!1,void Et(e);e.log.push({type:"event",event:"Power Plant ".concat(n.number," drawn from the deck.")})}if("China"==e.map.name&&n.type!=ve.Step3){var c=[].concat(_(e.actualMarket),[n]);c.sort((function(e,n){return e.number-n.number})),e.actualMarket=c}else if(!o){var u=[].concat(_(e.actualMarket),_(e.futureMarket),[n]);u.sort((function(e,n){return e.number-n.number})),0==e.futureMarket.length?"Russia"==e.map.name?(e.actualMarket=u.slice(0,4),e.futureMarket=[]):(e.actualMarket=u.slice(0,6),e.futureMarket=[]):"Russia"==e.map.name?(e.actualMarket=u.slice(0,3),e.futureMarket=u.slice(3)):"Benelux"==e.map.name&&u[4].type==ve.Wind?(e.actualMarket=u.slice(0,5),e.futureMarket=u.slice(5)):(e.actualMarket=u.slice(0,4),e.futureMarket=u.slice(4)),"Middle East"==e.map.name&&1==e.step&&Kt(e)}}}function Kt(e){var n=e.actualMarket.find((function(e){return e.type==ve.Garbage||e.type==ve.Uranium})),t=function(){Ft(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";Et(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 It(e){var n=e.futureMarket.pop();e.powerPlantsDeck=De(e.powerPlantsDeck,e.seed),e.powerPlantsDeck.push(n),Et(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.")}),Et(e));var r=e.actualMarket.shift();r&&(e.log.push({type:"event",event:"Power Plant ".concat(r.number," discarded to start step 2.")}),Et(e))}function Ut(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 Wt(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;Et(e)}while(2==e.players.length&&e.actualMarket.length<2&&3!=e.step)Et(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)Et(e)}else{var i=Math.max(2,e.players.length-1);while(e.actualMarket.length>i)e.actualMarket.shift()}}function Ft(e,n){e.actualMarket.splice(e.actualMarket.findIndex((function(e){return e.number==n.number})),1)}function Yt(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"India"==n?Je.find((function(n){return n.number==e})):Ve.find((function(n){return n.number==e}))}function Ht(e){var n=Gt(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 Vt(e){return'<span style="background-color: '.concat(St[e.id],'; font-weight: bold; padding: 0 3px;">').concat(e.name,"</span>")}function Jt(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 $t(e){e.players.forEach((function(n){n.citiesPowered=qt(e,n)}))}function qt(e,n){for(var t=n.powerPlants.filter((function(n){return!xe(e,n)})),r=[],o=function(e){var n=[];t.forEach((function(t,r){e&Math.pow(2,r)&&n.push(t)})),r.push(n)},a=0;a<Math.pow(2,t.length);a++)o(a);var i=0;return r.forEach((function(e){if(Zt(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 Zt(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 Xt(e){if("Baden-Württemberg"==e.map.name&&er(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.forEach((function(e){e.skipAuction=!1})),"recharged"==e.options.variant&&(e.plantDiscountActive?(e.plantDiscountActive=!1,e.actualMarket.length>0&&(e.log.push({type:"event",event:"Discarding Power Plant ".concat(e.actualMarket[0].number,".")}),e.actualMarket.shift(),Et(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)It(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,Ut(e),e.actualMarket=[].concat(_(e.actualMarket),_(e.futureMarket)),e.futureMarket=[]}e.phase=be.Resources,nr(e,e.playerOrder[e.players.length-1])}function Qt(e,n,t){n.powerPlants.push(e.chosenPowerPlant),n.money-=t,e.options.trackTotalSpent&&(n.totalSpentPlants+=t),n.skipAuction=!0,Tt(n),e.log.push({type:"event",event:"".concat(n.name," wins the bid and pays ").concat(t,"."),pretty:"".concat(Vt(n),' wins the bid and pays <span style="color: green">$').concat(t,"</span>.")}),Ft(e,e.chosenPowerPlant),e.chosenPowerPlant=e.currentBid=void 0}function er(e){e.playerOrder=Object(we["cloneDeep"])(e.players).sort((function(e,n){var t=e.cities.length,r=n.cities.length;return t==r?Math.max.apply(Math,_(e.powerPlants.map((function(e){return e.number}))))-Math.max.apply(Math,_(n.powerPlants.map((function(e){return e.number})))):t-r})).map((function(e){return e.id})).reverse()}function nr(e,n){e.currentPlayers=[n],e.players[n].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[n].passed=!0,tr(e))}function tr(e){e.phase==be.Auction?void 0==e.chosenPowerPlant?ar(e):rr(e):or(e)}function rr(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,rr(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}))&&rr(e)}function or(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,or(e))}function ar(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}))&&ar(e)}function ir(e){if(!e.coalResupply){var n=it.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 sr(e,n,t){if(n.bid=t,e.currentPlayers=e.currentPlayers.filter((function(e){return e!==n.id})),0===e.currentPlayers.length){var r;(r=e.log).push.apply(r,_(e.hiddenLog)),e.hiddenLog=[];var o=e.players.map((function(e){return e.bid})).filter((function(e){return e>0})),a=e.minimunBid,i=Math.max.apply(Math,_(o)),s=e.players.filter((function(e){return!e.isDropped&&e.bid===i})),c=s[0].id;if(o.length>1){o.splice(o.indexOf(i),1);var u=Math.max.apply(Math,_(o));if(s.length>1)(function(){var n=e.auctioningPlayer;while(!s.find((function(e){return e.id==n})))n=(n+1)%e.players.length;a=u,c=n})();else{var l=e.auctioningPlayer;a=0;while(0==a)s[0].id==l?a=u:e.players[l].bid==u&&(a=u+1),l=(l+1)%e.players.length}}var d=e.players[c];Qt(e,d,a),(ke(e,d)>4||e.players.length>2&&ke(e,d)>3)&&!d.isDropped?nr(e,d.id):("China"==e.map.name&&3!=e.step||Et(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),ar(e,!0)):Xt(e))}}var cr,ur=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)])},lr=[];(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"})(cr||(cr={}));var dr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"targetState",void 0),i(B(e),"pieceId",void 0),i(B(e),"transparent",void 0),i(B(e),"communicator",void 0),i(B(e),"ui",void 0),i(B(e),"pieceType",void 0),i(B(e),"currentX",0),i(B(e),"currentY",0),i(B(e),"mounted",!1),i(B(e),"transitioning",!1),i(B(e),"transitionCount",0),i(B(e),"moving",!1),e}return C(t,[{key:"startTransitioning",value:function(){var e=this;if(!this.transitioning){this.ui.waitingAnimations+=1,this.transitioning=!0,this.transitionCount+=1;var n=this.transitionCount;setTimeout((function(){n===e.transitionCount&&e.onTransitionEnd()}),1e3)}}},{key:"onTargetChanged",value:function(e,n){var t=this;this.targetState.x===this.currentX&&this.targetState.y===this.currentY||(!this.transitioning&&this.mounted&&(!n||e?this.startTransitioning():(this.moving=!0,setTimeout((function(){return t.moving=!1}),800))),this.mounted?setTimeout((function(){t.currentX=t.targetState.x,t.currentY=t.targetState.y})):(this.currentX=this.targetState.x,this.currentY=this.targetState.y))}},{key:"onTransitionEnd",value:function(){this.transitioning&&(this.transitioning=!1,this.ui.waitingAnimations=Math.max(this.ui.waitingAnimations-1,0))}},{key:"elId",get:function(){return this.transitioning||this.moving?"moving":void 0}}]),t}(d.a);N([he({default:function(){return{x:0,y:0,rotate:0}}})],dr.prototype,"targetState",void 0),N([he()],dr.prototype,"pieceId",void 0),N([he()],dr.prototype,"transparent",void 0),N([ie()],dr.prototype,"communicator",void 0),N([ie()],dr.prototype,"ui",void 0),N([ge("dragging"),ge("targetState",{immediate:!0})],dr.prototype,"onTargetChanged",null),dr=N([oe({created:function(){},mounted:function(){this.mounted=!0},beforeDestroy:function(){this.onTransitionEnd()}})],dr);var fr,pr,hr=dr,gr=hr;function yr(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 mr=yr(gr,fr,pr,!1,null,null,null),vr=mr.exports,br=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"owner",void 0),i(B(e),"powerPlant",void 0),i(B(e),"canClick",void 0),i(B(e),"hasDiscount",void 0),e}return C(t,[{key:"getColor",value:function(){var e;switch(null===(e=this.powerPlant)||void 0===e?void 0:e.type){case ve.Coal:return"#8b4513";case ve.Oil:return"#445";case ve.Garbage:return"goldenrod";case ve.Uranium:return"red";case ve.Hybrid:return"url(#hybrid)";case ve.Wind:return"limegreen";case ve.Nuclear:return"dodgerblue";case ve.Step3:return"dodgerblue"}}},{key:"getResourcePath",value:function(){var e;switch(null===(e=this.powerPlant)||void 0===e?void 0:e.type){case ve.Coal:return"M0,3 L7.5,0 L15,3 L15,12 L7.5,15 L0,12Z";case ve.Oil:return"M3,2 A6,3 0 0,1 12,2 L12,12 A6,3 0 0,1 3,12Z";case ve.Garbage:return"M0,3 A7.5,3 0 0,1 15,3 L15,12 A7.5,3 0 0,1 0,12Z";case ve.Uranium:return"M1,2 l4,-2 l6,0 l4,2 l0,11 l-4,2 l-6,0 l-4,-2Z";case ve.Hybrid:return"M0,3 L7.5,0 L15,3 L15,12 L7.5,15 L0,12Z M9,1 A6,3 0 0,1 18,1 L18,10 A6,3 0 0,1 10,10Z";case ve.Wind:return"";case ve.Nuclear:return"";case ve.Step3:return""}}}]),t}(q(vr));N([he()],br.prototype,"owner",void 0),N([he()],br.prototype,"powerPlant",void 0),N([he()],br.prototype,"canClick",void 0),N([he({default:!1})],br.prototype,"hasDiscount",void 0),br=N([oe({created:function(){this.pieceType=cr.Card}})],br);var wr=br,xr=wr,kr=(t("11ac"),yr(xr,ur,lr,!1,null,null,null)),_r=kr.exports,Pr=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")])])},Sr=[],Mr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(vr));N([he()],Mr.prototype,"canClick",void 0),N([he({default:.08})],Mr.prototype,"scale",void 0),Mr=N([oe({created:function(){this.pieceType=cr.Coal}})],Mr);var Cr=Mr,Br=Cr,Rr=yr(Br,Pr,Sr,!1,null,null,null),Ar=Rr.exports,Lr=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)])},Or=[],jr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(vr));N([he()],jr.prototype,"canClick",void 0),N([he({default:1})],jr.prototype,"scale",void 0),jr=N([oe({created:function(){this.pieceType=cr.Garbage}})],jr);var Gr=jr,Dr=Gr,zr=yr(Dr,Lr,Or,!1,null,null,null),Nr=zr.exports,Tr=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:["piece"],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale(0.035)"}},[t("path",{attrs:{d:"M187.698 263.636V456.017L3 341.204V169.522L80.8579 108.141L187.698 263.636Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361V300.164L187.698 456.017V263.636L395.724 136.361Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361L187.698 263.636L80.8579 108.141L304.771 4L395.724 136.361Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("title",[e._v(e._s(e.ownerName)+"'s House")])])},Er=[],Kr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"player",void 0),i(B(e),"color",void 0),i(B(e),"owner",void 0),i(B(e),"ownerName",void 0),e}return t}(q(vr));N([se()],Kr.prototype,"player",void 0),N([he()],Kr.prototype,"color",void 0),N([he()],Kr.prototype,"owner",void 0),N([he()],Kr.prototype,"ownerName",void 0),Kr=N([oe({created:function(){this.pieceType=cr.House}})],Kr);var Ir=Kr,Ur=Ir,Wr=yr(Ur,Tr,Er,!1,null,null,null),Fr=Wr.exports,Yr=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")])])},Hr=[],Vr=function(e){A(t,e);var n=z(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(q(vr));Vr=N([oe({created:function(){this.pieceType=cr.Hybrid}})],Vr);var Jr=Vr,$r=Jr,qr=yr($r,Yr,Hr,!1,null,null,null),Zr=(qr.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)])}),Xr=[],Qr=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(vr));N([he()],Qr.prototype,"canClick",void 0),N([he({default:1})],Qr.prototype,"scale",void 0),Qr=N([oe({created:function(){this.pieceType=cr.Oil}})],Qr);var eo=Qr,no=eo,to=yr(no,Zr,Xr,!1,null,null,null),ro=to.exports,oo=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")])])},ao=[],io=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),e}return t}(q(vr));N([he()],io.prototype,"canClick",void 0),io=N([oe({created:function(){this.pieceType=cr.Uranium}})],io);var so=io,co=so,uo=yr(co,oo,ao,!1,null,null,null),lo=uo.exports,fo=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))])])},po=[],ho=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"text",void 0),i(B(e),"width",void 0),i(B(e),"enabled",void 0),e}return C(t,[{key:"getText",value:function(){var e;return this.text.length>15?null===(e=this.text)||void 0===e?void 0:e.substring(0,12).concat("..."):this.text}}]),t}(d.a);N([he()],ho.prototype,"text",void 0),N([he()],ho.prototype,"width",void 0),N([he({default:!0})],ho.prototype,"enabled",void 0),ho=N([oe],ho);var go=ho,yo=go,mo=yr(yo,fo,po,!1,null,null,null),vo=mo.exports,bo=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")])])},wo=[],xo=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"isOn",void 0),e}return t}(d.a);N([he()],xo.prototype,"isOn",void 0),xo=N([oe],xo);var ko=xo,_o=ko,Po=yr(_o,bo,wo,!1,null,null,null),So=Po.exports,Mo=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")])])},Co=[],Bo=function(e){A(t,e);var n=z(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(d.a);Bo=N([oe],Bo);var Ro=Bo,Ao=Ro,Lo=yr(Ao,Mo,Co,!1,null,null,null),Oo=Lo.exports,jo=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")])])},Go=[],Do=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"enabled",void 0),i(B(e),"highlightButton",void 0),i(B(e),"text",void 0),e}return t}(d.a);N([he()],Do.prototype,"enabled",void 0),N([he()],Do.prototype,"highlightButton",void 0),N([he()],Do.prototype,"text",void 0),Do=N([oe],Do);var zo=Do,No=zo,To=yr(No,jo,Go,!1,null,null,null),Eo=To.exports,Ko=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")])])},Io=[],Uo=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"isOn",void 0),e}return t}(d.a);N([he()],Uo.prototype,"isOn",void 0),Uo=N([oe],Uo);var Wo=Uo,Fo=Wo,Yo=yr(Fo,Ko,Io,!1,null,null,null),Ho=Yo.exports,Vo=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")])])},Jo=[],$o=function(e){A(t,e);var n=z(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(d.a);$o=N([oe],$o);var qo=$o,Zo=qo,Xo=yr(Zo,Vo,Jo,!1,null,null,null),Qo=Xo.exports,ea=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")])])},na=[],ta=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"enabled",void 0),i(B(e),"highlightButton",void 0),e}return t}(d.a);N([he()],ta.prototype,"enabled",void 0),N([he()],ta.prototype,"highlightButton",void 0),ta=N([oe],ta);var ra=ta,oa=ra,aa=yr(oa,ea,na,!1,null,null,null),ia=aa.exports,sa=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)},ca=[],ua=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"color",void 0),i(B(e),"avatar",void 0),i(B(e),"player",void 0),i(B(e),"isCurrentPlayer",void 0),i(B(e),"owner",void 0),i(B(e),"ended",void 0),i(B(e),"isPlayer",void 0),i(B(e),"ranking",void 0),i(B(e),"showMoney",void 0),i(B(e),"showBid",void 0),i(B(e),"phase",void 0),i(B(e),"isAustralia",void 0),i(B(e),"preferences",void 0),i(B(e),"powerPlantClicked",void 0),e}return C(t,[{key:"cardX",value:function(e){var n=this.player.powerPlants.length;return n<5?20+80*e:5+Math.min(70,280/(n-1))*e}},{key:"isMine",value:function(e){return!0===this.isAustralia&&e.type===ve.Uranium}},{key:"getPlayerName",value:function(){var e="";if(this.isCurrentPlayer&&(e+="• "),e+=this.player.name,this.ended)switch(this.ranking){case 1:e+=" (1st)";break;case 2:e+=" (2nd)";break;case 3:e+=" (3rd)";break;case 4:case 5:case 6:e+=" (".concat(this.ranking,"th)");break}else this.player.skipAuction?e+=" (Skipping)":this.player.passed?e+=" (Passed)":this.player.bid&&!this.isCurrentPlayer&&this.showBid&&(e+=" (Bid: $"+this.player.bid+")");return e}},{key:"canUse",value:function(e){var n,t;if(!this.isCurrentPlayer)return!1;if(null!==(n=this.player.availableMoves)&&void 0!==n&&n[_e.DiscardPowerPlant])return e.number!==this.player.powerPlants[this.player.powerPlants.length-1].number;if(null===(t=this.player.availableMoves)||void 0===t||!t[_e.UsePowerPlant])return!1;if(!this.player.powerPlantsNotUsed.includes(e.number)||this.player.resourcesUsed.length>0)return!1;switch(e.type){case ve.Coal:return this.player.coalLeft>=e.cost;case ve.Oil:return this.player.oilLeft>=e.cost;case ve.Garbage:return this.player.garbageLeft>=e.cost;case ve.Uranium:return this.player.uraniumLeft>=e.cost;case ve.Hybrid:return this.player.coalLeft+this.player.oilLeft>=e.cost;case ve.Wind:case ve.Nuclear:return this.player.coalLeft+this.player.oilLeft>=e.cost}}},{key:"powerPlantClick",value:function(e){this.phase==be.Bureaucracy&&e.type==ve.Hybrid?0==this.player.coalLeft||0==this.player.oilLeft||this.player.coalLeft+this.player.oilLeft==e.cost?(this.player.resourcesUsed=Array(Math.min(e.cost,this.player.coalLeft)).fill(me.Coal).concat(Array(e.cost-Math.min(e.cost,this.player.coalLeft)).fill(me.Oil)),this.$emit("powerPlantClick",e)):(this.powerPlantClicked=e,this.player.resourcesUsed=Array(e.cost).fill(null)):this.$emit("powerPlantClick",e)}},{key:"canClickResources",get:function(){return this.player.availableMoves&&this.player.availableMoves["DiscardResources"]||this.player.resourcesUsed.some((function(e){return null==e}))}},{key:"clickResource",value:function(e){if(this.player.availableMoves&&this.player.availableMoves["DiscardResources"])this.$emit("discardResource",e);else if(this.player.resourcesUsed.some((function(e){return null==e}))){var n=this.player.resourcesUsed.findIndex((function(e){return null==e}));this.player.resourcesUsed[n]=e,"coal"==e?this.player.coalLeft--:"oil"==e&&this.player.oilLeft--,this.player.resourcesUsed.some((function(e){return null==e}))||this.$emit("powerPlantClick",this.powerPlantClicked)}}}]),t}(d.a);N([he()],ua.prototype,"color",void 0),N([he()],ua.prototype,"avatar",void 0),N([he()],ua.prototype,"player",void 0),N([he()],ua.prototype,"isCurrentPlayer",void 0),N([he()],ua.prototype,"owner",void 0),N([he()],ua.prototype,"ended",void 0),N([he()],ua.prototype,"isPlayer",void 0),N([he()],ua.prototype,"ranking",void 0),N([he()],ua.prototype,"showMoney",void 0),N([he()],ua.prototype,"showBid",void 0),N([he()],ua.prototype,"phase",void 0),N([he()],ua.prototype,"isAustralia",void 0),N([ie()],ua.prototype,"preferences",void 0),ua=N([oe({components:{Coal:Ar,Oil:ro,Garbage:Nr,Uranium:lo,Card:_r}})],ua);var la=ua,da=la,fa=yr(da,sa,ca,!1,null,null,null),pa=fa.exports,ha=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")])])])},ga=[],ya=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"minValue",void 0),i(B(e),"maxValue",void 0),i(B(e),"value",0),e}return C(t,[{key:"add",value:function(){this.value=Math.min(this.maxValue,this.value+1)}},{key:"sub",value:function(){this.value=Math.max(this.minValue,this.value-1)}},{key:"bid",value:function(){this.$emit("bid",this.value)}}]),t}(d.a);N([he()],ya.prototype,"minValue",void 0),N([he()],ya.prototype,"maxValue",void 0),ya=N([oe({created:function(){this.value=this.minValue}})],ya);var ma=ya,va=ma,ba=(t("85cf"),yr(va,ha,ga,!1,null,null,null)),wa=ba.exports,xa=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)},ka=[],_a=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"cardsLeft",void 0),i(B(e),"nextCardWeak",void 0),i(B(e),"plantDiscountActive",void 0),i(B(e),"canBid",void 0),i(B(e),"canChoose",void 0),i(B(e),"chooseablePowerPlants",void 0),i(B(e),"minBid",void 0),i(B(e),"maxBid",void 0),i(B(e),"preferences",void 0),i(B(e),"actualMarketCards",[]),i(B(e),"futureMarketCards",[]),i(B(e),"chosenPowerPlant",null),i(B(e),"actualMarketWidth",430),e}return C(t,[{key:"createPieces",value:function(e){var n,t=this;this.actualMarketWidth=null!==(n=e.map.actualMarketWidth)&&void 0!==n?n:430,this.actualMarketCards=[],e.actualMarket.forEach((function(n,r){var o,a;e.futureMarket.length>0?n.number!=(null===(o=e.chosenPowerPlant)||void 0===o?void 0:o.number)&&t.actualMarketCards.push({id:"actual_"+r,x:165+65*r,y:24,powerPlant:n}):n.number!=(null===(a=e.chosenPowerPlant)||void 0===a?void 0:a.number)&&t.actualMarketCards.push({id:"actual_"+r,x:165+r%3*65,y:r<3?24:80,powerPlant:n})})),this.futureMarketCards=[],e.futureMarket.forEach((function(n,r){var o;n.number!=(null===(o=e.chosenPowerPlant)||void 0===o?void 0:o.number)&&t.futureMarketCards.push({id:"future_"+r,x:165+r%4*65,y:90+50*Math.floor(r/4),powerPlant:n})})),e.chosenPowerPlant?this.chosenPowerPlant={id:"chosen",x:this.actualMarketWidth+30,y:30,powerPlant:e.chosenPowerPlant}:this.chosenPowerPlant=null}},{key:"choosePowerPlant",value:function(e){this.$emit("choosePowerPlant",e)}},{key:"bid",value:function(e){this.$emit("bid",e)}}]),t}(d.a);N([he()],_a.prototype,"cardsLeft",void 0),N([he()],_a.prototype,"nextCardWeak",void 0),N([he()],_a.prototype,"plantDiscountActive",void 0),N([he()],_a.prototype,"canBid",void 0),N([he()],_a.prototype,"canChoose",void 0),N([he()],_a.prototype,"chooseablePowerPlants",void 0),N([he()],_a.prototype,"minBid",void 0),N([he()],_a.prototype,"maxBid",void 0),N([ie()],_a.prototype,"preferences",void 0),_a=N([oe({components:{Card:_r,Calculator:wa}})],_a);var Pa=_a,Sa=Pa,Ma=yr(Sa,xa,ka,!1,null,null,null),Ca=Ma.exports,Ba=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)},Ra=[],Aa=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"playerColors",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[],e.playerOrder.forEach((function(t,r){n.houses.push({id:t+"_order",x:20+30*r,y:22,color:n.playerColors[t],owner:t,ownerName:e.players[t].name})}))}}]),t}(d.a);N([he()],Aa.prototype,"playerColors",void 0),Aa=N([oe({components:{House:Fr}})],Aa);var La=Aa,Oa=La,ja=yr(Oa,Ba,Ra,!1,null,null,null),Ga=ja.exports,Da=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)},za=[],Na=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"citiesToStep2",void 0),i(B(e),"citiesToEndGame",void 0),i(B(e),"playerColors",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[];for(var t=[],r=0;r<22;r++)t[r]=[];e.players.forEach((function(e,n){return t[e.cities.length].push(n)})),e.players.forEach((function(e,r){var o=(1==t[e.cities.length].length?23:20)+33*e.cities.length;o+=t[e.cities.length].indexOf(r)%2*6,n.houses.push({id:r+"_cityCount",x:o,y:15+30*t[e.cities.length].indexOf(r)/t[e.cities.length].length,color:n.playerColors[r],owner:r})}))}}]),t}(d.a);N([he()],Na.prototype,"citiesToStep2",void 0),N([he()],Na.prototype,"citiesToEndGame",void 0),N([he()],Na.prototype,"playerColors",void 0),Na=N([oe({components:{House:Fr}})],Na);var Ta=Na,Ea=Ta,Ka=yr(Ea,Da,za,!1,null,null,null),Ia=Ka.exports,Ua=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[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))])]),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))])]),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[t("circle",{key:n.name+"_circle2",class:[{canClick:e.canBuild(n)}],attrs:{r:"20",cx:n.x,cy:n.y,fill:"gray"},on:{click:function(t){e.canBuild(n)&&e.build(n)}}},[t("title",[e._v(e._s(n.name))])])]})),e._l(e.connections,(function(n){return[n.cost>0?t("circle",{key:n.nodes[0]+"_"+n.nodes[1]+"_border",attrs:{stroke:"black",r:10+10*n.cost/28,cx:(e.getX1(n)+e.getX2(n))/2,cy:(e.getY1(n)+e.getY2(n))/2,fill:n.cost>15?"gold":n.cost>10?"lightgray":"tan"}}):e._e(),n.cost>0?t("circle",{key:n.nodes[0]+"_"+n.nodes[1]+"_circle",attrs:{r:6+10*n.cost/28,cx:(e.getX1(n)+e.getX2(n))/2,cy:(e.getY1(n)+e.getY2(n))/2,fill:"gray",stroke:"black"}}):e._e(),n.cost>0?t("text",{key:n.nodes[0]+"_"+n.nodes[1]+"_text",style:"font-size: "+(12+6*n.cost/28)+"px",attrs:{"text-anchor":"middle",fill:"black",x:(e.getX1(n)+e.getX2(n))/2,y:(e.getY1(n)+e.getY2(n))/2,transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(e.getX1(n)+e.getX2(n))/2+", "+(e.getY1(n)+e.getY2(n))/2+")":void 0}},[e._v(" "+e._s(n.cost)+" ")]):e._e()]})),e._l(e.houses,(function(e){return[t("House",{key:e.id,attrs:{pieceId:e.id,targetState:{x:e.x,y:e.y},owner:e.owner,ownerName:e.ownerName,color:e.color}})]})),e._l(e.cities,(function(n){return[n.slotCosts&&2===n.slotCosts.length&&10===n.slotCosts[0]?[t("line",{key:n.name+"_x1",attrs:{x1:n.x+10,y1:n.y+10,x2:n.x+19,y2:n.y+19,stroke:"black","stroke-width":"3","stroke-linecap":"round"}}),t("line",{key:n.name+"_x2",attrs:{x1:n.x+19,y1:n.y+10,x2:n.x+10,y2:n.y+19,stroke:"black","stroke-width":"3","stroke-linecap":"round"}})]:e._e(),n.slotCosts&&3===n.slotCosts.length&&10===n.slotCosts[0]&&10===n.slotCosts[1]?t("text",{key:n.name+"_10label",attrs:{x:n.x-20,y:n.y+19,"font-size":"17","font-weight":"bold",fill:"black","text-anchor":"middle",transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(n.x-20)+", "+(n.y+19)+")":void 0}},[e._v("10")]):e._e(),n.slotCosts&&2===n.slotCosts.length&&15===n.slotCosts[0]?[t("line",{key:n.name+"_x1",attrs:{x1:n.x-5,y1:n.y-21,x2:n.x+5,y2:n.y-11,stroke:"black","stroke-width":"3","stroke-linecap":"round"}}),t("line",{key:n.name+"_x2",attrs:{x1:n.x+5,y1:n.y-21,x2:n.x-5,y2:n.y-11,stroke:"black","stroke-width":"3","stroke-linecap":"round"}})]:e._e()]})),e.preferences.disableHelp?e._e():[e._l(e.cities,(function(n){return[e.canBuild(n)?t("circle",{key:n.name+"_circleHelp",class:[{canClick:e.canBuild(n)}],attrs:{r:"18",cx:n.x,cy:n.y,fill:"none",stroke:"blue","stroke-width":"4px"}}):e._e()]}))]],2)},Wa=[],Fa=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"polygons",void 0),i(B(e),"cities",void 0),i(B(e),"connections",void 0),i(B(e),"playerColors",void 0),i(B(e),"buildableCities",void 0),i(B(e),"devBackdrop",void 0),i(B(e),"mapRotation",void 0),i(B(e),"preferences",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[],e.players.forEach((function(t,r){t.cities.forEach((function(t){var o,a,i,s=e.map.cities.find((function(e){return e.name==t.name})),c=2===(null===(o=s.slotCosts)||void 0===o?void 0:o.length)&&15===s.slotCosts[0];c?0==t.position?(a=-15,i=-4):(a=1,i=-4):0==t.position?(a=-6,i=-18):1==t.position?(a=-15,i=-4):(a=1,i=-4),n.houses.push({id:r+"_"+t.name,x:s.x+a,y:s.y+i,color:n.playerColors[r],owner:r})}))}))}},{key:"getX1",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[0]}));return n.x}},{key:"getY1",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[0]}));return n.y}},{key:"getX2",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[1]}));return n.x}},{key:"getY2",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[1]}));return n.y}},{key:"canBuild",value:function(e){return!!this.buildableCities.find((function(n){return n==e.name}))}},{key:"build",value:function(e){this.$emit("build",e)}},{key:"onPickCoord",value:function(e){if(this.devBackdrop){var n=e.currentTarget,t=n.getScreenCTM();if(t){var r=new DOMPoint(e.clientX,e.clientY).matrixTransform(t.inverse());console.log("{ name: Cities.TODO, region: Regions.TODO, x: ".concat(Math.round(r.x),", y: ").concat(Math.round(r.y)," },"))}}}}]),t}(d.a);N([he()],Fa.prototype,"polygons",void 0),N([he()],Fa.prototype,"cities",void 0),N([he()],Fa.prototype,"connections",void 0),N([he()],Fa.prototype,"playerColors",void 0),N([he()],Fa.prototype,"buildableCities",void 0),N([he()],Fa.prototype,"devBackdrop",void 0),N([he({default:0})],Fa.prototype,"mapRotation",void 0),N([ie()],Fa.prototype,"preferences",void 0),Fa=N([oe({components:{House:Fr}})],Fa);var Ya=Fa,Ha=Ya,Va=yr(Ha,Ua,Wa,!1,null,null,null),Ja=Va.exports,$a=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._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._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._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)},qa=[],Za=t("bcba"),Xa=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"resourceResupply",void 0),i(B(e),"resourceResupplyNorth",void 0),i(B(e),"isUsaRecharged",void 0),i(B(e),"isMiddleEast",void 0),i(B(e),"isIndiaResourceMarket",void 0),i(B(e),"availableSurplusOil",void 0),i(B(e),"buyableResources",void 0),i(B(e),"coalStorage",void 0),i(B(e),"preferences",void 0),i(B(e),"coals",[]),i(B(e),"oils",[]),i(B(e),"garbages",[]),i(B(e),"uraniums",[]),i(B(e),"isKorea",!1),i(B(e),"isNinePriceMarket",!1),i(B(e),"isAustraliaMarket",!1),i(B(e),"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=this;if(e){this.isAustraliaMarket="Australia"===(null===(n=e.map)||void 0===n?void 0:n.name),this.co2TaxActive=this.isAustraliaMarket&&e.step>=3;var a,i,s,c,u,l=void 0!==e.coalMarketNorth;if(this.isKorea=l,l){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 d=e.uraniumPrices;return d.forEach((function(n,t){var r,a;if(n<=8)r=60+85*(n-1),a=85;else{var i=10===n||14===n?710:750,s=10===n||12===n?52:91;r=i,a=s}o.uraniums.push({id:"uranium_".concat(t),x:r,y:a,transparent:t<d.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===(t=e.map)||void 0===t?void 0:t.name)||"North America"===(null===(r=e.map)||void 0===r?void 0:r.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.isNinePriceMarket=!1,this.coalsNorth=[],this.oilsNorth=[],this.garbagesNorth=[],this.coals=[],"India"==(null===(a=e.map)||void 0===a?void 0:a.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++,o.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){o.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===(i=e.map)||void 0===i?void 0:i.name)&&Object(Za["range"])(e.coalSupply).forEach((function(e){o.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(Za["range"])(e.coalStorage).forEach((function(e){o.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===(s=e.map)||void 0===s?void 0:s.name)){var f=e.oilPrices.filter((function(e){return e>1})).length,p=e.oilPrices.filter((function(e){return 1==e})).length,h=Math.min(f,e.oilMarket);Array(f).fill(0).forEach((function(e,n){var t=n+(p-3);o.oils.push({id:"normal_oil_"+t,x:651-16*t-37*Math.floor(t/3),y:70,transparent:n>=h})}))}else Array(24).fill(0).forEach((function(n,t){o.oils.push({id:"oil_"+t,x:651-16*t-37*Math.floor(t/3),y:70,transparent:t>=e.oilMarket})}));this.garbages=[],"India"==(null===(c=e.map)||void 0===c?void 0:c.name)?Array(24).fill(0).forEach((function(n,t){var r=t+8;o.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){o.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===(u=e.map)||void 0===u?void 0:u.name)?Array(8).fill(0).forEach((function(n,t){o.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?o.uraniums.push({id:"uranium_"+t,x:750,y:91,transparent:t>=e.uraniumMarket}):1==t?o.uraniums.push({id:"uranium_"+t,x:710,y:91,transparent:t>=e.uraniumMarket}):2==t?o.uraniums.push({id:"uranium_"+t,x:750,y:52,transparent:t>=e.uraniumMarket}):3==t?o.uraniums.push({id:"uranium_"+t,x:710,y:52,transparent:t>=e.uraniumMarket}):o.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);N([he()],Xa.prototype,"resourceResupply",void 0),N([he()],Xa.prototype,"resourceResupplyNorth",void 0),N([he()],Xa.prototype,"isUsaRecharged",void 0),N([he()],Xa.prototype,"isMiddleEast",void 0),N([he()],Xa.prototype,"isIndiaResourceMarket",void 0),N([he()],Xa.prototype,"availableSurplusOil",void 0),N([he()],Xa.prototype,"buyableResources",void 0),N([he()],Xa.prototype,"coalStorage",void 0),N([ie()],Xa.prototype,"preferences",void 0),Xa=N([oe({components:{Coal:Ar,Oil:ro,Garbage:Nr,Uranium:lo}})],Xa);var Qa=Xa,ei=Qa,ni=yr(ei,$a,qa,!1,null,null,null),ti=ni.exports,ri=function(e){A(t,e);var n=z(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"state",void 0),i(B(e),"player",void 0),i(B(e),"emitter",void 0),i(B(e),"avatars",void 0),i(B(e),"preferences",void 0),i(B(e),"ui",{waitingAnimations:0}),i(B(e),"paused",!1),i(B(e),"communicator",new u["EventEmitter"]),i(B(e),"G",null),i(B(e),"_futureState",void 0),i(B(e),"playerColors",["limegreen","mediumorchid","red","dodgerblue","yellow","brown"]),i(B(e),"animationQueue",[]),i(B(e),"logVisible",!1),i(B(e),"endScoreVisible",!1),i(B(e),"spendingVisible",!1),i(B(e),"rulesVisible",!1),i(B(e),"totalBid",0),i(B(e),"confirmMessage",""),i(B(e),"confirmVisible",!1),i(B(e),"discardedPowerPlant",null),i(B(e),"discardVisible",!1),i(B(e),"resourcesToDiscard",[]),i(B(e),"freeJumpCity",null),i(B(e),"freeJumpNormalPrice",null),i(B(e),"freeJumpSlotPrice",0),i(B(e),"freeJumpVisible",!1),i(B(e),"disablePass",!1),i(B(e),"powerPlantMarket",void 0),i(B(e),"playerOrder",void 0),i(B(e),"cityCount",void 0),i(B(e),"map",void 0),i(B(e),"resources",void 0),e}return C(t,[{key:"onStateChanged",value:function(e){this.replaceState(e)}},{key:"replaceState",value:function(e){var n,t,r,o=this,a=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(a&&(this._futureState=e),null!=this.player&&this.G&&this.G.players&&this.G.players[this.player].resourcesUsed.some((function(e){return null==e}))&&(r={coalLeft:this.G.players[this.player].coalLeft,oilLeft:this.G.players[this.player].oilLeft,resourcesUsed:this.G.players[this.player].resourcesUsed}),this.G=JSON.parse(JSON.stringify(e)),r&&Object.assign(this.G.players[this.player],r),this.G&&this.$nextTick((function(){o.powerPlantMarket.createPieces(o.G),o.playerOrder.createPieces(o.G),o.cityCount.createPieces(o.G),o.map.createPieces(o.G),o.resources.createPieces(o.G)})),this.preferences.sound&&"move"==(null===(n=this.G)||void 0===n?void 0:n.log[(null===(t=this.G)||void 0===t?void 0:t.log.length)-1].type)){var i,s,c=null===(i=this.G)||void 0===i?void 0:i.log[(null===(s=this.G)||void 0===s?void 0:s.log.length)-1].move;c.name==_e.Pass&&this.G.currentPlayers.includes(this.player)?document.getElementById("notification").cloneNode(!0).play():c.name==_e.Build&&setTimeout((function(){document.getElementById("piece-drop").cloneNode(!0).play()}),800)}}},{key:"updateUI",value:function(){var e=this;if(!(this.ui.waitingAnimations>0))return this.animationQueue.length>0?(this.animationQueue.shift()(),void setTimeout((function(){return e.updateUI()}))):void 0}},{key:"checkPass",value:function(){if(this.G&&null!=this.player&&!this.G.chosenPowerPlant){var e=this.G.players[this.player];if(e&&e.availableMoves&&Object.keys(e.availableMoves).length>1){if(this.G.phase==be.Bureaucracy&&e.powerPlantsNotUsed.length>0&&Object.keys(e.availableMoves).includes("UsePowerPlant"))return this.confirmMessage="Are you sure you want to pass? You have unused power plants!",void(this.confirmVisible=!0);if(this.G.phase==be.Resources&&!this.canPowerAllPlants(e))return this.confirmMessage="Are you sure you want to skip buying resources without enough to power all your plants?",void(this.confirmVisible=!0);if(this.G.phase!=be.Bureaucracy||e.powerPlantsNotUsed.length==e.powerPlants.length){var n=this.G.log[this.G.log.length-1];if(n.player!=this.player||n.move.name==_e.Pass){switch(this.G.phase){case be.Auction:this.confirmMessage="Are you sure you want to skip auctions?";break;case be.Resources:this.confirmMessage="Are you sure you want to skip buying resources?";break;case be.Building:this.confirmMessage="Are you sure you want to skip building?";break;case be.Bureaucracy:this.confirmMessage="Are you sure you want to pass? You didn't use any power plant!";break;default:this.confirmMessage="Are you sure you want to pass?"}return void(this.confirmVisible=!0)}}}}this.pass()}},{key:"confirmPass",value:function(){this.confirmVisible=!1,this.pass()}},{key:"pass",value:function(){this.sendMove({name:_e.Pass,data:!0})}},{key:"undo",value:function(){this.sendMove({name:_e.Undo,data:this.preferences.undoWholeTurn})}},{key:"choosePowerPlant",value:function(e){var n=this.G.players[this.player],t=n.availableMoves;t.ChoosePowerPlant&&t.ChoosePowerPlant.includes(e.number)&&this.sendMove({name:_e.ChoosePowerPlant,data:e.number})}},{key:"buyResource",value:function(e){var n={resource:e.resource};e.side&&(n.side=e.side),e.fromStorage&&(n.fromStorage=e.fromStorage),this.sendMove({name:_e.BuyResource,data:n})}},{key:"bid",value:function(e){this.sendMove({name:_e.Bid,data:e})}},{key:"build",value:function(e){var n=this.G.players[this.player],t=n.availableMoves,r=t[_e.Build],o=r.find((function(n){return n.name===e.name&&n.freeJump})),a=r.find((function(n){return n.name===e.name&&!n.freeJump}));o&&a?(this.freeJumpCity=e,this.freeJumpSlotPrice=o.price,this.freeJumpNormalPrice=a.price,this.freeJumpVisible=!0):o&&!a?(this.freeJumpCity=e,this.freeJumpSlotPrice=o.price,this.freeJumpNormalPrice=null,this.freeJumpVisible=!0):this.sendMove({name:_e.Build,data:{name:e.name,price:a.price}})}},{key:"confirmFreeJump",value:function(e){var n=this.freeJumpCity,t=this.G.players[this.player],r=t.availableMoves[_e.Build];if(this.freeJumpVisible=!1,this.freeJumpCity=null,e){var o=r.find((function(e){return e.name===n.name&&e.freeJump}));this.sendMove({name:_e.Build,data:{name:n.name,price:o.price,freeJump:!0}})}else{var a=r.find((function(e){return e.name===n.name&&!e.freeJump}));this.sendMove({name:_e.Build,data:{name:n.name,price:a.price}})}}},{key:"confirmDiscard",value:function(){var e=this.resourcesToDiscard.map((function(e){return parseInt(e.value)}));e.reduce((function(e,n){return e+n}),0)>0?this.sendMove({name:_e.DiscardPowerPlant,data:this.discardedPowerPlant.number,extra:e}):this.sendMove({name:_e.DiscardPowerPlant,data:this.discardedPowerPlant.number}),this.discardedPowerPlant=null,this.discardVisible=!1}},{key:"discardInvalid",value:function(){var e,n=this.G.players[this.player];switch(this.discardedPowerPlant.type){case ve.Coal:return e=n.hybridCapacity-2*this.discardedPowerPlant.cost>0?Math.max(0,n.oilLeft-n.oilCapacity):0,n.coalCapacity+n.hybridCapacity-2*this.discardedPowerPlant.cost+parseInt(this.resourcesToDiscard[0].value)<n.coalLeft+e;case ve.Oil:return e=n.hybridCapacity-2*this.discardedPowerPlant.cost>0?Math.max(0,n.coalLeft-n.coalCapacity):0,n.oilCapacity+n.hybridCapacity-2*this.discardedPowerPlant.cost+parseInt(this.resourcesToDiscard[0].value)<n.oilLeft+e;case ve.Garbage:return n.garbageCapacity-2*this.discardedPowerPlant.cost-n.garbageLeft+parseInt(this.resourcesToDiscard[0].value)<0;case ve.Uranium:return n.uraniumCapacity-2*this.discardedPowerPlant.cost-n.uraniumLeft+parseInt(this.resourcesToDiscard[0].value)<0;case ve.Hybrid:var t=parseInt(this.resourcesToDiscard[0].value),r=parseInt(this.resourcesToDiscard[1].value),o=n.hybridCapacity-2*this.discardedPowerPlant.cost,a=Math.max(0,n.coalLeft-n.coalCapacity-t),i=Math.max(0,n.oilLeft-n.oilCapacity-r);return o<a+i}return!0}},{key:"powerPlantClick",value:function(e){var n,t,r=this;if((null===(n=this.G)||void 0===n?void 0:n.phase)==be.Auction)if(e.type==ve.Wind||e.type==ve.Nuclear)this.sendMove({name:_e.DiscardPowerPlant,data:e.number});else{var o=this.G.players[this.player];switch(e.type){case ve.Coal:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Hybrid})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.coalLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Coal",value:"0",max:o.coalLeft}];break;case ve.Oil:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Hybrid})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.oilLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Oil",value:"0",max:o.oilLeft}];break;case ve.Garbage:if(1==o.powerPlants.filter((function(n){return n.type==e.type})).length)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.garbageLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Garbage",value:"0",max:o.garbageLeft}];break;case ve.Uranium:if(1==o.powerPlants.filter((function(n){return n.type==e.type})).length)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.uraniumLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Uranium",value:"0",max:o.uraniumLeft}];break;case ve.Hybrid:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Coal})).length+o.powerPlants.filter((function(e){return e.type==ve.Oil})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(o.coalLeft+o.oilLeft==0)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Coal",value:"0",max:o.coalLeft},{name:"Oil",value:"0",max:o.oilLeft}];break}this.discardedPowerPlant=e,this.discardVisible=!0}else if((null===(t=this.G)||void 0===t?void 0:t.phase)==be.Bureaucracy){var a=[];switch(e.type){case ve.Coal:a=Array(e.cost).fill(me.Coal);break;case ve.Oil:a=Array(e.cost).fill(me.Oil);break;case ve.Garbage:a=Array(e.cost).fill(me.Garbage);break;case ve.Uranium:a=Array(e.cost).fill(me.Uranium);break;case ve.Hybrid:var i=this.G.players[this.player];a=i.resourcesUsed,a.sort(),i.resourcesUsed=[],i.powerPlantsNotUsed=i.powerPlantsNotUsed.filter((function(n){return n!=e.number}));break}this.sendMove({name:_e.UsePowerPlant,data:{powerPlant:e.number,resourcesSpent:a,citiesPowered:e.citiesPowered}}),this.disablePass=!0,setTimeout((function(){return r.disablePass=!1}),1e3)}}},{key:"discardResource",value:function(e){this.sendMove({name:_e.DiscardResources,data:e})}},{key:"sendMove",value:function(e){this.paused||this.emitter.emit("move",e)}},{key:"gameEnded",value:function(e){return 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[_e.Pass]}},{key:"canUndo",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Undo]}},{key:"canBid",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Bid]}},{key:"canChoose",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.ChoosePowerPlant]}},{key:"buyableResources",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.BuyResource]||[]}},{key:"canBuyResource",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return e?!!t[_e.BuyResource]&&t[_e.BuyResource].find((function(n){return n.resource==e})):!!t[_e.BuyResource]}},{key:"getChooseablePowerPlants",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.ChoosePowerPlant]}},{key:"getBuildableCities",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.Build]&&n[_e.Build].map((function(e){return e.name}))||[]}},{key:"playerHasUsedFreeJump",value:function(e){var n,t=null===(n=this.G)||void 0===n?void 0:n.players[e];return!!t&&(!!t.usedFreeJump||t.cities.length>=2&&Ne(this.G.map.connections,t.cities.map((function(e){return e.name})))>=2)}},{key:"canBuild",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return!!t[_e.Build]&&t[_e.Build].find((function(n){return n.name==e.name}))}},{key:"canUsePowerPlant",value:function(e){var n,t;if(!this.canMove())return!1;var r=this.G.players[this.player],o=r.availableMoves;return!(r.resourcesUsed.length>0)&&((null===(n=this.G)||void 0===n?void 0:n.phase)==be.Bureaucracy?!!o[_e.UsePowerPlant]&&o[_e.UsePowerPlant].find((function(n){return n.powerPlant==e.number})):(null===(t=this.G)||void 0===t?void 0:t.phase)==be.Auction?!!o[_e.DiscardPowerPlant]&&o[_e.DiscardPowerPlant].find((function(n){return n==e.number})):void 0)}},{key:"canPowerAllPlants",value:function(e){var n,t=0,r=0,o=0,a=0,i=0,s=P(e.powerPlants);try{for(s.s();!(n=s.n()).done;){var c=n.value;switch(c.type){case ve.Coal:t+=c.cost;break;case ve.Oil:r+=c.cost;break;case ve.Garbage:o+=c.cost;break;case ve.Uranium:a+=c.cost;break;case ve.Hybrid:i+=c.cost;break}}}catch(d){s.e(d)}finally{s.f()}if(t>e.coalLeft||r>e.oilLeft||o>e.garbageLeft||a>e.uraniumLeft)return!1;var u=e.coalLeft-t,l=e.oilLeft-r;return!(i>u+l)}},{key:"toggleSound",value:function(){var e=!this.preferences.sound;this.emitter.emit("update:preference",{name:"sound",value:e}),this.preferences.sound=e}},{key:"toggleHelp",value:function(){var e=!this.preferences.disableHelp;this.emitter.emit("update:preference",{name:"disableHelp",value:e}),this.preferences.disableHelp=e}},{key:"showLog",value:function(){this.logVisible=!0}},{key:"getStatusMessage",value:function(){var e;if(!this.G||1==this.G.log.length)return"Game Start!";if(this.G.currentPlayers==[])return"Game ended!";if(void 0!==this.player&&null!==(e=this.G)&&void 0!==e&&e.currentPlayers.includes(this.player)){var n=this.G.players[this.player];return n.availableMoves[_e.ChoosePowerPlant]?n.availableMoves[_e.Pass]?"Choose a Power Plant to start an auction, or pass.":"Choose a Power Plant to start an auction.":n.availableMoves[_e.Bid]?"It's your turn to bid!":n.availableMoves[_e.BuyResource]?"Buy resources on the market, or pass.":n.availableMoves[_e.Build]?"Build a new city, or pass.":n.availableMoves[_e.UsePowerPlant]?0!=n.resourcesUsed.length?"Choose which resources to spend.":"Choose which Power Plant to use.":n.availableMoves[_e.DiscardPowerPlant]?"Choose which Power Plant to discard.":n.availableMoves[_e.DiscardResources]?"Choose which resources to discard.":"It's your turn!"}var t=this.G.log[this.G.log.length-1];return"move"==t.type?t.simple:"event"==t.type?t.event:void 0}},{key:"isCurrentPlayer",value:function(e){return this.G&&this.G.currentPlayers.includes(e)}},{key:"logReversed",get:function(){var e=[];return this.G&&this.G.log&&(this.G.log.forEach((function(n){"event"==n.type?e.push(n.pretty||n.event):"move"==n.type&&e.push(n.pretty)})),e.reverse()),e}},{key:"logReversedSimple",get:function(){var e=[];return this.G&&this.G.log&&(this.G.log.forEach((function(n){"event"==n.type?e.push(n.event):"move"==n.type&&e.push(n.simple)})),e.reverse()),e}},{key:"onLogChanged",value:function(){this.emitter.emit("replaceLog",_(this.logReversedSimple).reverse())}},{key:"sortedPlayers",get:function(){return Jt(this.G)}},{key:"mapTransform",get:function(){var e;if(null===(e=this.G)||void 0===e||!e.map)return"";var n=b(this.G.map.mapPosition,2),t=n[0],r=n[1],o=this.G.map.mapRotation;if(!o)return"translate(".concat(t,", ").concat(r,")");var a=this.G.map.cities,i=a.map((function(e){return e.x})),s=a.map((function(e){return e.y})),c=(Math.min.apply(Math,_(i))+Math.max.apply(Math,_(i)))/2,u=(Math.min.apply(Math,_(s))+Math.max.apply(Math,_(s)))/2;return"translate(".concat(t,", ").concat(r,") rotate(").concat(o,", ").concat(c,", ").concat(u,")")}},{key:"adjustedPlayerOrder",get:function(){return this.G?this.preferences.adjustPlayerOrder?this.G.phase==be.Auction?this.G.playerOrder:this.G.playerOrder.reverse():this.G.players.map((function(e,n){return n})):[]}},{key:"getResourceResupply",value:function(){if(this.G){var e=this.G.resourceResupply[this.G.step-1];return e=e.substr(1,e.length-2),e.split(",")}return[0,0,0,0]}},{key:"getResourceResupplyNorth",value:function(){if(this.G&&this.G.resourceResupplyNorth){var e=this.G.resourceResupplyNorth[this.G.step-1];return e=e.substr(1,e.length-2),e.split(",")}return null}}]),t}(d.a);N([he()],ri.prototype,"state",void 0),N([he(),de()],ri.prototype,"player",void 0),N([he()],ri.prototype,"emitter",void 0),N([he()],ri.prototype,"avatars",void 0),N([he(),de()],ri.prototype,"preferences",void 0),N([le()],ri.prototype,"ui",void 0),N([le()],ri.prototype,"communicator",void 0),N([de()],ri.prototype,"G",void 0),N([ye()],ri.prototype,"powerPlantMarket",void 0),N([ye()],ri.prototype,"playerOrder",void 0),N([ye()],ri.prototype,"cityCount",void 0),N([ye()],ri.prototype,"map",void 0),N([ye()],ri.prototype,"resources",void 0),N([ge("state",{immediate:!0})],ri.prototype,"onStateChanged",null),N([ge("ui.waitingAnimations")],ri.prototype,"updateUI",null),N([ge("G.log")],ri.prototype,"onLogChanged",null),ri=N([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(Nt(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:pa,Card:_r,House:Fr,Coal:Ar,Oil:ro,Garbage:Nr,Uranium:lo,PassButton:Eo,UndoButton:ia,LogButton:Oo,SoundButton:Ho,HelpButton:So,RulesButton:Qo,Button:vo,Calculator:wa,PowerPlantMarket:Ca,PlayerOrder:Ga,CityCount:Ia,Map:Ja,Resources:ti}})],ri);var oi=ri,ai=oi,ii=(t("bb9a"),yr(ai,f,p,!1,null,null,null)),si=ii.exports;function ci(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(si,{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 ui=ci;"undefined"!==typeof window&&(window.powergrid={launch:ui});var li=ui;n["default"]=li},a1a4:function(e,n,t){"use strict";var r=t("a768"),o=t("41d6"),a=t("fd86"),i=t("ce17"),s=a("species");e.exports=function(e){var n=r(e),t=o.f;i&&n&&!n[s]&&t(n,s,{configurable:!0,get:function(){return this}})}},a516:function(e,n,t){"use strict";var r=t("7f82"),o=t("12aa"),a=t("b42f"),i=t("43b7"),s=t("f246"),c=t("cbe1"),u=t("cba7"),l=t("2fb6"),d=l("splice"),f=Math.max,p=Math.min,h=9007199254740991,g="Maximum allowed length exceeded";r({target:"Array",proto:!0,forced:!d},{splice:function(e,n){var t,r,l,d,y,m,v=s(this),b=i(v.length),w=o(e,b),x=arguments.length;if(0===x?t=r=0:1===x?(t=0,r=b-w):(t=x-2,r=p(f(a(n),0),b-w)),b+t-r>h)throw TypeError(g);for(l=c(v,r),d=0;d<r;d++)y=w+d,y in v&&u(l,d,v[y]);if(l.length=r,t<r){for(d=w;d<b-r;d++)y=d+r,m=d+t,y in v?v[m]=v[y]:delete v[m];for(d=b;d>b-r+t;d--)delete v[d-1]}else if(t>r)for(d=b-r;d>w;d--)y=d+r-1,m=d+t-1,y in v?v[m]=v[y]:delete v[m];for(d=0;d<t;d++)v[d+w]=arguments[d+2];return v.length=b-r+t,l}})},a768:function(e,n,t){var r=t("8aac"),o=t("68de"),a=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,n){return arguments.length<2?a(r[e])||a(o[e]):r[e]&&r[e][n]||o[e]&&o[e][n]}},a901:function(e,n,t){"use strict";var r=t("2079").charAt,o=t("2673"),a=t("4116"),i="String Iterator",s=o.set,c=o.getterFor(i);a(String,"String",(function(e){s(this,{type:i,string:String(e),index:0})}),(function(){var e,n=c(this),t=n.string,o=n.index;return o>=t.length?{value:void 0,done:!0}:(e=r(t,o),n.index+=e.length,{value:e,done:!1})}))},a9eb:function(e,n,t){var r=t("8dac");e.exports=function(e,n){if(!r(e))return e;var t,o;if(n&&"function"==typeof(t=e.toString)&&!r(o=t.call(e)))return o;if("function"==typeof(t=e.valueOf)&&!r(o=t.call(e)))return o;if(!n&&"function"==typeof(t=e.toString)&&!r(o=t.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},ac27:function(e,n){e.exports=function(e){try{return!!e()}catch(n){return!0}}},ac85:function(e,n,t){(function(e){var r;(function(e,o,a){function i(e){var n=this;function t(e,n){var t,r,o,a,i,s=[],c=128;for(n===(0|n)?(r=n,n=null):(n+="\0",r=0,c=Math.max(c,n.length)),o=0,a=-32;a<c;++a)n&&(r^=n.charCodeAt((a+32)%n.length)),0===a&&(i=r),r^=r<<10,r^=r>>>15,r^=r<<4,r^=r>>>13,a>=0&&(i=i+1640531527|0,t=s[127&a]^=r+i,o=0==t?o+1:0);for(o>=128&&(s[127&(n&&n.length||0)]=-1),o=127,a=512;a>0;--a)r=s[o+34&127],t=s[o=o+1&127],r^=r<<13,t^=t<<17,r^=r>>>15,t^=t>>>12,s[o]=r^t;e.w=i,e.X=s,e.i=o}n.next=function(){var e,t,r=n.w,o=n.X,a=n.i;return n.w=r=r+1640531527|0,t=o[a+34&127],e=o[a=a+1&127],t^=t<<13,e^=e<<17,t^=t>>>15,e^=e>>>12,t=o[a]=t^e,n.i=a,t+(r^r>>>16)|0},t(n,e)}function s(e,n){return n.i=e.i,n.w=e.w,n.X=e.X.slice(),n}function c(e,n){null==e&&(e=+new Date);var t=new i(e),r=n&&n.state,o=function(){return(t.next()>>>0)/4294967296};return o.double=function(){do{var e=t.next()>>>11,n=(t.next()>>>0)/4294967296,r=(e+n)/(1<<21)}while(0===r);return r},o.int32=t.next,o.quick=o,r&&(r.X&&s(r,t),o.state=function(){return s(t,{})}),o}o&&o.exports?o.exports=c:t("f9ad")&&t("ba96")?(r=function(){return c}.call(n,t,n,o),void 0===r||(o.exports=r)):this.xor4096=c})(0,e,t("f9ad"))}).call(this,t("e55b")(e))},b07d:function(e,n,t){"use strict";var r=t("cbdb"),o=t("0540"),a=t("57ac"),i=t("c678"),s=t("c698"),c=t("7743"),u=t("43b7"),l=t("1af6"),d=t("8bc5"),f=t("3439"),p=f.UNSUPPORTED_Y,h=[].push,g=Math.min,y=4294967295;r("split",2,(function(e,n,t){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,t){var r=String(i(this)),a=void 0===t?y:t>>>0;if(0===a)return[];if(void 0===e)return[r];if(!o(e))return n.call(r,e,a);var s,c,u,l=[],f=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),p=0,g=new RegExp(e.source,f+"g");while(s=d.call(g,r)){if(c=g.lastIndex,c>p&&(l.push(r.slice(p,s.index)),s.length>1&&s.index<r.length&&h.apply(l,s.slice(1)),u=s[0].length,p=c,l.length>=a))break;g.lastIndex===s.index&&g.lastIndex++}return p===r.length?!u&&g.test("")||l.push(""):l.push(r.slice(p)),l.length>a?l.slice(0,a):l}:"0".split(void 0,0).length?function(e,t){return void 0===e&&0===t?[]:n.call(this,e,t)}:n,[function(n,t){var o=i(this),a=void 0==n?void 0:n[e];return void 0!==a?a.call(n,o,t):r.call(String(o),n,t)},function(e,o){var i=t(r,e,this,o,r!==n);if(i.done)return i.value;var d=a(e),f=String(this),h=s(d,RegExp),m=d.unicode,v=(d.ignoreCase?"i":"")+(d.multiline?"m":"")+(d.unicode?"u":"")+(p?"g":"y"),b=new h(p?"^(?:"+d.source+")":d,v),w=void 0===o?y:o>>>0;if(0===w)return[];if(0===f.length)return null===l(b,f)?[f]:[];var x=0,k=0,_=[];while(k<f.length){b.lastIndex=p?0:k;var P,S=l(b,p?f.slice(k):f);if(null===S||(P=g(u(b.lastIndex+(p?k:0)),f.length))===x)k=c(f,k,m);else{if(_.push(f.slice(x,k)),_.length===w)return _;for(var M=1;M<=S.length-1;M++)if(_.push(S[M]),_.length===w)return _;k=x=P}}return _.push(f.slice(x)),_}]}),p)},b0d4:function(e,n,t){"use strict";var r=t("7f82"),o=t("b222").find,a=t("d684"),i="find",s=!0;i in[]&&Array(1)[i]((function(){s=!1})),r({target:"Array",proto:!0,forced:s},{find:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),a(i)},b168:function(e,n,t){var r,o,a=t("68de"),i=t("fd70"),s=a.process,c=s&&s.versions,u=c&&c.v8;u?(r=u.split("."),o=r[0]<4?1:r[0]+r[1]):i&&(r=i.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=i.match(/Chrome\/(\d+)/),r&&(o=r[1]))),e.exports=o&&+o},b222:function(e,n,t){var r=t("6e4e"),o=t("2153"),a=t("f246"),i=t("43b7"),s=t("cbe1"),c=[].push,u=function(e){var n=1==e,t=2==e,u=3==e,l=4==e,d=6==e,f=7==e,p=5==e||d;return function(h,g,y,m){for(var v,b,w=a(h),x=o(w),k=r(g,y,3),_=i(x.length),P=0,S=m||s,M=n?S(h,_):t||f?S(h,0):void 0;_>P;P++)if((p||P in x)&&(v=x[P],b=k(v,P,w),e))if(n)M[P]=b;else if(b)switch(e){case 3:return!0;case 5:return v;case 6:return P;case 2:c.call(M,v)}else switch(e){case 4:return!1;case 7:c.call(M,v)}return d?-1:u||l?l:M}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterOut:u(7)}},b2a1:function(e,n,t){var r=t("9c0c"),o=t("97cc").f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(e){try{return o(e)}catch(n){return i.slice()}};e.exports.f=function(e){return i&&"[object Window]"==a.call(e)?s(e):o(r(e))}},b42f:function(e,n){var t=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:t)(e)}},b67b:function(e,n,t){e.exports=t.p+"img/log.04ef6981.svg"},b85b:function(e,n,t){e.exports=t.p+"img/rules.64f9aae5.svg"},ba03:function(e,n,t){(function(e){var r;(function(e,o,a){function i(e){var n=this,t="";n.next=function(){var e=n.b,t=n.c,r=n.d,o=n.a;return e=e<<25^e>>>7^t,t=t-r|0,r=r<<24^r>>>8^o,o=o-e|0,n.b=e=e<<20^e>>>12^t,n.c=t=t-r|0,n.d=r<<16^t>>>16^o,n.a=o-e|0},n.a=0,n.b=0,n.c=-1640531527,n.d=1367130551,e===Math.floor(e)?(n.a=e/4294967296|0,n.b=0|e):t+=e;for(var r=0;r<t.length+20;r++)n.b^=0|t.charCodeAt(r),n.next()}function s(e,n){return n.a=e.a,n.b=e.b,n.c=e.c,n.d=e.d,n}function c(e,n){var t=new i(e),r=n&&n.state,o=function(){return(t.next()>>>0)/4294967296};return o.double=function(){do{var e=t.next()>>>11,n=(t.next()>>>0)/4294967296,r=(e+n)/(1<<21)}while(0===r);return r},o.int32=t.next,o.quick=o,r&&("object"==typeof r&&s(r,t),o.state=function(){return s(t,{})}),o}o&&o.exports?o.exports=c:t("f9ad")&&t("ba96")?(r=function(){return c}.call(n,t,n,o),void 0===r||(o.exports=r)):this.tychei=c})(0,e,t("f9ad"))}).call(this,t("e55b")(e))},ba28:function(e,n,t){var r=t("8c99"),o=t("338e");e.exports=Object.keys||function(e){return r(e,o)}},ba96:function(e,n){(function(n){e.exports=n}).call(this,{})},bb9a:function(e,n,t){"use strict";t("50b1")},bcba:function(e,n,t){(function(e,r){var o;
27
27
  /**
28
28
  * @license
29
29
  * Lodash <https://lodash.com/>