From cc0de1047163a39646ade37577bb7ab186e54422 Mon Sep 17 00:00:00 2001 From: douwe Date: Sun, 24 Aug 2025 12:08:22 +0200 Subject: [PATCH] Improved walking system. --- Screeps/Commands.js | 61 ++++++++ Screeps/CreepClass.js | 45 ++++++ Screeps/JobBuilder.js | 94 ++++++++++++ Screeps/JobCleaner.js | 81 ++++++++++ Screeps/JobMiner.js | 25 ++++ Screeps/JobSupplier.js | 90 ++++++++++++ Screeps/JobUpgrader.js | 28 ++++ Screeps/Math.js | 7 + Screeps/RoomClass.js | 44 ++++++ Screeps/Structure.js | 21 +++ Screeps/StructureSpawnClass.js | 64 ++++++++ Screeps/main.js | 44 ++++++ dist/douwco_hivemind_loader.js | 2 +- dist/douwco_hivemind_module.wasm | Bin 411863 -> 426997 bytes douwco_hivemind/include/Creeps/Creep.hpp | 28 ++-- douwco_hivemind/include/Creeps/Harvester.hpp | 18 +-- douwco_hivemind/include/Engine.hpp | 54 +------ douwco_hivemind/include/Rooms/Room.hpp | 15 ++ douwco_hivemind/include/Tools/MeasureTool.hpp | 19 +++ douwco_hivemind/include/Tools/PathTool.hpp | 1 - douwco_hivemind/src/Creep.cpp | 139 ++++++++++++++++++ douwco_hivemind/src/Engine.cpp | 48 ++++++ .../src/{harvester.cpp => Harvester.cpp} | 12 ++ douwco_hivemind/src/{loop.cpp => Loop.cpp} | 0 douwco_hivemind/src/{spawn.cpp => Spawn.cpp} | 8 +- douwco_hivemind/src/creep.cpp | 64 -------- 26 files changed, 858 insertions(+), 154 deletions(-) create mode 100644 Screeps/Commands.js create mode 100644 Screeps/CreepClass.js create mode 100644 Screeps/JobBuilder.js create mode 100644 Screeps/JobCleaner.js create mode 100644 Screeps/JobMiner.js create mode 100644 Screeps/JobSupplier.js create mode 100644 Screeps/JobUpgrader.js create mode 100644 Screeps/Math.js create mode 100644 Screeps/RoomClass.js create mode 100644 Screeps/Structure.js create mode 100644 Screeps/StructureSpawnClass.js create mode 100644 Screeps/main.js create mode 100644 douwco_hivemind/include/Rooms/Room.hpp create mode 100644 douwco_hivemind/include/Tools/MeasureTool.hpp create mode 100644 douwco_hivemind/src/Creep.cpp create mode 100644 douwco_hivemind/src/Engine.cpp rename douwco_hivemind/src/{harvester.cpp => Harvester.cpp} (93%) rename douwco_hivemind/src/{loop.cpp => Loop.cpp} (100%) rename douwco_hivemind/src/{spawn.cpp => Spawn.cpp} (62%) delete mode 100644 douwco_hivemind/src/creep.cpp diff --git a/Screeps/Commands.js b/Screeps/Commands.js new file mode 100644 index 0000000..ab1f36c --- /dev/null +++ b/Screeps/Commands.js @@ -0,0 +1,61 @@ + + +module.exports = { + setup(){ + global.fullReset = fullReset; + global.resetRooms = resetRooms; + global.resetStructures = resetStructures; + global.resetCreeps = resetCreeps; + global.resetConstruction = resetConstruction; + + global.buildRoads = buildRoads; + } +} + +function fullReset(){ + resetRooms(); + resetCreeps(); + resetStructures(); + resetConstruction(); + global.started = false; + global.compiled = false; + return "OK"; +} + +function resetRooms(){ + Object.values(Game.rooms).forEach(room => room.memory = {}); + return "OK"; +} + +function resetStructures(){ + Object.values(Game.structures).forEach(structure => structure.memory = {}); + return "OK"; +} + +function resetCreeps(){ + Object.values(Game.creeps).forEach(creep => creep.suicide()); + return "OK"; +} + +function resetConstruction(){ + Object.values(Game.rooms).forEach(room=>room.find(FIND_CONSTRUCTION_SITES).forEach(cs=>cs.remove())); + return "OK"; +} + +function buildRoads(){ + Object.values(Game.rooms).forEach(room=> + { + room.memory.layout.sources.forEach( + sId => { + const source = Game.getObjectById(sId); + var roads = []; + roads = roads.concat(source.pos.findPathTo(room.controller)); + roads.pop(); + roads = roads.concat(source.pos.findPathTo(room.find(FIND_MY_STRUCTURES, { filter:{ structureType:STRUCTURE_SPAWN }})[0])); + roads.pop(); + roads.forEach(tile => room.createConstructionSite(tile.x, tile.y, STRUCTURE_ROAD)); + } + ); + }); + return "OK"; +} \ No newline at end of file diff --git a/Screeps/CreepClass.js b/Screeps/CreepClass.js new file mode 100644 index 0000000..34f06f0 --- /dev/null +++ b/Screeps/CreepClass.js @@ -0,0 +1,45 @@ +const jobBuilder = require("JobBuilder"); +const jobCleaner = require("JobCleaner"); +const jobMiner = require("JobMiner"); +const jobSupplier = require("JobSupplier"); +const jobUpgrader = require("JobUpgrader"); + +module.exports = { + setup: function () { + Creep.prototype = _Creep.prototype; + global.Role = Role; + } +} + +const Role = { + BUILDER: 0, + CLEANER: 1, + MINER: 2, + SUPPLIER: 3, + UPGRADER: 4 +} + +class _Creep extends Creep { + begin(){ + if(!this.memory.job) this.memory.job = { role: Role.HARVESTER }; + switch (this.memory.job.role) { + case Role.BUILDER: jobBuilder.begin(this); break; + case Role.CLEANER: jobCleaner.begin(this); break; + case Role.MINER: jobMiner.begin(this); break; + case Role.SUPPLIER: jobSupplier.begin(this); break; + case Role.UPGRADER: jobUpgrader.begin(this); break; + } + this.memory.init = true; + } + + tick(){ + if(!this.memory.init) this.begin(); + switch (this.memory.job.role) { + case Role.BUILDER: jobBuilder.tick(this); break; + case Role.CLEANER: jobCleaner.tick(this); break; + case Role.MINER: jobMiner.tick(this); break; + case Role.SUPPLIER: jobSupplier.tick(this); break; + case Role.UPGRADER: jobUpgrader.tick(this); break; + } + } +} \ No newline at end of file diff --git a/Screeps/JobBuilder.js b/Screeps/JobBuilder.js new file mode 100644 index 0000000..3284f16 --- /dev/null +++ b/Screeps/JobBuilder.js @@ -0,0 +1,94 @@ +module.exports = { + begin(creep){ + if(!creep.memory.collecting) creep.memory.collecting = false; + if(!creep.memory.counter) creep.memory.counter = 0; + }, + + tick(creep){ + if(creep.memory.collecting) { + GetEnergy(creep); + energyFullCheck(creep); + } + else { + BuildOrRepair(creep); + energyEmptyCheck(creep); + } + } +} + +function GetEnergy(creep){ + if(!creep.memory.target) findEnergyTarget(creep); + const target = Game.getObjectById(creep.memory.target); + if(!target) creep.memory.target = undefined; + if(creep.pos.isNearTo(target)) { + if(!target.store) creep.pickup(target); + else creep.withdraw(target, RESOURCE_ENERGY); + } + else creep.moveTo(target); +} + +function energyFullCheck(creep){ + if(!creep.store.getFreeCapacity(RESOURCE_ENERGY)) { + creep.memory.collecting = false; + creep.memory.target = undefined; + } +} + +function BuildOrRepair(creep){ + if(!creep.memory.target) findBuildOrRepairTarget(creep); + if(!creep.memory.target) return; + const target = Game.getObjectById(creep.memory.target); + if(!target) { creep.memory.target = undefined; return; } + if(target.hits && target.hits === target.hitsMax) { creep.memory.target = undefined; return; } + if(creep.pos.isNearTo(target)) + if(!target.hits) creep.build(target); + else creep.repair(target); + else creep.moveTo(target); +} + +function energyEmptyCheck(creep){ + if(!creep.store.getUsedCapacity(RESOURCE_ENERGY)) { + creep.memory.collecting = true; + creep.memory.target = undefined; + } +} + +function findEnergyTarget(creep){ + var target; + if(creep.room.storage && creep.room.storage.store.getUsedCapacity(RESOURCE_ENERGY) > creep.store.getFreeCapacity(RESOURCE_ENERGY)) + target = creep.room.storage; + if(!target) target = creep.pos.findClosestByRange(FIND_STRUCTURES, { + filter: (st)=>{ + return st.structureType == STRUCTURE_CONTAINER && st.store.getUsedCapacity(RESOURCE_ENERGY) > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + + if(!target) target = creep.pos.findClosestByRange(FIND_DROPPED_RESOURCES, { + filter: (r)=>{ + return r.resourceType == RESOURCE_ENERGY && r.amount > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_RUINS, { + filter: (r)=>{ + return r.store.getUsedCapacity(RESOURCE_ENERGY) > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_TOMBSTONES, { + filter: (t)=>{ + return t.store.getUsedCapacity(RESOURCE_ENERGY) > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + + if(target) creep.memory.target = target.id; +} + +function findBuildOrRepairTarget(creep) { + var target; + switch (creep.memory.counter%2) { + case 0: target = creep.pos.findClosestByRange(FIND_MY_CONSTRUCTION_SITES); break; + case 1: target = creep.pos.findClosestByRange(FIND_STRUCTURES, { + filter:(s)=> { + return s.hits < s.hitsMax || + ((s.structureType === STRUCTURE_WALL || s.structureType === STRUCTURE_RAMPART) && s.hits < 100000 ); + }}); + break; + } + if(target) creep.memory.target = target.id; + creep.memory.counter++; +} \ No newline at end of file diff --git a/Screeps/JobCleaner.js b/Screeps/JobCleaner.js new file mode 100644 index 0000000..74d0c30 --- /dev/null +++ b/Screeps/JobCleaner.js @@ -0,0 +1,81 @@ +module.exports = { + begin(creep){ + if(!creep.memory.collecting) creep.memory.collecting = false; + }, + + tick(creep){ + if(creep.memory.collecting) { + searchForLooseEnergy(creep); + energyFullCheck(creep); + } + else { + DepositEnergy(creep); + energyEmptyCheck(creep); + } + } +} + +function searchForLooseEnergy(creep){ + if(!creep.memory.target) findLooseEnergyTarget(creep); + const target = Game.getObjectById(creep.memory.target); + if(!target) creep.memory.target = undefined; + if(creep.pos.isNearTo(target)) { + if(!target.store) creep.pickup(target); + else creep.withdraw(target, RESOURCE_ENERGY); + } + else creep.moveTo(target); +} + +function energyFullCheck(creep){ + if(!creep.store.getFreeCapacity(RESOURCE_ENERGY)) { + creep.memory.collecting = false; + creep.memory.target = undefined; + } +} + +function DepositEnergy(creep){ + if(!creep.memory.target) findDepositTarget(creep); + if(!creep.memory.target) return; + const target = Game.getObjectById(creep.memory.target); + if(target.store.getFreeCapacity(RESOURCE_ENERGY)==0) { creep.memory.target = undefined; creep.memory.counter++; } + if(creep.pos.isNearTo(target)) creep.transfer(target, RESOURCE_ENERGY); + else creep.moveTo(target); +} + +function energyEmptyCheck(creep){ + if(!creep.store.getUsedCapacity(RESOURCE_ENERGY)) { + creep.memory.collecting = true; + creep.memory.target = undefined; + } +} + +function findLooseEnergyTarget(creep){ + var target = creep.pos.findClosestByRange(FIND_DROPPED_RESOURCES, { + filter: (r)=>{ + return r.resourceType == RESOURCE_ENERGY && r.amount > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_RUINS, { + filter: (r)=>{ + return r.store.getUsedCapacity(RESOURCE_ENERGY) > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_TOMBSTONES, { + filter: (t)=>{ + return t.store.getUsedCapacity(RESOURCE_ENERGY) > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + if(target) creep.memory.target = target.id; +} + +function findDepositTarget(creep) { + var target = creep.pos.findClosestByRange(FIND_STRUCTURES, { + filter:(s)=> { + return s.structureType == STRUCTURE_CONTAINER + && s.store.getFreeCapacity(RESOURCE_ENERGY) > 1000; + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_MY_STRUCTURES, { + filter:(s)=> { + return (s.structureType == STRUCTURE_SPAWN || s.structureType == STRUCTURE_EXTENSION) + && s.store.getFreeCapacity(RESOURCE_ENERGY) > 0; + }}); + if(!target) target = creep.room.storage; + if(target) creep.memory.target = target.id; +} \ No newline at end of file diff --git a/Screeps/JobMiner.js b/Screeps/JobMiner.js new file mode 100644 index 0000000..63c064f --- /dev/null +++ b/Screeps/JobMiner.js @@ -0,0 +1,25 @@ +module.exports = { + begin(creep){}, + + tick(creep){ + const source = Game.getObjectById(creep.memory.job.source); + if(!creep.pos.isNearTo(source)) { creep.moveTo(source); return; } + if(!(Game.time%100)) scanForContainer(creep, source); + moveToContainer(creep); + creep.harvest(source); + } +} + +function moveToContainer(creep){ + const container = Game.getObjectById(creep.memory.container); + if(!container) return; + if(container.pos.x === creep.pos.x && container.pos.y === creep.pos.y) return; + creep.moveTo(container); +} + +function scanForContainer(creep, source){ + const container = source.pos.findInRange(FIND_STRUCTURES, 1, { + filter:{structureType:STRUCTURE_CONTAINER} + })[0]; + if(container) creep.memory.container = container.id; +} \ No newline at end of file diff --git a/Screeps/JobSupplier.js b/Screeps/JobSupplier.js new file mode 100644 index 0000000..2a4b65a --- /dev/null +++ b/Screeps/JobSupplier.js @@ -0,0 +1,90 @@ +module.exports = { + begin(creep){ + if(!creep.memory.collecting) creep.memory.collecting = false; + }, + + tick(creep){ + if(creep.memory.collecting) { + withdrawEnergy(creep); + energyFullCheck(creep); + } + else { + transferEnergy(creep); + energyEmptyCheck(creep); + } + } +} + +function withdrawEnergy(creep){ + if(!creep.memory.target) findWithdrawTarget(creep); + const target = Game.getObjectById(creep.memory.target); + if(!target) creep.memory.target = undefined; + if(creep.pos.isNearTo(target)) { + if(!target.store) creep.pickup(target); + else creep.withdraw(target, RESOURCE_ENERGY); + } + else creep.moveTo(target); +} + +function energyFullCheck(creep){ + if(!creep.store.getFreeCapacity(RESOURCE_ENERGY)) { + creep.memory.collecting = false; + creep.memory.target = undefined; + } +} + +function transferEnergy(creep){ + if(!creep.memory.target) findTransferTarget(creep); + if(!creep.memory.target) return; + const target = Game.getObjectById(creep.memory.target); + if(target.store.getFreeCapacity(RESOURCE_ENERGY)==0) { creep.memory.target = undefined; creep.memory.counter++; } + if(creep.pos.isNearTo(target)) creep.transfer(target, RESOURCE_ENERGY); + else creep.moveTo(target); +} + +function energyEmptyCheck(creep){ + if(!creep.store.getUsedCapacity(RESOURCE_ENERGY)) { + creep.memory.collecting = true; + creep.memory.target = undefined; + } +} + +function findWithdrawTarget(creep){ + var target = creep.pos.findClosestByRange(FIND_DROPPED_RESOURCES, { + filter: (r)=>{ + return r.resourceType == RESOURCE_ENERGY && r.amount > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_RUINS, { + filter: (r)=>{ + return r.store.getUsedCapacity(RESOURCE_ENERGY) > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_TOMBSTONES, { + filter: (t)=>{ + return t.store.getUsedCapacity(RESOURCE_ENERGY) > creep.store.getFreeCapacity(RESOURCE_ENERGY); + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_STRUCTURES, { + filter: (st)=>{ + return st.structureType == STRUCTURE_CONTAINER && st.store.getUsedCapacity(RESOURCE_ENERGY) > 1000; + }}); + if(target) creep.memory.target = target.id; +} + +function findTransferTarget(creep) { + var target = creep.pos.findClosestByRange(FIND_MY_STRUCTURES, { + filter:(s)=> { + return (s.structureType == STRUCTURE_EXTENSION) + && s.store.getFreeCapacity(RESOURCE_ENERGY) > 0; + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_MY_STRUCTURES, { + filter:(s)=> { + return (s.structureType == STRUCTURE_SPAWN) + && s.store.getFreeCapacity(RESOURCE_ENERGY) > 0; + }}); + if(!target) target = creep.pos.findClosestByRange(FIND_STRUCTURES, { + filter:(s)=> { + return s.structureType == STRUCTURE_CONTAINER + && s.store.getFreeCapacity(RESOURCE_ENERGY) > 1000; + }}) + if(!target) target = creep.room.storage; + if(target) creep.memory.target = target.id; +} \ No newline at end of file diff --git a/Screeps/JobUpgrader.js b/Screeps/JobUpgrader.js new file mode 100644 index 0000000..b74a655 --- /dev/null +++ b/Screeps/JobUpgrader.js @@ -0,0 +1,28 @@ +module.exports = { + begin(creep){ + }, + + tick(creep){ + if(!creep.pos.isNearTo(creep.room.controller)) { creep.moveTo(creep.room.controller); return; } + if(creep.store.getUsedCapacity(RESOURCE_ENERGY) == 0) { getOrWaitForEnergy(creep); return; } + creep.upgradeController(creep.room.controller); + } +} + +function getOrWaitForEnergy(creep){ + if(!creep.memory.container) scanForContainer(creep); + if(creep.memory.container) getEnergyFromContainer(creep); +} + +function getEnergyFromContainer(creep){ + const container = Game.getObjectById(creep.memory.container); + if(creep.withdraw(container, RESOURCE_ENERGY) == ERR_NOT_IN_RANGE) creep.moveTo(container); +} + +// duplicate see miner +function scanForContainer(creep){ + const container = creep.room.controller.pos.findInRange(FIND_STRUCTURES, 1, { + filter:{structureType:STRUCTURE_CONTAINER} + })[0]; + if(container) creep.memory.container = container.id; +} \ No newline at end of file diff --git a/Screeps/Math.js b/Screeps/Math.js new file mode 100644 index 0000000..35b08c9 --- /dev/null +++ b/Screeps/Math.js @@ -0,0 +1,7 @@ +module.exports = { + clamp: function(v, min, max){ + if(vs.id); + room.memory.layout.containers = room.find(FIND_MY_STRUCTURES, {filter:{structureType:STRUCTURE_CONTAINER}}).map(c=>c.id); +} + +function jobScan(room){ + if(!room.memory.jobs) room.memory.jobs = [{role:Role.UPGRADER}] + .concat(Array(4).fill({role: Role.BUILDER})) + .concat(Array(2).fill({role: Role.SUPPLIER})) + .concat(room.memory.layout.sources.map(s=> {return {role: Role.MINER, source: s}})); +} + +function vacancyScan(room){ + const activeJobs = room.find(FIND_MY_CREEPS).map(creep=>creep.memory.job); + const jobs = room.memory.jobs.filter((j)=>{ + const index = activeJobs.findIndex(aj=> _.isEqual(aj,j)); + if(index < 0) return true; + activeJobs.splice(index,1); + return false; + }); + room.memory.vacancies = jobs; +} + diff --git a/Screeps/Structure.js b/Screeps/Structure.js new file mode 100644 index 0000000..f503a13 --- /dev/null +++ b/Screeps/Structure.js @@ -0,0 +1,21 @@ +const spawnClass = require("StructureSpawnClass"); + +module.exports = { + setup() { + spawnClass.setup(); + }, + + begin(structure){ + switch (structure.structureType) { + case STRUCTURE_SPAWN: structure.begin(); break; + default: break; + } + }, + + tick(structure){ + switch (structure.structureType) { + case STRUCTURE_SPAWN: structure.tick(); break; + default: break; + } + } +} \ No newline at end of file diff --git a/Screeps/StructureSpawnClass.js b/Screeps/StructureSpawnClass.js new file mode 100644 index 0000000..98babe3 --- /dev/null +++ b/Screeps/StructureSpawnClass.js @@ -0,0 +1,64 @@ +module.exports = { + setup: function () { StructureSpawn.prototype = _StructureSpawn.prototype; } +} + +class _StructureSpawn extends StructureSpawn { + begin(){ + if (!this.memory.creepCounter) this.memory.creepCounter = 0; + this.memory.init = true; + } + + tick(){ + if(!this.memory.init) this.begin(); + if(Game.time%100) return; + if(this.room.energyAvailable < 300) return; + const job = this.room.memory.vacancies.pop(); + if(job){ + const name = getJobName(job.role); + const body = getBodyByJob(job.role, this.room.energyAvailable); + if(this.createCreep(job, name, body) != OK) this.room.memory.vacancies.push(job); + } + } + + createCreep(job, name, body) { + const response = this.spawnCreep(body, name + ": " + this.memory.creepCounter, { + memory: { job: job } + }); + if (response == OK) this.memory.creepCounter++; + return response; + } +} + +function getJobName(role){ + switch (role) { + case Role.BUILDER: return "Bob"; + case Role.MINER: return "minny"; + case Role.SUPPLIER: return "Sully"; + case Role.UPGRADER: return "Uppa"; + } +} + +function getBodyByJob(role, energyAvailability){ + const body = []; + switch (role) { + case Role.BUILDER: body.push(WORK); energyAvailability -= 100; break; + case Role.UPGRADER: body.push(CARRY); body.push(MOVE); energyAvailability -= 100; break; + case Role.MINER: body.push(MOVE); energyAvailability -= 100; break; + } + + var unitEnergyCost = 0; + while(unitEnergyCost <= energyAvailability) { + switch (role) { + case Role.BUILDER: body.push(MOVE); body.push(CARRY); unitEnergyCost = 100; break; + case Role.UPGRADER: + case Role.MINER: + body.push(WORK); unitEnergyCost = 100; + if(role === Role.MINER && body.length > 5) energyAvailability = -1; + break; + case Role.SUPPLIER: body.push(CARRY); body.push(MOVE); unitEnergyCost = 100; break; + default: energyAvailability = -1; break; + } + energyAvailability -= unitEnergyCost; + } + return body; +} \ No newline at end of file diff --git a/Screeps/main.js b/Screeps/main.js new file mode 100644 index 0000000..e58dbac --- /dev/null +++ b/Screeps/main.js @@ -0,0 +1,44 @@ +const Commands = require("Commands"); +const CreepClass = require("CreepClass"); +const RoomClass = require("RoomClass"); +const Structure = require("Structure"); + +module.exports.loop = function () { + if(!global.compiled) onRecompile(); + else if (!global.started) onRestart(); + else onTick(); +} + +function onRecompile(){ + setupClasses(); + console.log("Script recompiled..."); + global.compiled = true; +} + +function onRestart(){ + Object.values(Game.rooms).forEach(room => room.begin()); + Object.values(Game.creeps).forEach(creep => creep.begin()); + Object.values(Game.structures).forEach(structure => Structure.begin(structure)); + global.started = true; +} + +function onTick(){ + Object.values(Game.rooms).forEach(room => room.tick()); + Object.values(Game.creeps).forEach(creep => creep.tick()); + Object.values(Game.structures).forEach(structure => Structure.tick(structure)); + if(!(Game.time % 100)) cleanUp(); +} + + +function setupClasses(){ + Commands.setup(); + CreepClass.setup(); + RoomClass.setup(); + Structure.setup(); +} + +function cleanUp(){ + Object.keys(Memory.rooms).forEach(roomName => { if(!Game.rooms[roomName]) Memory.rooms[roomName] = undefined; }); + Object.keys(Memory.creeps).forEach(creepName => { if(!Game.creeps[creepName]) Memory.creeps[creepName] = undefined; }); +} + diff --git a/dist/douwco_hivemind_loader.js b/dist/douwco_hivemind_loader.js index 8af5e7b..2fe446e 100644 --- a/dist/douwco_hivemind_loader.js +++ b/dist/douwco_hivemind_loader.js @@ -6,7 +6,7 @@ var Module = (function() { function(Module) { Module = Module || {}; -var Module=typeof Module!=="undefined"?Module:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var STACK_ALIGN=16;function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=Number(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){if(typeof WebAssembly.Function==="function"){var typeNames={"i":"i32","j":"i64","f":"f32","d":"f64"};var type={parameters:[],results:sig[0]=="v"?[]:[typeNames[sig[0]]]};for(var i=1;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":537,"maximum":537+0,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder){return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr))}else{var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0||i==maxBytesToRead/2)return str;++i;str+=String.fromCharCode(codeUnit)}}}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=5297600,DYNAMIC_BASE=5297600,DYNAMICTOP_PTR=54560;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="douwco_hivemind.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;var ASM_CONSTS={6682:function($0){console.log("Undefined role for creep"+$0)},8564:function(){console.log("To much creeps in this room")},8613:function(){console.log("Creating a harvester")}};function _emscripten_asm_const_iii(code,sigPtr,argbuf){var args=readAsmConstArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}__ATINIT__.push({func:function(){___wasm_call_ctors()}});function demangle(func){return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function _atexit(func,arg){}function ___cxa_atexit(a0,a1){return _atexit(a0,a1)}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n")(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])},destructorFunction:null})}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv},"toWireType":function(destructors,value){return __emval_register(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0},"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value==="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function requireHandle(handle){if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handle_array[handle].value}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function __emval_as(handle,returnType,destructorsRef){handle=requireHandle(handle);returnType=requireRegisteredType(returnType,"emval::as");var destructors=[];var rd=__emval_register(destructors);HEAP32[destructorsRef>>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){if(typeof globalThis==="object"){return globalThis}return function(){return Function}()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_lookupTypes(argCount,argTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map(function(t){return t.name}).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function __emval_instanceof(object,constructor){object=requireHandle(object);constructor=requireHandle(constructor);return object instanceof constructor}function __emval_new_array(){return __emval_register([])}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){abort()}function _emscripten_get_sbrk_ptr(){return 54560}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(minHeapSize,requestedSize,overGrownHeapSize),PAGE_MULTIPLE));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var readAsmConstArgsArray=[];function readAsmConstArgs(sigPtr,buf){readAsmConstArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){var double=ch<105;if(double&&buf&1)buf++;readAsmConstArgsArray.push(double?HEAPF64[buf++>>1]:HEAP32[buf]);++buf}return readAsmConstArgsArray}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_emval();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");var ASSERTIONS=false;var asmLibraryArg={"__cxa_allocate_exception":___cxa_allocate_exception,"__cxa_atexit":___cxa_atexit,"__cxa_throw":___cxa_throw,"_embind_register_bool":__embind_register_bool,"_embind_register_emval":__embind_register_emval,"_embind_register_float":__embind_register_float,"_embind_register_function":__embind_register_function,"_embind_register_integer":__embind_register_integer,"_embind_register_memory_view":__embind_register_memory_view,"_embind_register_std_string":__embind_register_std_string,"_embind_register_std_wstring":__embind_register_std_wstring,"_embind_register_void":__embind_register_void,"_emval_as":__emval_as,"_emval_call_method":__emval_call_method,"_emval_call_void_method":__emval_call_void_method,"_emval_decref":__emval_decref,"_emval_get_global":__emval_get_global,"_emval_get_method_caller":__emval_get_method_caller,"_emval_get_property":__emval_get_property,"_emval_incref":__emval_incref,"_emval_instanceof":__emval_instanceof,"_emval_new_array":__emval_new_array,"_emval_new_cstring":__emval_new_cstring,"_emval_new_object":__emval_new_object,"_emval_run_destructors":__emval_run_destructors,"_emval_set_property":__emval_set_property,"_emval_take_value":__emval_take_value,"abort":_abort,"emscripten_asm_const_iii":_emscripten_asm_const_iii,"emscripten_get_sbrk_ptr":_emscripten_get_sbrk_ptr,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"memory":wasmMemory,"table":wasmTable};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["__wasm_call_ctors"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["malloc"]).apply(null,arguments)};var _loop=Module["_loop"]=function(){return(_loop=Module["_loop"]=Module["asm"]["loop"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["__errno_location"]).apply(null,arguments)};var ___getTypeName=Module["___getTypeName"]=function(){return(___getTypeName=Module["___getTypeName"]=Module["asm"]["__getTypeName"]).apply(null,arguments)};var ___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=function(){return(___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=Module["asm"]["__embind_register_native_and_builtin_types"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["setThrew"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["stackSave"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["stackRestore"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["stackAlloc"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["free"]).apply(null,arguments)};var dynCall_ii=Module["dynCall_ii"]=function(){return(dynCall_ii=Module["dynCall_ii"]=Module["asm"]["dynCall_ii"]).apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return(dynCall_vi=Module["dynCall_vi"]=Module["asm"]["dynCall_vi"]).apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return(dynCall_v=Module["dynCall_v"]=Module["asm"]["dynCall_v"]).apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return(dynCall_iiii=Module["dynCall_iiii"]=Module["asm"]["dynCall_iiii"]).apply(null,arguments)};var dynCall_iidiiii=Module["dynCall_iidiiii"]=function(){return(dynCall_iidiiii=Module["dynCall_iidiiii"]=Module["asm"]["dynCall_iidiiii"]).apply(null,arguments)};var dynCall_vii=Module["dynCall_vii"]=function(){return(dynCall_vii=Module["dynCall_vii"]=Module["asm"]["dynCall_vii"]).apply(null,arguments)};var dynCall_viiiiii=Module["dynCall_viiiiii"]=function(){return(dynCall_viiiiii=Module["dynCall_viiiiii"]=Module["asm"]["dynCall_viiiiii"]).apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return(dynCall_viiiii=Module["dynCall_viiiii"]=Module["asm"]["dynCall_viiiii"]).apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return(dynCall_viiii=Module["dynCall_viiii"]=Module["asm"]["dynCall_viiii"]).apply(null,arguments)};var __growWasmMemory=Module["__growWasmMemory"]=function(){return(__growWasmMemory=Module["__growWasmMemory"]=Module["asm"]["__growWasmMemory"]).apply(null,arguments)};var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}noExitRuntime=true;run(); +var Module=typeof Module!=="undefined"?Module:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var STACK_ALIGN=16;function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=Number(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){if(typeof WebAssembly.Function==="function"){var typeNames={"i":"i32","j":"i64","f":"f32","d":"f64"};var type={parameters:[],results:sig[0]=="v"?[]:[typeNames[sig[0]]]};for(var i=1;i>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":555,"maximum":555+0,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder){return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr))}else{var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0||i==maxBytesToRead/2)return str;++i;str+=String.fromCharCode(codeUnit)}}}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=5299184,DYNAMIC_BASE=5299184,DYNAMICTOP_PTR=56144;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="douwco_hivemind.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;__ATINIT__.push({func:function(){___wasm_call_ctors()}});function demangle(func){return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function _atexit(func,arg){}function ___cxa_atexit(a0,a1){return _atexit(a0,a1)}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n")(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])},destructorFunction:null})}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv},"toWireType":function(destructors,value){return __emval_register(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0},"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value==="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function requireHandle(handle){if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handle_array[handle].value}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function __emval_as(handle,returnType,destructorsRef){handle=requireHandle(handle);returnType=requireRegisteredType(returnType,"emval::as");var destructors=[];var rd=__emval_register(destructors);HEAP32[destructorsRef>>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){if(typeof globalThis==="object"){return globalThis}return function(){return Function}()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_lookupTypes(argCount,argTypes){var a=new Array(argCount);for(var i=0;i>2)+i],"parameter "+i)}return a}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map(function(t){return t.name}).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function __emval_instanceof(object,constructor){object=requireHandle(object);constructor=requireHandle(constructor);return object instanceof constructor}function __emval_new_array(){return __emval_register([])}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){abort()}function _emscripten_get_sbrk_ptr(){return 56144}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(minHeapSize,requestedSize,overGrownHeapSize),PAGE_MULTIPLE));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_emval();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");var ASSERTIONS=false;var asmLibraryArg={"__cxa_allocate_exception":___cxa_allocate_exception,"__cxa_atexit":___cxa_atexit,"__cxa_throw":___cxa_throw,"_embind_register_bool":__embind_register_bool,"_embind_register_emval":__embind_register_emval,"_embind_register_float":__embind_register_float,"_embind_register_function":__embind_register_function,"_embind_register_integer":__embind_register_integer,"_embind_register_memory_view":__embind_register_memory_view,"_embind_register_std_string":__embind_register_std_string,"_embind_register_std_wstring":__embind_register_std_wstring,"_embind_register_void":__embind_register_void,"_emval_as":__emval_as,"_emval_call_method":__emval_call_method,"_emval_call_void_method":__emval_call_void_method,"_emval_decref":__emval_decref,"_emval_get_global":__emval_get_global,"_emval_get_method_caller":__emval_get_method_caller,"_emval_get_property":__emval_get_property,"_emval_incref":__emval_incref,"_emval_instanceof":__emval_instanceof,"_emval_new_array":__emval_new_array,"_emval_new_cstring":__emval_new_cstring,"_emval_new_object":__emval_new_object,"_emval_run_destructors":__emval_run_destructors,"_emval_set_property":__emval_set_property,"_emval_take_value":__emval_take_value,"abort":_abort,"emscripten_get_sbrk_ptr":_emscripten_get_sbrk_ptr,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"memory":wasmMemory,"table":wasmTable};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["__wasm_call_ctors"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["malloc"]).apply(null,arguments)};var _loop=Module["_loop"]=function(){return(_loop=Module["_loop"]=Module["asm"]["loop"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["__errno_location"]).apply(null,arguments)};var ___getTypeName=Module["___getTypeName"]=function(){return(___getTypeName=Module["___getTypeName"]=Module["asm"]["__getTypeName"]).apply(null,arguments)};var ___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=function(){return(___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=Module["asm"]["__embind_register_native_and_builtin_types"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["setThrew"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["stackSave"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["stackRestore"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["stackAlloc"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["free"]).apply(null,arguments)};var dynCall_ii=Module["dynCall_ii"]=function(){return(dynCall_ii=Module["dynCall_ii"]=Module["asm"]["dynCall_ii"]).apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return(dynCall_vi=Module["dynCall_vi"]=Module["asm"]["dynCall_vi"]).apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return(dynCall_v=Module["dynCall_v"]=Module["asm"]["dynCall_v"]).apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return(dynCall_iiii=Module["dynCall_iiii"]=Module["asm"]["dynCall_iiii"]).apply(null,arguments)};var dynCall_iidiiii=Module["dynCall_iidiiii"]=function(){return(dynCall_iidiiii=Module["dynCall_iidiiii"]=Module["asm"]["dynCall_iidiiii"]).apply(null,arguments)};var dynCall_vii=Module["dynCall_vii"]=function(){return(dynCall_vii=Module["dynCall_vii"]=Module["asm"]["dynCall_vii"]).apply(null,arguments)};var dynCall_viiiiii=Module["dynCall_viiiiii"]=function(){return(dynCall_viiiiii=Module["dynCall_viiiiii"]=Module["asm"]["dynCall_viiiiii"]).apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return(dynCall_viiiii=Module["dynCall_viiiii"]=Module["asm"]["dynCall_viiiii"]).apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return(dynCall_viiii=Module["dynCall_viiii"]=Module["asm"]["dynCall_viiii"]).apply(null,arguments)};var __growWasmMemory=Module["__growWasmMemory"]=function(){return(__growWasmMemory=Module["__growWasmMemory"]=Module["asm"]["__growWasmMemory"]).apply(null,arguments)};var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}noExitRuntime=true;run(); return Module.ready diff --git a/dist/douwco_hivemind_module.wasm b/dist/douwco_hivemind_module.wasm index f2793af533b94813151526bf92220905a2709ae0..df9b4a875e67b747b365d815523a0e8ad5f26323 100644 GIT binary patch literal 426997 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%0DaghAdOU!GGJnu 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 literal 411863 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∓g2(-{A$U$Q z`FN;;VVVCjWV=by)v(NWg>+PutB7UBRP>P(>_!>bey;L6ljaka`Mn8!e`pj_lJ5!xSmuxk zIV4NVgj@MEsyi#6M#Zaq8WpedX;i$*r%~}rpGNZDndtlI_H#V*vCPNm`8<4_PFUvY zgjT~5Ae(R;%RH5E)Zp0P2}fwHiG+@5t^I+w+=3Y_GfN42whPNVbFh2=<}6rd79Kpk z6qY%is#gumyu2N@7|R^z{PV;zFK5du52RJB_H zmiggOsS?YaT3{=}GDm}~#4@J_*>YIsXq|y&#yQ|KMDP^ITNIKD^nBzxmN`<6Wsa14 zuOo%uDQe~<&q}LT_f=ZG;+0xGd3Jt@{6-?CIJvLFGFSOwb;pxF+$lo+DlBt#-_#QK zRaoZgzL|L6f?4MhmU)%1%%>O}$?OQ0c`o5FKNcqw+Of~t+R!|d(Av;En9$nLJdn`Z(A<~M+R)sa(84nBPUwhb-W7Q1hUU|PWj^}x?tXYC zVVNs)sHaF>JHj#_om8i#SmwjdNwCa^oReUg4>~8oG9PeGf@R+4oCM3f*EtnZ(XhVnRh0%u*_$ypB&pPEc2;^7M6J~ zp@n5Wnb5*ApGfG4Wj+>o7a7YOO;y7(N27NUmicJX0KzgKPH1774<)p)%m))%Smpx> zEiCiCgcg>0Z$d{b^X|ZV24R_xJ(6k&VVRFQC&4lwc20t2KIEJP%Y4u|36}YQa}q4` zKIc>#!m!MHoqJKS%<0mn#4^WK&G?TSmN_omy0FY~S=NPR-u1BccEmF8bTVR@&zN|2 zB9{4-lM%~2=VZh(pL8-}nNK*m5X*eb*_W`)PZ`S`SGI;_jtl25Eb~$8#eii#90^+VgkhO?1;Vh*I|E@@<};?)ud5rD`BWeb%RCnd z!!n-?L>HF%L||S7EHfwzceDh^g&Zv*nP8bC$Fa%#m^|bEF*094W^#N6N9xk#a0^q%L8Z^G54Mg5F&^S9vApDjy4@T3b|F z`X5bbE&UHCw3hyd5?V|Dg9)vr|AB-~vCR7t{@##Im;UYridbe4QIzM|j%5bp<=Sa4 z04xaKC=6KUz@r(`eZPt;N1JogK@3IB5gPAP1zDoV++#rW?h9 zGR-$-%XEeJ-5Yqz^-8M%%t+B9mU*tsBQH*t=|*v)OtZ&YrYkJ-(ZE~oJ^jT=dr!nN z@BLKleW03UIxlvWX%OyZ8iafD&fcy0F+LbqoI1xl8R>ebu*_#r2sMK*7XUDeeV_-s zu*`;i-D%Lw1p7MbjPu66dPc&&lEVV*>lm-!?HEwQqV9zrciOP3`=Jjc^g-y! z!^!od(9=#E_VqaQiRAi8=-K4?dFWHg^)t{TZ#7J+VP8kz3b@>9E6;A|Jx=>+zR>%U z>j$7G5_%H)P^7`W9`>|hUysD}%1+b$697CyTx%-b`T6uT-4!4v|MREH4cfCICZ|7D zL3Yl9m^}2U1Ti@kvNpuzXTlXjO#c7uy?=D1S9#}IRVt~~t?qW&G>O5pXG#h=>C7@S z%xuQaW@eJUPB2MehU}g_yMONN%-QU2JDGEw$tF2x6S@Ea0t6AZf`t)w0RjswNI`_H zV1dgZu)uOGVu58WOc~3zuw^VjBr+Cwzt69GpSPsymaw{7_7NP={XXw~?|Xl}_dfT& zpT0GV9=pfH@0Q6cdxMcw*8<*MJBI#3X9q`JMhs)!AlZ za>2bGJ0m6^bbWPK#N@no%^@Om?pM)nV)8rMx#{%RZ&^o2eh4k!Lt+vRhWM@OZOB51 zPJeycRUZ+PKXUp>trQ+4zpnzsq$YxF`ju0%rj=8&rIk~%rIk~%rIk~%rIk~%#g&uG zO=J7j)cz+X$Lr?&;-A~05vop8#TCPdvj{Oc7dzt88LnDnj}5tH8YA!2gi&gi;jJe@TfkIf5XVp826 zAtoz#?wXi%KGhx(ljd%vU z(b*C)nbL#Tt$TRMmWat@t8Wu85tAui!{TN4@D5IYr7f+!IQ?}7F9*$8v}(lc2x4;D zSuj6_NvDOFoNyMI9mkx7X2(&dZFU@1TdPeg5R=$$K{i?vlQthQF=_h(k(ivjGdqvA zftd8Ot`UA?#^LGJ>$>A@iMyJmvgHF?DlYXb^v&rTcQhfSsvhFl}Hd%F= zh{koHk-|Ol@r@Ce2l4V$z)6EyU#Lm(ut|#N@Ek zL`)7kO~hos(?m>ex&jk1x$ZO(ldDb}F}bX^eMC%--Q`CJA|^-0;)uy%u{dIKP%Ms^ z>=%n8CO5y#DLZ0vT`XyYU}ADrtZgMG{n95AleVgP!4Z?TaLW*rwk*pKlS|x*`;3@e z5NX8ZoJb=kXG9t?IW5wN$w`q$OiqYwCML(kd_YY8%*3RvY?+v}g>#0O9OV~CiOFFV zOiT`{U}Cag1rw8-+%8viFfqBVf{Dph6&Yf3S&i)>CT*#nAtr4_zJ-_^`*PMdYcDZr z%X}s#ZIfV?mL%BwehPofzkp3V`ilXzPJc0sPSIZso;CW5A#)I7ELzD|O(^S05VAL?nNMT3r*G>Z_E zri7R@CB&pDAtp@;F=mdgY0wtHy0fop*f0HM7s!Z7 za5T98#ZF9u43ceN#f0QTp%Rm7LpAvCe#uH3ZL;&5Z1nl6*;d`gR@=r_-^Mm?w(M@} zz9J@PTnD5&DTZlh5n^)ES&W#RP+P0*$CF`=JE0Mi%P|e`crgqfFNPB_Id_h<%K_jQ zT6QmpNg!iLNr*|HV$z|M8>0@D&rmN$Od8KZrEel8_1C(gz&PMnS5RJIwlwR$FYy6KrjOoH1pViMS1SpUj)#N-?UeU6x% z7sIZJNlA!^NuZdp+`hB zF`h0=??4uS0J*T^Z^K{X?AJU+Mud zIVfQ!CWkD%dt$Qkja?FxU-)YLKzlY~a_*~%XgdorIrUXXOipXkJQsgnuP`w=^VK~k zChwCB=4k$>GbSI9=dmVY@?od%)x0n<`3)5e1wEu95|iI^<#xp6V_JY+5|bNp8xxb? z*Dz(6K%hM(Cf|N{YE>d8-+gzY2Z)%w-d*>^CpFowep+iO5|g*Pig(21l*Zd7 zF?pA!M#N-Y%9+E$(q`WUjDbu{!s3ZZ8(jk;;Lf!?yfvPp(e>cu@tQs#j?$WcGs;Uz z;ybHeeFe$kC|^YqE}mZfcO)mGoXwG*ih6G6vL1{2`4N*;ooyy2=iTeEGh*_7*H?E%OwMW7WMc9@740S_ zAJWcE#N-3k(b1*$n3#lvA%3fR8?q20V)98>eMC%t-|5G-QkbxMN(G2XO$6EWE2m_o zRf4RNk}a*Ak`1rbmUwC9l;YL5i5FK+E;kK}mt9Tme`0cMF1hzaOpZED6;}+y&LYI* zptDeg!^?6OVnR02p9;ElX-vqv+FH5DASU5}qGdB@Ois*YcZttJOu}8o-P;k9eyZLx zVzRX#ww0K)Ie(YLWGi20-w>1kIG21LA||~Lv@X|#m^449J;bDUy@;6fo(~a|{r5!I zE#v7hF=<{H6O-!p2r;>dUQYiAX%}ZqI-hEfh)Hv|S`(A+PNmxcG5OYeq)?HV^d8ub zh)HwEA~ES5vR1^Td1oLdv80q4Lf4m=A%X^*#(A>}F=)sMC5tAuieVcfRm`w2+7O!d6IXGi-kBG@SUJjeb zgqWOi7R-;K=Clx#3|}|KfU4ZT_>#1tBI!?#;Htej+B5JJcEc)(#PqBlFYG4CSr2jX}rEmNAUVq)z)TW(p*(0Ce7*HLQIZ) zEsak^Ob$6s#N>d}L`+tkCSr2K6_|+0HK&P~TyYu|vU(U5(oowzA||W%`4NJM$q}(Q zVsc0TC z`VTlwOaF?~wDjN5m%EvmTyypn4g00P>;f4v362IX^{Y;U9>U*uV%G`3YD`Jew+syq zA~^LP{bWj?FV#Nk?f80}BHf)L;geqwN=&K^clhsq$x0h-vh$m4 z^!cjUR^7%{+s0Pk#uj&ov%9VPikPgs4oG!U3{%b`#AMA`jF=o(TdVEIlL4?6YTt;- zMogm^7GpRc=3_V!le6bYyBq+1A?>{&CV`A0B_Sq(ib;o3Zj3rqK1012F=;#t_u3JDU*od_SVkCwWRk(7Fnkxk$aL5{< z4Gax9&M>B32(=h4hVdBAhiVKbVsb=nty;f3tn+h>m|Tfz0LY8sLRgI9VwjI%IIS_9 z%2roft7ql{@I4_W!R;9_32ZN{eSJG(a+rZWM@){0Vb{c@Bt*m{QfMM3t9bmFkb_J> zPC(a0GXXgTJ?-=i^sI|N553^7FF`j%GcmaWz3Q&7LvOhIEAPR#_V*~!coB$3=poTe zOpZX0y6a=m=l5R-4ZU;2L}Cf_Lr?uL$-9ME{XBqp!d)QFfIx}V>n92S;CI{S`d z3}a#vmavvD-Q3kj{B#^$10oy{lc<5`M@-UW)n;O{dVd;zY007IEYgx=o(KF~crU_m zq-Z!9L-1zTS9e8Bj%wHBb;pNQ#Dz&wp74?MFsyX0{B#BX`NRXY)!Y^E{O}KCarwuL z?&Cx*jT%bmkG*+Z1vz`=yXcNL;eTiN4x0S2O370Rj^WQIwR00O`7!J0xE0GMD?2To z-mA~R5QkNjRthb2;8{{WzOK(ka23Ht_~2xIRL$gIh~KK-hFm6M@^)8!L`>f4^le%x zJV<^{1&B#a1P|~lr({hlr({bjr({bjr({bjr({bjr(}yOCzqRst+2AIsr^q(uA}7( z=@hN7>NHhcF)TZa5R*&JLKO}#&{>EHnRD8hkQueLa*;ty!U09gW{Ann`?I^mXCWrx zuHx?Ph)F+H(=LO)VQ<$yio577pU?qkIGG3W8ckhasZ_uBU~O4nJiG$D5762V+e%E@ zoWDzAvXw7$J93DBC{OPhhK8VTC~bjg$!<$Upx0UB((63%OY#C@fUuzqBgvI-#4u6+ z#0|GSsf8qm#=YycC-fQjr`!Gp!Mhf-#H9CuX5^X>lji5}`%L46<>Og|yQL^LWS~@= zu-1QFa{3N(O-}sVJe8LGDjk5q?&CmwobgZg_e1DEhoOo806=Kqq5R;~4kIa-OCX+3V>dBTy^<;~qy3db| z^v+f>a?#lmF`3eX*R6Ya$(D%8WUFrzFArq3qxPSaBcGbXD}6EQjB zG!c_SP7^UX;4~4F6{m@q+~9T=BGZV;HMO;wm^4?FiAi&Mw-A#nt^h<#Hk>A6a?xob zCg+_dVsh4LA|~rj6EQjEv=Ngvwe2Hfa_u2MLJ%>zA{IwXHpJqH$wjd^Vsc(Aj+mSk ziz6oMVo4(e6O&V7Z7VV9mp+l0v{lUuj+nHCTZWjlWm$%p9RC)#ww*Cq6=}reh)5$Q zheR4NIUv%A$%;rLCO5ci_carfYhpeiCVysP(pI)iOxnUZLrku4ODHkfP{G9Hq6#J^ z=T$HDnmH)}63Y0G>j zCT)}81x-xa9t0DUwrP~gU5^EL`;sTtyS7(0>6;Vq9&FldQmhJlMU!)cYPIl&E3BNz3Hy^Uk9A`x|H7`=wZ_!CPyXA#AMaNJ0m8);)uzi zr}*=60Uh-fxt>$`{Fz@sr@gwb@QPfyfOoQZ8eVD`c`9G(?#q`BUtZ`g=jrFX%LVFk zPhb$2-}lx8c7R-d?cw-^_iV`JgAXU>=PbzOT@O3t@@`F5$45c^+#zq;k#ahcqvYTt2FTsiLP;MC9@(uG|i}{E-%5m&oPYzQg5aTEM|`EB=l+=BP_ z+{oo)uCMM2xqMK&<`7Xm-%-(S6K!prB|}0rB|}0rB|}0rB|}WrI&kd z!66;}*n&LYU=sIyRo!%cG*f=ULRHmIauZLNH4AeZo9 z(Xtuja{7_%HuG7KOZdCEdpqRPPu1^7PummZvb7(!6}hxIf0xMR+w`@hxybu6x1$XE z0=azKa`JiTkV@|Z^~*IuF3r#3_xZddm)`Xv8#OsY+e{6m+JNi zayhsxF7+;uOXpMV5prqnR%_()##Fi;AeZmeLPg}#dtf_4F3ll}$fbA4S|OKr*_eJY ztx08u7{r1Qg1jpYqB;CHZ&pDrO$l;oN;cU{dE_$L(x{$nX;e?PII8>n*huee6+<7L zEg_dFJ$T)^37BjNxlFeDHt`a2nc_7pUel~|fL!hoaygHeqmceV0+7pDXTkg!>P`!C zIpr)eJJy_qX2)@-ZFa1xt<~%Z<*k*7hTp=4df;X&%{&5xF!cl95YuHMby_E8Je`kjjSBgj_B|ImO(CUS(ZUASGbeLLn<304Y^ztX~^ZgNJB1X zMH+Hh7iq}ll*ne}vL@yOVrVfzH1LSfy$Yt%xW2wDccxnwI_pPJ86C;_Mqb0QjZ9 z>;f5b2@nSxKQDIV5@?Z(PRbd{heAaz)rM;D`@zXd8*Q@ln{4#?s@YcE##YI7Jyvj}oocNRk~r_|PJ`|)G|?S;hQ4A|FoDYo{PRQlr zInpi%kYh-DFOW+xXGlqqOR#3rp;iSvqYjnNP%nmD8qY$dZ$d8hUf5m7J3De&U3G&9 z+5iVaM@u0L#V~N#7{>R#7*1H?#yM)P6u{6SYld9T#xx3{9>X}OG=}lB<}sX*%W<`} zYW?m2HV@A+gX0R|?93t=UOi=h$2`LGznsciFVYxPVp@AOPUE&=`-atZD)RDkAn z%IL6m2{C-XpD&yVV@w1(9Y3cV(pk;@I}O?SP27)azWBa!^PA?RVz{Jc@hp9exN-YG5P7I647=RV)DkP z95MMJO`3_xF}=dX03-p4r{V|LrjjQOtc^-N4_Wh zKN6E46a#ldM@-(R@pef}enL|tO68+c&Kwq&*Xis#fiaDVNmx8FX`^dE1l)N*Og=wi zlB%=K#N@5+_1GCP`8n5DcSTHoTD#^D5juaXqTR&gjCO7!ChxG0j{Fc>zK6sl91QVW z)!PtPhlt6qx#}Zg@_wi9(MsV#@;((HCN&Xc(>butnpRFJW?DHVTUt3KTUt3KTUt3K zTUEzyzpb`3=riv?uP4ta|QX@i4t~(1=IR4>|vk()q?6ff< zOKNN7B7>NO1B#Z-5R=1CXLpIuLQKM4#ogNxlYXk+Gh(u}AGVd4v^js5#AGX9X5SE# z-+nqvOnM(^Nv;VoX?_mB&*z<(^sW~Xliu?oVsiEA==o$koi!Sd%?o2} zU0-5`2pVh}=glg_q$wdLP01daDNjr$TN>4qEsg5Q7DsiT9~l!g>6Jf2HnA~W} z-vuNlH@=@5oj#kaIZdBUR-C5KCJm?Qv&o{<^x0(IX(A?Poi<{!t~USKZ#PCL2x@F}dh85tH*y zqe7UNoK@RCA|?m^!H*C`Ojg9=h{=r~aU4fXu8GAFlPh9z#AHJ(j+k5&OBx}Vn4A}D zTZu`(^ohizt!iFy#H20UGQ^}U%QD1dojZLbCZ|LiFkjFq%HHAn6yoT7c?h=QZq?{;~^X#3VQxJnzL$ zOo9xOZD7TO?`w%Rtf`Zl(>L!8}h-B-lqxa+V~ zCpaw7S%jDzaTX&cht$?;`|)G|tcBV)VsbX7Q4IAM&WEWOPQ+yG9BG#Wz%Qh|7sMox zF{C8KBv3KwP|A%_hstND7b7N(XQ9$J5tDi^?Cyi}*@?*wR|nJw!HGl*sKOWqRT#sd z3S-z&g=%ZnDy0Af4p}o|vbtfzS0RkVa4`(Ua6Syga3UrvYHRhJ?f|q7&oN?hKBj?R zt&U+(nlTJYGloHF#&9azxY}Ah6K8SLGl`g72FI6UNHPH13yT}u5tFM7^f_X3O$@sx zCM6*vCXqrDF}Z=qZwfic1Y`eSfoS|IcgQ33u+yW^RnZ)O9D2fCpM;(g&BSCKdd6L! zgPwQyFG4T5>&wt9qM4XngI;&nH=!%=lS^_N6O&)p@OdF7pK`5A z#N-cL>4}(p)?N3+N5I77 zPbAkuOb-0m5tG+yvU@{J-jFiUf|z{okDG|eo5aveOpa>2T@sVGXlg`Ej!8LlSXkQZ zyH2AwFEtTxXH44Y8W7=tm_!XcKVp)qv(3chq z@(bFziJ1JHb#&xskBLb*7~;38w;>B5A|~&3)knnS*PXswD}@Kiuc-hrsfi$)&VhB- zv~o%@)5(#k2>(#k2>;>yWAw_z)+>}qQN6O#kanv*SOOjewxio==k=o^I$ zF}da}RN?U2oQ0T>hSSD`EUK-Qiwt5C4k%hSLre}mo82Wo3o$vwcW*~b`l)))h{@J| z*j8fF=KNg}ldXK2eM3w>_-vM#^ghs{ToYo_{2YFt&pR>cT`wXgz2`&36V15k4 zP75(P=qxfj_B#vBj+<_dwb^l9ZLMZU5R=$$!TZpXn6&wbiAmcRh{WW?W_BKJ12O4m zT_YxKBCItNlj}|SyMV;x`cG1$(`S=ar|GlFveWe0WXWmzY_i}qeKwhMnuy66r;V7L zR-6B9azTj6&7WlZ$$laxlRMNI{MHT;lbb)KM)Snvx>y`BxhfV%OfHMX5tB<|am3_; zSR64qCzixRF)=wK*7g&V=4df7X&%{&k(e|ml8H%kHMbCx)6b>XmwwiJ(rF?lC!8i? za?EKWCP$qnVshANA|?l&He#}0ZEYqd%~fS$(wyEc#N?*SFcFjMP7^V?>NF9P%T5z9 zx#TnvlM7B0F*)b75tB1&+egG?|COJZ@v zwuhLsrFw>#v=#XlVzU2@g)o~djU0M8)&cnOyY>>3w#;W@ z(l!ZR(8Q$eK`=3Cn-&>ja)##&B_^j;Fflo)f{Doq6--QysbFGqR0R{0!zwbwydos{kPbl`E&9#g5tC*SV$zfllct22G$q8ODIq3J2{CC(h)GjIOqvp6(v%RB zri7R@CB&pDAtp@;F=^_6m^>gRcSB6}znQ!S`PWvo^xxE%lK=u*`mZ}pOaE1;Y3aZ0 zG%fv?oc6@zg0s(Q*f0HM7s!Z7a5Q-Si=CJR86=~VVnXtvP>D&kp&I;mzhtG2Hre@2 zHu`+kY^!c#t8HVeZ)1x)#M#}}eML-;xeiQqQVgTcBE;mdvluZssJ2$yk0%3QE!4gd zlQS`mVwjHMe3*>kL`+VcBkghk_=U9hf|vv{hLnVu1S%#SYE!r|>QMO%^@EZ|UGv2H){+7bO%;n_LS%}Huw-iq10B!N>J)%i7F?oYtVPdlSmcm~DD)(PY z1|u=~8F^kLCO_x&Et(f5CO@r$p`g#Ih{WVqUAY}G`2{V&E{Vwnxs8d*do+Arh{;D? zs}eE!geyG}lRtFVJu&$$Ef>QBk85QxG5NHL^F&Pk#MLvt-G+g;rfx~Zk!x zIYflcU#n<0G5J~T+(b-%#yUFkv&Y0F91QVW)!Vonek;xp!vJ}gt3Dzo?{WHzS}8n8 zenka{NlgSPI0x2Q)5yPDen#AM}d=41;o zxq+S#_Y6>|Vpww)Ib(9gS*XI{bvX+$A&X8M6Ed&1RxUD#NjRWr*$go`@V4wO@mYvT zxU0B(J7UsL)q6%vw)Vre5|cLP?~<5o<;(0FV)DMX@m$PPFa0XF_krf+nh=xb=kWV{ z-ib-?dJ!?{Js%<_8*huAPsY<(qw(0hFeWC|?Ga*f5%0<_iAm>E?GZ6)?pAAJ@`+Ts z9T1b>(LzOH(tBV#A|}lti^QaN$XXGT=AD6<#FA2G2wh)dh6oyL8t2U_#H1-9CQZpm zZ^{#s$(Ba-WJ{xZvc*x|=f_5RXR8>w=xm9YOzFYv)|n{T5;2)<^=;xMVlu^RSiGiL z=YW{pBVuxNAkBtCOb$B>9E&jMv=Ed1&LXqprki7Fc3gMbX2(^vwVEA4Ok%qQ??X#s z(&i&3CT(9J5|d*C*?F`L#H62fjhM8Fu+~gWt~TZG0uqy}Z%>U*pG}sXrq3ozPSa#1tBKa-=6I!`-zxL?oem&TRTKduD^pC%@dQW zVsXUevRIUd8o^ylVsXUef><0eIVToJOwNcU@lZ@mPK&ku#H2Y|OiY?b_F^O^&52}U z(p=3g#N^~V)9XvbcL`)7lO~mA&(?m@6J8i_|Cb#_+9c?Bi%~fS$ z(wyEc#N@imFcFihP7^V?>@*RROHLCpx!^PrlXFfJF*)P35tGwu+egIY=DYj|LB!;` zSR66ADi$3f77=GzERL955{n}y7sTR-$vLs45rT=y8L_sNnDk4ZNKD$Q<^@Mg+QKbE zOxm(6LrhK%a%&qgIU&-B$uW^eOpb~)Vscod5tD-=jhO5g*-T7sa*yvjASQoiV$xQ& zOibFsIYUgYbJZ&`xvGMR$z>HxOfIQlVsb$R6O(f)n3$YVks&6h)z}_l(w6EOV$xRR zTZqZc!K`oAUSiUg`AkgOCcz7un6y0zCMIpuB1240zgv8X#R67dlPZ{)oKV5Ui`pYhm5tHC(ke?SjF$pqAwtMw{&XCL6Zrw%DrM*lOF@>f6}j4smw3bzc#aqkowezf>p1FzhTs zOb$AW5tIFDYqkA&GE}(}8ZkK?(*PS6!(iiLI1!U$=SaI80Dhrm_kx%NGKQ3dm;@>& z9ZI<|>QFdi(S2n$V$ygPDt!|%srP0(-r0%CRaXbp2k}G9(NYLYFvMV z7%qg#7%qm17{K+rQLf$fF4q3wvtO$PcLFhbKBPNG6X(lG$t5=wq9DUE86O*?{1|u=~DS2Kb zCjZvyn>8;?Ony=YLqWHyh{WWVUAY}G`FSnCE{Vx`xs8d*uV|R2UIKwILQ?Q?1d9@U z06~RTe~92Au{M(RIRy1LYM)NlMFbyqtxCk?W3Kc>Og`QBk7#8uG5Ms5 z^F&NOkif|z{AwN1q2 zbzvtRKYL6}!od)~RlN;a z2oW*)MOS@9On$}bJG4@Gko=Mg5R;k+vgub&$x5pPSve(JS~(?Kb(?r;<&@&pw}}^5 zPA)f?G32?~)ztncCO6UY1^ri*U_!#W(^PTAu<9&AOfEYMRXF}#jk6FFvf#8aA#-YL z6m&9Z%UuNGBllNYi zB__QOG$+@Dm^43!-{dBTy^<;~qy3db|^v+f>a?#lmF`3eX*R8WtvL#|N z+3MTGOT=V~*RXg^v(5oAxktq0$Z%$M#IJG>ISb~;FyOQhlND!?*>MA}n9Z>?JFYox zv*U`|TFs6iCb8Xu_n{>*Y4Z^ileRAqiOK44b{=g5G3jSrBPMMktThvpD^2;kfW+j= zU!~@v&n6A0>9fhA)AZS7-f8-5GV3&bHmN&J#N?FIMoiY!=0BTU5Mpxeud@AQKM|A3 z9qJ5zYln!*wf9n^d17)!ERL9Lh{X|;i(+xahSSh{>wcL`;r2O~mAo(?m=TI8DT4#c3lZ zH@NNFPE4As%EY8Oy<3RMHJ4!`CRdy$VzS{h5tEBf6EQjOG!c`tP7^U%ciM=_DYfk* zVshhseuN-ma!o9bm|PKyBPJVSam3`JSR64qFBV5k&Wa_C5KK(g#oAV4(l31?F=?xs z7aTEZ3%3k0Y0I(BWS66g2y5NtY z$B!Pu-wp2Z2gGFkXC@|XWy{2*Eu1sN0iR4_3)u7ZilstP71M^rE|Ii!M#$pIA^VzQ#fHV~7uw$Y*=>S?1zgN~Rqix88h zgqSoX#H1-9CQS)3X-bGmQ$kFd5@OPn5R;~am^3BCq$wdLO$jk+N{C5Q2gKw7F}WLJ zazkH6`UXf#|23y+>A&JME&Ur#)6##@Xf6}j4smw3bzc#a zBkxa(U#b)QBD1pyF*)EYMod=J)@u9lWLV)&XvE}HOrscTF^u2AiQz;{R?m@kIRN}Z z%kBj+31kc@2{8#&OgfZuW7MH=#-jVmY{aDTEL8d?Vp8wTcD%C_lPj(cs1E{qie)ijp0OVAC`OiZpouR6UBz2V|lZUE7EgCiQDheR_m zIRZWEu8%>Fi{|ImpeNn+Y3RCWCMIX0=iK!L=tXyb1A5tAUxi+CdINgXG>FN;_j6vE zm>jb3ujlh;egU2C>b}A&a^*rf4>0xeLO0$m0;9?>QAhcqJ7cnX1zpe|wFCZ5BlSe1zyyW=JFT;E_ z#=uMeu(wb+RW24!A&m1V)mk1F^u))k%MEXe##W`hScz~zan>0Pw9!ST+iM4e1U4Be03jc zqHs$7Th8Gz$2$u79G;#-)%6yR7J5Rdlt-#`e^|r{gx;9VjTLbo37}!@n}u zgCX|J>+pQePAB?PY3NX2M;XH#o=E+ozzq?e%U{!%y-ZIpoA^GX9}PcbIr7 z+7EsBC@Kv7fx1Fh82twbwj$|5=~%ggx+L|}kUxz|pbT;^>?>Ryj{f2AaI+P;xq6<` zvb_qu5oIfK)w-^7d7(@_=JG;G>bn!Fd>a3Uk^M~&R1~}vR1@6Oi+x?xF^f3!x%Ut{ zW-)a9S`JB2U7wUBx>2OhcD)?;!tp$bKa^tW&7I{#)M?A;XPx2bX(ZPr9gH8CFZI)- zOQ%t|w^Lj3tI4;bjyOASMFhMCC^!C;=@06J-vcCB46mZ5{As?>aVG!g(lb%u!l^Lu ze(L-of6XzR*8cvE(vw}UMyUV&sQys-SfRu}ct97{x_Zb=t=7dQE+NAlKowBCQ+wxK zd*`*iQ8C%}&U1TbFZZC-+}?R@Z&Yll%!3>~h60xtE-ll>-aU9piWHd}{dg~~qlHU7 zg)`+t@B6JB|ECfD3!353$I-n)t_PJZUHOf#FZ{xp(i>3zwM(w<%TaF*Z^L`1ATb=X zaP0>of^s${eDni5V!{VL;F$11O`2C5@762Kgb#n9u-B*PepoVyS34IzjBG!au5lvByuUh)nqBUAY|-eybK>mrVGq+{R4!of@VL?>Q6xfNND^!XI*_ zCno%Hcil7LU(<3i9`&GB1~cK0s5nnd`1f5sgH8#XE`!8`S8j~mG($=;6aHPvwJ_o9 zS_Edof2zsu%_+KXO_^xHgum&=CMNuyV&HD*nD7COw@W7cdQFX(@Sz*|9m-+r%+?ok z@bWNhu*Eas=065Rz?}!D=srItoT{_UOnCLiH2m(23BTF()m<^+quMoxh(Y|Yigq*M zpVZEcxioytI=T*&I(f}u7<(_zv_K`Xy3O0HwuB2uXa>%OuOrCrUM>*pxrki`GC!(j zT0*fW8FW1*mx&3#-Blkk;deTHn^p=BlAlunCR`K21N`1lveG_?>;olR+8au?>NfGx z-cX8H-zHw%8*;g6SiJ0h(f((`*U|C?$AqssO%+!R%g!Q9_>!|wg=3xUEJVG{Ic?P2 zjM`dl0)Pp}5*sa>VZt|W%zg(u3lok7Iqu$$3HMX=o-yIA{jjY}xXt;yWWrndGW&)J zzw4$f6YhPW8M!7*xcNE!KA(3c+`C@HgnQ42nDB+0w)b?_XgoGAjG1tCdxQy}yGdN? zp^Fji7NmoP7>#wK2oC&`3~cX1Sck(8A?SRnJz~Pm-D=H*Ka@(h119_%TByi`dk<_! zOt?8@kqP$>St};oyfZN2*ff(FLU+(mkwJr~TtCj6RhV#7!i1ZW(ccty7Hwp9X{J#< z#Y>}lvc*x|-Mh9;dKF`{UA)AEr}W@;>+FBI1p)AT{O<}~)}#^@Z2akcpm!xw}JU-@9RpX?_lJh?-i!Efyl6Tb2xYBbM;H^kzY z@I|pWCVXBjjtQR?i(|s;VsT9Plvon+$xL`ntnFvQ&Cy~e+&r=uBNJ{;Bs1aWYHne| z$3L82Ut+?mP7@P8;xsYgLrxPDKHxMl;T5Ne3E$v$mft4D>$`M>oD{XS`4nAqRhbDl zr*{hzzTyf%OnAd-V!{`lCMJB|X=1`>ohBx{?ldvsQ%<8oRu7{>YHHg@O!(SI{0Koz z_=;E@6W$PuW5O53;+XJxu{b7tRxFMQuZty(5X^*6iM6dvxL^82CfrsvFE}RL7H%0P z+?Hh-CVYI1TiclMsz_tPM?@MEJ|xnZ@Bxv=gjYlw6TZP+yRVrEUla4eDY`#16K*S8 zX2NaZoMFOOxFwVcZ>V4{jC&1D2`=)v-UFKw#;9lRfug8yr7wI+k;>x+%_#TOnB|1;!7|S zKCXh9@T!Vg`f@&^qE2E+1vB9TDwqkcsKCc&{C!8DFF|1OlGA-J!QYL-Y5wew2(a{G6QzTaScd2;_tJh;U-=Sz zX|78%YThZZU-kHziECDPh7* z2@`Hgm~d0Vgqsp3+>|ikri2MMB}}*}VZu!vFyWvWeu)sqTe=0K03%fGE?sx1r;Ps+ zh$pI?Pv(l#j%#?>rK(R*vx1!{x*A>a*$Unq2KJcgL$w_QZP|J$!FxxiemU z@Myd`f0VBtDj$kh?>iQ+&K~2dUFEKL^^3>j)v4or72AUG>g^ZBtF?>xDz*vZ)hE-{ zhFrxoTjD!qSLhWpLd#;{OB(%uUu98fG$5+)oltaKJTkZ5MYN1#XD z^)cvi(ZZBNPrB>V&~>M0q32A4315&fGvSLC-q|U-o(UhkUT{qTWOqPJ-te*bf%a^~ zi2~o(chtuIbw2Hljgbjy?RAX(f!z-6O*?{2Kg&75tE;i z=dmVY@^78KS@R;N=&E2S=vEbxnEbLUw<9J$uLam8F*z@{$tk)TCI@KGiOGjus}eE! zm@7S>qU)}EV)6kk7sCUOXl2MLx+=~SG5L(EXMDR2{U1-=l26f1dMh#ceaW?+qN_!a zQ*=MRr>E$qOtc^--|_J#V)8mMa5r?sc1BG8wdaDOx~)Un~2Fz zSx47_au10~I2iKgsJ9^tAwEUdRUe+~I3DLhDiNd<^WO$6C=4y?1Ll~anDR!+&5 zR!+&5R!+&5R!+$lS5EG^jqO)c`=6NHM9UW(F}dzERUA&ybrwBE*IB5-af+_95EHWC zv@s!bYHQ^pgP4Q^ik8g~ll`}3cZttJOu}8o-P;k9eyZLxVzRX#ww0K)Ie(YLWGi20 z-w>1c-jXFIy$>`e*Yp%!b#3^4KJUcj)6VtcQ*@o@!>8!p5bv-#6yjTjPE)Ok z$;VRZc0f!%q=kyaX$HHjVRU6=Kqq z5R;~4-^`RJCX+3V>dBTy^<;~qy3db|^v+f>a?#lmF`3eX*R6Ya$(D%8WUFrzFA^eP~Hc+I%FZ=;{azWh{?52Wc$f}A|{hNgj00g)()Sd`$=jv zPfV_e#SxPYu{dIKQ7n#_oEM8DCTGRsh{?KG5)UP(=!&)d#H2Y|a*D2cWG_Zy(l*QF z6kT!Ca$AVW+Fz&Fmrv1knorSnnorSnnorSnnorSnnorSn+K9;wZu|D1qN}c|oT95k z{uW|#&1INR(RG?n(RG?n(RG?n(RG?n(RG?n(RJF0$tkt%BVuynQ+|ZtQ*_1Rh{+YP zIAXFP7Dr4jip3F=^I~ztjmU^2vH zt;Vfw#N@b0BPOdNjhGw}X~g7^NFyc(L>e(!5!p;kZg7u3I7Rn)oT95MTRBBnSD_hV za*eCrPSI7t#AHJS6O)T7Ma*D1BCMN4DGQ{MR8rwrm+EP73OxlWk3o*G-%lc;R zB_?f|&%~r{61<>^N!x>9V$wD(GQ{N6r^T0GVzQ<}PSI7t#AH3CV{-B_`F@v>%+Tw9zIzzsW|QubOSu zZEUq|Z1rtyafdj&+q$oa$&tTFi(je}oTBS2LQD=gi&2dgwYA!QJc*N7sS_G8ITh2u zDY`L?Q*>iE5tG$(q+JdGzmWD`5R*X0kdhFSK*gj(DK|zP3a9A0&l^TeZYs}0rEel8 z^SFZVV@?u&%aNty03dwNzdsCWj`i^$TGj zhH*?`4C54C_Z%Z8*Us^r?f|q7&oN@M9@E1qx-pDXbYmDCZ485>jp0b6 zGl`f4w`as8u)Q!lxg9aN#6X`TCL3bdH8Cj(5iyArnuy62JbqQkK_(E_p*KV`!C3hK zh{g{%q7iyXG{+x-9(C8ppvOfsF+b$p=s9}*BDc|R z5YI5pM$; zJ}<;%^)sneiJ1JzXA(U?#N;R4bx%x=NTxa%9{7;lRA6HA<0{S*F*)Vx8Q*Th7hML4 zn7k|L3`bC*Bb92BYau3Y*CH@6`6W$uZ_b#!CuO1qG5Hm(rD@6*aRqNT@cVq;iAnEz5i#jKA0j44Z;K;O#?x7&@z}gDCMMPG5n^)qwp|mG&ZpX= zGbYX5YE4XjG?i`##N>@ys7OqD4{S%oq&Z}fnDh==D`L{TGZ2$lQpyZ5i1i!zb61OIqxi(AH%HELQK}3MP|n-XQA1#=CsX@ z<7#U)JA#b9jL9{%`OhX7gqW=TZMGfu z6ET_Gq0Y?K4iS^J&r+p&Vscz8j+m^9#SxPuVsXUekXRfsIUp8COjg8_cqk?&H@KPm z+D}ZHqs7Fed1Nm}V$z&QCMM0*+(JyQaqGx&OGHerI8DT4!)YQW7o8?za^7hoCTE={ zVzTZuUSB?Aa!PG&K4a2cRVF6Q>D@w1)^1PZ4H1*$P7^U%b()CD5vPfm9CDh7$pNQ{ zn5;OB3gI&*H?%_b5ivRSIX^-WF~XkOxjXCLrmI=dJQ=d<+GA;dUPSetV+-X|+SDmJ%|A^DH^dE8>t}#;@v;{EW>=h0B zrN8U~88Hct2J_vEotOj}B%_mJLh_+diAl9J?FT0-ZM4bGZ?e(nt7cnu8(VD~TYVc_ z+#$~Hw(cupa?y7zlmS$pvj{Oc>nui0*45T(`|)G|tcBV)Vsayh~ZSWMYXkhCXNQAXA&_9ZqJBGV0&Sp zz8x_+#z3DVCdb9FYhqFoB4QFLG!c_EJbqHhK_(!lq3fcVn4E>4b9w=K(Zz2-FT3lj z&}*WZnB0Kgbl3ZDLUC_mqLH6B1U)R8pEn9!70txtIP`?OJ_$YL?yp17xa)J!^G+{9 zFPR20xh!EOCRZ%{8~MEcK70YcsLj6!4AnAv}YqG z8}&pEp5=_mxw<1J=QU}bi~nA)FfqA^UcJY}TlnB)+q%dgPvH zQgybOm|S+R$Igh!CtY9N6*1Y+uF1sY<0{%sO#VPSHxZLhSw}|~*kfW64u-rr>TSqE zh=|GOT=fw#`IaxF0rgp}6eg_R_=QMJY9h#{b6`WVrj=8&rIk~%rIk~%rIk~%rIk~% z#g&tLZo^hs+11qkCnl%9V9u`)lQpNQ;_#1!oJEMqsDcn1s8EySF1I{ZzeY#AItfY%4KobN()g$yUD1z9A;x`Nib( z5Haa}paHoi#H9H-?I9+;>qW$*_k4($9Qk4#X)>M;6O-nJF)^ubj}VhXU)(h@>3pg^ zA|}nr3*kG}tuG zn^lNOQ$kFdl07n0o|sIwG^!_C8r736j_N)?HqtvAyd>S5OZO&XGTGpDZ;6+P$rP`? zO}s=*rg#mD*EH)K5R-dEOfKN%C}fDqIcLHA7-pOnVshG9WOkf%7MdL=oVM91zt7l_2<(igMyXd8%0KkFJXX%k_snV1}#$>#3@5|d+JN{vpR zO-7xj&nCl8(`S=Gr|Gjvzti;DWOF8^N1sd9oi<`}Rc-#W$ps-MC%%+zhy6rMCU>Ya z_^llxCMUj3mF$VhF|jyea#Spim>d?1BPIvM;)uz9u{dIKlN-1%@lZ@mu8Xz(#H2Y| zOiY?b_F^O^&52}U(p=3g#N;ZsS0W~tohD*($!Q`c7n~+ya?WWYCTE-`VshGPBPJ)+ z)@EYTTva9}&FS4jOitXD#vdXk$DAf&a@1)eCWoCSVsg-FA}0HtCSr0kTOmwLuB&Yy z5tEZ&@goEglM`Zb#N?P*95Fd67Dr4Di^UO>gJN;SWWQL_2*JeU<}Bx+t;D2X`b1*V zRy8j;V$v3F8Di3wWf@{}l{;x9CYMDTF}Wnth{*+!Moi9$G-7f_q!E+TBAbcHNiiP~ zlRq;tX)9YMCT-!IAtopI1=2Gn$5b#eIjVw*$zc^tOb)7GVzOTa6O)_VVpnuzh{<&| zwuhLsrFw>#v=#XlVsdge>zlQgn6za+6O*<{@PZ~LZ4ZKpN!zr@5R>aXjw>;_s)C8h zWfe?JE~#K*azOVTL$ASQQ1Oiq3^xyrQk zpKzL%{$ozl(tp%xTKW$=O-uhlr#&&*@9dj80QjZ9>;f4v362IEKd(9sdI*2tiCw3> z9Aib_GBh}d;M9BclPP_^RQss6 z831dc_Klcak7?jX=wdh@mSZ>(lS}7FyBq+1A?>{&CV`A0B_Sq(ib;o3Zj3qB*yW0&SXagK56D@@>9K*#h7{fUGGKLdX zxOtA6D+M5M$Qqyx3=M$wVj6`o6T`(Y9mDxB8N-Q~oKRb<*6$8L>+l>SCO2am9br9& z3t=^ei(xs2^I<85Q`r{O*6NwL0DMn~$z^bSIsPH;0BkSx&uvFct}@W)h{-iE?3$RA zgov0#3Qff11|GjD>Ckx#rV($hQcS%hC-CX=Ydp2TnaW0XAXCWqM<{U9Ot4T94`BlBbFZ}%6o)eSb zmJCK>@=Y-#0`Y}IYzrIk~PSKlUHTsgViV8)Q=W>-`DpO~!u zU2^Y7&_c2Rb$z8${oaGMWqtARZty-pYd>r& zF==!DE{VxjzRc~&p}H!x38JF_ZGmXX==5+c8NJRLm-a#ieo0Mr_ zqX=rIHxaD=y5#g7a82l29}RTmS7{Wm`{}2u-w%Q1FGZn|#JgTZOnT3Uh{>UQqwALO zbk=CJF)yq^LfsxACI{}_H8JUYsy!km&E0BEOx}=6w*zAGS}jy0CcOu?BVy7VvPevN zhpZJbY2F!#Nh~R4hS2pTnmuR`E#Sv_vkEb3N{C5QGWwhH#ALFiQ9aqxsGe+bRQLI@ zk>1%V7u&3p?oGsGvcc=t*(uo)F_~=jZQ>@`fRf9G!c`l zP8%_~tTzAImm>d*~BPRRB z;)uyjZr(meOsDa>i*QCa0YyVsg@HBPJ)*)@EYTTva9}&FS4jOpe``#v>voN1Y~Oa@c7i zCI_7+VzS?9A|^Lo1rRa0?ldZdiOE&9?IU7x;_H5dAYyV%ERL8Q6^kP#hsENE$w9F= zVzOT>j+oqB;Af=~f{Dp>v9^_%^h=*eOxmjE1xHNU!YxBg+OjM|OfGY$jl|@VNFyc} zL>e(UC(?+?8IeXzPKz{Ra#Cb7F*zaT17h-LCMIoV%fzHDoHNAa7{5SDOpdBxVscmo z6O)4~n3(KW!NlYyHxhn$jSi_?SCJtmSJl`aV$zoC8Di2_#H89#4Sqj3S!tt9c7BtM zK3_H4s@vFV+t}*c*y0XxcDHq35tDPS!%>|S!;G^CF*)rlModnst=0D9$pBajwQt1a zYD@!cTnvMai{V5}E}SFnasc>+wD*FT1Tuz{gqQ>>CLL;1xH0NbIAhU$Wj12ccor&s z(;1U`FYK=4ot>B*z26NYXahiW(NYM5F1paV&;b=L3vT(HYKxb*avzMB^ zbQ+g(J$)%EMZ>{}6tVkc0WX5w)AMj1$D#cQ6}VU^T@q>t-MLr@0Lqbvmy{mtEG>1G zzSUWJsI&C#&QhbZ^l)eCJDsIRI!nu)rAIr%#7o014-`r#!tl2X;WiGfB2)~E2){JU zHVUB-9_8@Z!(?CQ@bK4i;mzMHlzy)CSZDYY0*`lwZ{W`gwmR|WyPaY5!9wYY&M<>N zPj-ff@n^NO^i*f*d!1o!iQ}*058}V;TO9wB_=EWK_=EW0#~;Lhy0f&_+4HJc3puKl z@MR(zkA~?V70NkO8;V*v6Q0YJexCc*D{@H!8As3#@rw9D& zrudIa{D#FZgi7TN;W>Xxb0MCTTUOI8c*JuZ=^2+dJ>$o6!-m~}U$4i1{tP!g_uQd$ z+rMbK?Wb~E|37GD6+IFI{SF z*Bo_BqE1@W?$%MS`zGgo3H=n^gkGqZS*j;vt)zD@^nZsU@|*WEedl_%jW~gb{N_=L z@^Wq;aRCwe6w`A>+(g8VojiK%5xjIei8zOdV56ken#bn4eA^ON&^o7?t)S+pACah| z%arQbqh9wAr#geEUFV4UX^FausE3-O{?axr#Kq~&mA;9B*^tS89W?Ob8e(*m{-LwC zqg<4nb@bexM|!`2i6DP0%lAMZ{M~#7hye`!r|hCp>$+`WTWtS@RCnRu(@OdbKM$FendVne{nR2S`p_+@_$Ldca>vzBARF=M4k`kk zOi{`mr!U9<7kZ9Bhu=FLj{Hu~XY-T*CY{&x7O13DRQWE)4{2giKllWwYw)}5s(C2>g?4O>#CRE<|rv5*>hVL#? zOXtI%Q>q=W<&-D~+B?v&Wop>W(J*3Uki@phsbIbR$hL zc-9>qR~^Gn1ZwbQs6o^w#lPr3P|67X24dv@=+|;62~^jg;4nO>TqxkFNTAm7`al;d zrx35+@tVsxNA5oEa^dKoga+Sdsl;SMha^<_bLv6A(fn9AA4u$yKLN{2k8Qp^rk>I( zUL@Ut3eywLbcTEnRZyA!r5VDPAPwY^Uk4aVKkn=~Q^=pmqfdUWuj9&J8MqmRzXt8` z+(oY`{yAEWDyp3Ot(^Yn|0tdbIgA}@So_TnA(2h)ps3bx>U0lzxYQ=-Z{baUhCY=m zcU(!+8UFLO%9%G`NmCF0v-TVPcOapjo~H|V>+y!o;|=S;>&VdU96AyDPzQBo%xx!2 z?>mGG_-7Y$cwJ`mXiMZCm%-`b|L1Y?Dn~8-v@_&>8|6FGo2RBkTfZ*k{v!9 zFCO~J-0z0m>$r(K!~cE_RaLn&l&|USq_N{<;Z@T5+osRSGL8ExR4YIGa=cXtUS9Yo z^5+Dl@ycF$r(t|0{%oIByvjv%X8I?H_%Ge`ii;14yu3iE!y&}o#CjuT`h(}-Ri%_k zoj~6>Q!ZZC)0;fc3$x-sV%zcuA!r+bf~ z9#Q3ehv{A(FAn2<@9QdZLP)9$9@jN}UEHmDyXd~I@Qbg(tDf)e!b^>@J}(+s3Wd{s zKvQ0aC>Th)=whMwNcj+obR_)ZRXiAUl@DJHo#O^OjK26>C%WFTF3!d)bNSLnCoWT- zkN{d2S>O?@3u%Q{yauJ}LM#k-y%&Xi@5Ojj$7$pW{pTWnESz=Z0CjPk?tCT6awPmG zWGnpB*W!`LG#9-WIV>OgW0>FmwW5xUQ~-?VSVq0Be5icO{dv2;{CX4`oV34@ zN`%K83IB{{JIO6&4~3v1lWVpq2TJ#+1KQ+1)~!@r<9MkvpPl1eQ20^wSRv;?ZB5Sj|awoHM#skb7( z+%TB?Q6{|680NPr3kHLpUb=xYM%{@TlQYhZLrr5vplF)=9CyX8-b3gGSdXF6!yTC5 z|Hs!JlV_tL9!;?qQjR_9zi86PEm%IkG-Sz5Y zN6HuRc!Wv*B9!%X8U2IazYfTbKR*4-9RR&fQK>LV;%VX3)kwQgdZTpc-XnDBB5IGr zsB%0Q(GF3YJonuHcTL|V<>S&kcb?A5^#3g(wxH9UIZfR=kMXda zNA+BEP3XAlG6WC7MG50)P9N_rp3wgsKXFml@#Du&bdfG}cAPkI_(cB1i6Rvjx1zR= zA3A=b=LF(lu4tzAm&GMafpV8N;>*7FD^AP0m$O$&zl0Fd-Uf_V8%Q8QWKQI2@`x1veO;9>3^@i46WZ4y8j5Z zwt-qjG~}~P|4yNNP3cWty@%;4-s=v&@O$`+9{49z3>r5Iy+@D2^^|)`Z%)w*H_F2-RK=?ett&p3A9HyUceK-hXDjV0{Q7Z zeDo+v4io1M??lX*y!oe)-D~lf{AGQI%iX1CIyuJS(=cERy97z+Q6{>HN^=BhQ7KLq zsN3QZdCW~^j2Re=N^j}n($ZXYl-@!V``5AGfe?J#%L_D3Qz!2}-Gi46x6*u5K13tZ z5x9%UdnaD>@{!WBoftNAzuk8jML9xGz8bC|UO9M&he(!>pct=}r2xOQhmWBwoDW>2 zd|=c^W#SQ3kvYsFl;Pe(_PE33tMbDR)58u^f=AF^u;T5cOdQ6{Vo$^sdbQmXXiWTX z^ceDc@ISOb{%AKMlso@>JcH^RSqK{)7hgnqz$+`Y@$Yh1pwYX_FF_YW%^oe%1)eu} z;-hgB^^FvBWD|JgGu75Va8cDE5tV z`S~2L8}K%=<3KB!(&(X{p5KD!$bJt-F3c(9Wr!P8fB~yGS|sLqW}|93f&m&6eZGvV zG^cVC=6j}jp^y(J(5JG)ktp2xr>Bn};W4SR>rnS$bor*aCP!;pbaGi_W~NkJ`W2>k z;Sz7X>)&KAg+r&qpIw9ZkKPWHxt!+-Vf$qNb)KN$ZIk^UT3>n<{esE%cm1pErL$y) z>h+n9i}QE~{tdGEduSEZye$68xtnS3SoIAj{MiY4s?*K^~ORt{91U~9k{QkS-wWLGAadjnUNQ)PF{ym2s?K5 z;x!1+i;LNd>{nv}RiR`nh2QDxxQrJsQb#nJR0`Dbaq$hb!0sX#b z?&mu$Ia7E;{?Fm5*NRv79mczGn8wmq;_3O%^q7dHr1d2ox$igV5 zA&<3c`2^e$kuDT^LTvFMI2s_W^OZvNHVSQbz@ygadE*i(kjJE=}U~cz*fPo3Rc!12IuW7qbz>bjnU4A<{!Wmjk_k@?>pFsT~hTPsu z$}bI%<*w@eIe0bbv$zeh{}d%Tijv@Av{815=Tn~VFXN&I&T9GSpY$HX0`}-1V^aw3 z6%FKvq!G%L9n3*T|Acp|$Qiikn)0zfpbA8t_hFW$iMc7|at9R?txRKT7qv}SEY4AU z8lxU@9QXX(Wk}!>@yZds`|42mf6JG!Gli031H@)lC(F$r2?$@&|n#ROy&6Q5oG*IhS3HzmMmxBHL@Op-&DW%jvh6HL4 zX-kV|3je5(p{A39nW01IiaE?P@9;#L=QOJ9-Z!O(I9A&I*&jn63Q^k|K7vE2haKiS*w4BjPZ3HJVV#ukp z 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 -#include -#include "Tools/JsonTool.hpp" -#include "Tools/PathTool.hpp" + +namespace Screeps{ + class RoomPosition; + class RoomObject; + class PathStep; +} namespace DouwcoHivemind { @@ -13,39 +16,26 @@ namespace DouwcoHivemind UNEMPLOYED, HARVESTER }; + class Creep { public: CreepRole role; std::string target_id; - std::vector path; protected: Screeps::Creep creep; JSON memory; public: - Creep(Screeps::Creep crp) : creep(crp), - memory(crp.memory()) - { - role = memory.contains("role") ? static_cast(memory["role"]) : CreepRole::UNEMPLOYED; - target_id = memory.contains("target_id") ? static_cast(memory["target_id"]) : std::string(); - path = memory.contains("path") ? unflattenPathSteps(jsonToVector(memory["path"])) : std::vector(); - } - virtual ~Creep() - { - memory["target_id"] = target_id; - memory["path"] = vectorToJson(flattenPathSteps(path)); - creep.setMemory(memory); - } - + Creep(Screeps::Creep crp); + virtual ~Creep(); virtual void loop() {} bool isNearTo(const Screeps::RoomPosition &pos, int dist); protected: void moveToTarget(int dist = 1); std::unique_ptr getRoomObjectTarget(); - bool isNearTo(const Screeps::RoomPosition &pos1, const Screeps::RoomPosition &pos2, int dist); }; } diff --git a/douwco_hivemind/include/Creeps/Harvester.hpp b/douwco_hivemind/include/Creeps/Harvester.hpp index 63ddd4c..8aa7006 100644 --- a/douwco_hivemind/include/Creeps/Harvester.hpp +++ b/douwco_hivemind/include/Creeps/Harvester.hpp @@ -1,10 +1,13 @@ #ifndef DOUWCO_HIVEMIND_HARVESTER_HPP #define DOUWCO_HIVEMIND_HARVESTER_HPP -#include #include "Creeps/Creep.hpp" +namespace { + class Creep; +} + namespace DouwcoHivemind { class HarvesterRole : public Creep @@ -14,17 +17,8 @@ namespace DouwcoHivemind int taskCounter; public: - HarvesterRole(Screeps::Creep crp) : Creep(crp) - { - harvesting = memory.contains("harvesting") ? static_cast(memory["harvesting"]) : false; - taskCounter = memory.contains("taskCounter") ? static_cast(memory["taskCounter"]) : 0; - } - - ~HarvesterRole() override - { - memory["harvesting"] = harvesting; - memory["taskCounter"] = taskCounter; - } + HarvesterRole(Screeps::Creep crp); + ~HarvesterRole() override; void loop() override; diff --git a/douwco_hivemind/include/Engine.hpp b/douwco_hivemind/include/Engine.hpp index 5a9ebf7..980a95c 100644 --- a/douwco_hivemind/include/Engine.hpp +++ b/douwco_hivemind/include/Engine.hpp @@ -2,20 +2,12 @@ #define DOUWCO_HIVEMIND_ENGINE_HPP #include -#include -#include -#include #include "Creeps/Creep.hpp" -#include "Creeps/Harvester.hpp" #include "Structures/Structure.hpp" -#include "Structures/Spawn.hpp" namespace DouwcoHivemind { - class Creep; - class Structure; - class Engine { private: @@ -23,50 +15,12 @@ namespace DouwcoHivemind std::vector> structures; public: - Engine() - { - ReadOutCreeps(); - ReadOutStructures(); - } - ~Engine() {} - - void loop() - { - for (auto &creep : creeps) - creep->loop(); - - for (auto &structure : structures) - structure->loop(); - } + Engine(); + void loop(); private: - void ReadOutCreeps() - { - auto src_creeps = Screeps::Game.creeps(); - for (auto &creep : src_creeps) - { - CreepRole role = creep.second.memory()["role"]; - switch (role) - { - case CreepRole::HARVESTER: - creeps.push_back(std::make_unique(creep.second)); - break; - case CreepRole::UNEMPLOYED: - default: - EM_ASM({console.log('Undefined role for creep' + $0)}, creep.first.c_str()); - break; - } - } - } - - void ReadOutStructures() - { - auto spawns = Screeps::Game.spawns(); - for (auto &spawn : spawns) - { - structures.push_back(std::make_unique(spawn.second)); - } - } + void ReadOutCreeps(); + void ReadOutStructures(); }; } diff --git a/douwco_hivemind/include/Rooms/Room.hpp b/douwco_hivemind/include/Rooms/Room.hpp new file mode 100644 index 0000000..0ef1f02 --- /dev/null +++ b/douwco_hivemind/include/Rooms/Room.hpp @@ -0,0 +1,15 @@ +#ifndef DOUWCO_HIVEMIND_ROOMS_HPP +#define DOUWCO_HIVEMIND_ROOMS_HPP + + +namespace DouwcoHivemind +{ + class Room + { + public: + Room(); + void loop(); + }; +} + +#endif // DOUWCO_HIVEMIND_ROOMS_HPP \ No newline at end of file diff --git a/douwco_hivemind/include/Tools/MeasureTool.hpp b/douwco_hivemind/include/Tools/MeasureTool.hpp new file mode 100644 index 0000000..ad3b29c --- /dev/null +++ b/douwco_hivemind/include/Tools/MeasureTool.hpp @@ -0,0 +1,19 @@ +#ifndef DOUWCO_HIVEMIND_MEASURE_TOOL_HPP +#define DOUWCO_HIVEMIND_MEASURE_TOOL_HPP + +#include + +namespace DouwcoHivemind +{ + static bool isNearTo(const Screeps::RoomPosition &pos1, const Screeps::RoomPosition &pos2, int dist) + { + int dx = pos1.x() - pos2.x(); + int dy = pos1.y() - pos2.y(); + int dist2 = dist * dist; + return dx * dx <= dist2 && + dy * dy <= dist2 && + pos1.roomName() == pos2.roomName(); + } +} // namespace Screeps + +#endif // DOUWCO_HIVEMIND_MEASURE_TOOL_HPP \ No newline at end of file diff --git a/douwco_hivemind/include/Tools/PathTool.hpp b/douwco_hivemind/include/Tools/PathTool.hpp index c70f161..c530879 100644 --- a/douwco_hivemind/include/Tools/PathTool.hpp +++ b/douwco_hivemind/include/Tools/PathTool.hpp @@ -6,7 +6,6 @@ namespace DouwcoHivemind { - static std::vector flattenPathSteps(const std::vector &pathSteps) { std::vector flattened; diff --git a/douwco_hivemind/src/Creep.cpp b/douwco_hivemind/src/Creep.cpp new file mode 100644 index 0000000..0fd0463 --- /dev/null +++ b/douwco_hivemind/src/Creep.cpp @@ -0,0 +1,139 @@ +#include + +#include +#include +#include +#include + +#include "Creeps/Creep.hpp" + +#include "Tools/JsonTool.hpp" +#include "Tools/PathTool.hpp" +#include "Tools/MeasureTool.hpp" + +DouwcoHivemind::Creep::Creep(Screeps::Creep crp) : creep(crp), + memory(crp.memory()) +{ + role = memory.contains("role") ? static_cast(memory["role"]) : CreepRole::UNEMPLOYED; + target_id = memory.contains("target_id") ? static_cast(memory["target_id"]) : std::string(); +} + +DouwcoHivemind::Creep::~Creep() +{ + memory["target_id"] = target_id; + creep.setMemory(memory); +} + +void DouwcoHivemind::Creep::moveToTarget(int dist) +{ + // Is move required? + auto target = getRoomObjectTarget(); + if (isNearTo(target->pos(), dist)) + { + memory.erase("path"); + return; + } + + // Is wating? + if (memory.contains("wait") && memory["wait"] > 0) + { + memory["wait"] = memory["wait"].get() - 1; + creep.say("Waiting.."); + return; + } + + // Is there a path to walk? + if (!memory.contains("path") || memory["path"].empty()) + { + creep.say("Searching route!"); + auto target_pos = target->pos(); + auto path = creep.room().findPath(creep.pos(), target_pos); + auto last = path.back(); + if (last.x - target_pos.x() > dist || last.y - target_pos.y() > dist) + { + creep.say("No possible path"); + memory["wait"] = rand() % 20; + return; + } + memory["path"] = vectorToJson(flattenPathSteps(path)); + } + + // JS::console.log(std::string("creep pos: [") + + // std::to_string(creep.pos().x()) + + // std::string(",") + + // std::to_string(creep.pos().y()) + + // std::string("]")); + + // Get step from memory + int pathStepData[5] = {0}; + if (memory["path"].size() > 5) + { + for (int i = 0; i < 5; i++) + { + pathStepData[i] = memory["path"][i]; + } + } + else + { + memory.erase("path"); + return; + } + + // Is the move of last tick executed? + int x = creep.pos().x(); + int y = creep.pos().y(); + + auto step = Screeps::PathStep(pathStepData[0], pathStepData[1], pathStepData[2], pathStepData[3], pathStepData[4]); + + if (memory.contains("last_pos")) + { + int last_x = memory["last_pos"]["x"]; + int last_y = memory["last_pos"]["y"]; + memory.erase("last_pos"); + if (x == last_x && y == last_y) + { + creep.say("I'm stuck!"); + memory["wait"] = rand() % 5; + return; + } + } + + // Is the creep on the place intended by the path? + if (!(x == step.x - step.dx && y == step.y - step.dy)) + { + creep.say("I'm lost!"); + memory["wait"] = rand() % 5; + memory.erase("path"); + return; + } + + // Lets move forward + int resp = creep.move(step.direction); + if (resp == Screeps::OK) + { + memory["last_pos"]["x"] = x; + memory["last_pos"]["y"] = y; + + for (int i = 0; i < 5; i++) + { + memory["path"].erase(0); + } + } +} + +std::unique_ptr DouwcoHivemind::Creep::getRoomObjectTarget() +{ + // Check if game can find target + auto roomObj = Screeps::Game.getObjectById(target_id); + if (!roomObj) + { + JS::console.log(creep.name() + ": Game can\'t find target id"); + return nullptr; + } + return std::move(roomObj); +} + +bool DouwcoHivemind::Creep::isNearTo(const Screeps::RoomPosition &pos, int dist) +{ + return DouwcoHivemind::isNearTo(creep.pos(), pos, dist); +} \ No newline at end of file diff --git a/douwco_hivemind/src/Engine.cpp b/douwco_hivemind/src/Engine.cpp new file mode 100644 index 0000000..3e344e5 --- /dev/null +++ b/douwco_hivemind/src/Engine.cpp @@ -0,0 +1,48 @@ +#include + +#include "Engine.hpp" + +#include "Creeps/Harvester.hpp" +#include "Structures/Spawn.hpp" + +DouwcoHivemind::Engine::Engine() +{ + ReadOutCreeps(); + ReadOutStructures(); +} + +void DouwcoHivemind::Engine::loop() +{ + for (auto &creep : creeps) + creep->loop(); + + for (auto &structure : structures) + structure->loop(); +} + +void DouwcoHivemind::Engine::ReadOutCreeps() +{ + auto src_creeps = Screeps::Game.creeps(); + for (auto &creep : src_creeps) + { + CreepRole role = creep.second.memory()["role"]; + switch (role) + { + case CreepRole::HARVESTER: + creeps.push_back(std::make_unique(creep.second)); + break; + case CreepRole::UNEMPLOYED: + default: + break; + } + } +} + +void DouwcoHivemind::Engine::ReadOutStructures() +{ + auto spawns = Screeps::Game.spawns(); + for (auto &spawn : spawns) + { + structures.push_back(std::make_unique(spawn.second)); + } +} \ No newline at end of file diff --git a/douwco_hivemind/src/harvester.cpp b/douwco_hivemind/src/Harvester.cpp similarity index 93% rename from douwco_hivemind/src/harvester.cpp rename to douwco_hivemind/src/Harvester.cpp index 1fd562e..b8b719b 100644 --- a/douwco_hivemind/src/harvester.cpp +++ b/douwco_hivemind/src/Harvester.cpp @@ -18,6 +18,18 @@ #include "Creeps/Harvester.hpp" +DouwcoHivemind::HarvesterRole::HarvesterRole(Screeps::Creep crp) : Creep(crp) +{ + harvesting = memory.contains("harvesting") ? static_cast(memory["harvesting"]) : false; + taskCounter = memory.contains("taskCounter") ? static_cast(memory["taskCounter"]) : 0; +} + +DouwcoHivemind::HarvesterRole::~HarvesterRole() +{ + memory["harvesting"] = harvesting; + memory["taskCounter"] = taskCounter; +} + void DouwcoHivemind::HarvesterRole::loop() { if (harvesting) diff --git a/douwco_hivemind/src/loop.cpp b/douwco_hivemind/src/Loop.cpp similarity index 100% rename from douwco_hivemind/src/loop.cpp rename to douwco_hivemind/src/Loop.cpp diff --git a/douwco_hivemind/src/spawn.cpp b/douwco_hivemind/src/Spawn.cpp similarity index 62% rename from douwco_hivemind/src/spawn.cpp rename to douwco_hivemind/src/Spawn.cpp index 91bb011..508efa4 100644 --- a/douwco_hivemind/src/spawn.cpp +++ b/douwco_hivemind/src/Spawn.cpp @@ -1,9 +1,5 @@ -#include -#include #include #include -#include -#include #include "Creeps/Creep.hpp" #include "Structures/Spawn.hpp" @@ -13,16 +9,14 @@ void DouwcoHivemind::Spawn::loop() int creepcount = spawn.room().find(Screeps::FIND_MY_CREEPS).size(); if (creepcount > 10) { - EM_ASM({ console.log('To much creeps in this room'); }); return; } - EM_ASM({ console.log('Creating a harvester'); }); JSON opts; opts["memory"]["role"] = CreepRole::HARVESTER; int resp = spawn.spawnCreep( - {"work", "carry", "move"}, + {"work", "work", "carry", "move"}, "harvester" + std::to_string(Screeps::Game.time()), opts); } \ No newline at end of file diff --git a/douwco_hivemind/src/creep.cpp b/douwco_hivemind/src/creep.cpp deleted file mode 100644 index ab7b516..0000000 --- a/douwco_hivemind/src/creep.cpp +++ /dev/null @@ -1,64 +0,0 @@ -#include - -#include -#include -#include - -#include "Creeps/Creep.hpp" - -void DouwcoHivemind::Creep::moveToTarget(int dist) -{ - auto target = getRoomObjectTarget(); - - if (isNearTo(target->pos(), dist)) - return; - - if (path.size() == 0){ - path = creep.room().findPath(creep.pos(), target->pos()); - std::reverse(path.begin(), path.end()); - } - - JS::console.log(std::string("creep pos: [") + - std::to_string(creep.pos().x()) + - std::string(",") + - std::to_string(creep.pos().y()) + - std::string("]")); - - auto step = path.back(); - path.pop_back(); - - if (creep.pos().x() == step.x - step.dx && creep.pos().y() == step.y - step.dy) - { - int resp = creep.move(step.direction); - if(resp != Screeps::ERR_INVALID_ARGS) return; - } - - path.clear(); -} - -std::unique_ptr DouwcoHivemind::Creep::getRoomObjectTarget() -{ - // Check if game can find target - auto roomObj = Screeps::Game.getObjectById(target_id); - if (!roomObj) - { - JS::console.log(creep.name() + ": Game can\'t find target id"); - return nullptr; - } - return std::move(roomObj); -} - -bool DouwcoHivemind::Creep::isNearTo(const Screeps::RoomPosition &pos, int dist) -{ - return isNearTo(creep.pos(), pos, dist); -} - -bool DouwcoHivemind::Creep::isNearTo(const Screeps::RoomPosition &pos1, const Screeps::RoomPosition &pos2, int dist) -{ - int dx = pos1.x() - pos2.x(); - int dy = pos1.y() - pos2.y(); - int dist2 = dist * dist; - return dx * dx <= dist2 && - dy * dy <= dist2 && - pos1.roomName() == pos2.roomName(); -} \ No newline at end of file