From eedbd3d4579cdb8d4f7ab19acd3eed4e48ff7510 Mon Sep 17 00:00:00 2001 From: tocque <364004564@qq.com> Date: Fri, 7 Sep 2018 22:34:50 +0800 Subject: [PATCH] test --- _server/comment.js | 38 +++- _server/data.comment.js | 83 +++----- libs/actions.js | 187 ++++++++++++++++++ libs/control.js | 42 +++- libs/core.js | 20 ++ libs/events.js | 7 +- libs/items.js | 82 ++++++++ libs/ui.js | 149 +++++++++++++- main.js | 13 +- mota-js | 1 + project/data.js | 399 ++++++++++++++++++++++---------------- project/floors/sample0.js | 315 +++++++++++++++++++----------- project/functions.js | 59 ++---- project/icons.js | 3 +- project/images/icons.png | Bin 17146 -> 17595 bytes project/images/items.png | Bin 33137 -> 31760 bytes project/items.js | 151 ++++++++------- project/maps.js | 2 - project/sounds/equip.mp3 | Bin 0 -> 8508 bytes 19 files changed, 1081 insertions(+), 470 deletions(-) create mode 160000 mota-js create mode 100644 project/sounds/equip.mp3 diff --git a/_server/comment.js b/_server/comment.js index e6e61334..82a312fc 100644 --- a/_server/comment.js +++ b/_server/comment.js @@ -19,10 +19,11 @@ comment_c456ea59_6018_45ef_8bcc_211a24c627dc = "keys", "items", "constants", - "tools" + "tools", + "equips" ] }, - "_data": "只能取keys(钥匙) items(宝石、血瓶) constants(永久物品) tools(消耗道具)" + "_data": "只能取keys(钥匙) items(宝石、血瓶) constants(永久物品) tools(消耗道具) equip(装备)" }, "name": { "_leaf": true, @@ -35,6 +36,39 @@ comment_c456ea59_6018_45ef_8bcc_211a24c627dc = "_type": "textarea", "_string": true, "_data": "道具在道具栏中显示的描述" + }, + "equiptype": { + "_leaf": true, + "_type": "textarea", + "_string": true, + "_data": "装备的类别,与equipName按顺序对应" + }, + "equipEffect": { + "_leaf": false, + "_type": "object", + "_data": { + "atk": { + "_leaf": true, + "_type": "textarea", + "_data": "装备增加的攻击数值" + }, + "def": { + "_leaf": true, + "_type": "textarea", + "_data": "装备增加的防御数值" + }, + "mdef": { + "_leaf": true, + "_type": "textarea", + "_data": "装备增加的魔防数值" + }, + } + }, + "animate": { + "_leaf": false, + "_type": "textarea", + "_string": true, + "_data": "装备的攻击动画,仅对equiptype为0的装备有效" } } }, diff --git a/_server/data.comment.js b/_server/data.comment.js index 3cd98103..69715eaf 100644 --- a/_server/data.comment.js +++ b/_server/data.comment.js @@ -47,6 +47,11 @@ data_comment_c456ea59_6018_45ef_8bcc_211a24c627dc = "_type": "textarea", "_data": "难度选择:每个数组的第一个是其在标题界面显示的难度,第二个是在游戏内部传输的字符串,会显示在状态栏,修改此处后需要在project/functions中作相应更改" }, + "equipName": { + "_leaf": true, + "_type": "textarea", + "_data": "装备位名称,为不超过6个的数组,此项的顺序与equiptype数值关联" + }, "statusLeftBackground": { "_leaf": true, "_type": "textarea", @@ -144,6 +149,11 @@ data_comment_c456ea59_6018_45ef_8bcc_211a24c627dc = "_type": "textarea", "_data": "初始经验" }, + "equipment": { + "_leaf": true, + "_type": "textarea", + "_data": "初始装备" + }, "items": { "_leaf": false, "_type": "object", @@ -162,6 +172,11 @@ data_comment_c456ea59_6018_45ef_8bcc_211a24c627dc = "_leaf": true, "_type": "textarea", "_data": "初始消耗道具个数,例如初始有两破可以写 {\"pickaxe\": 2}" + }, + "equips": { + "_leaf": true, + "_type": "textarea", + "_data": "初始装备个数,例如初始送铁剑可以写 {\"sword1\": 1}" } } }, @@ -276,66 +291,6 @@ data_comment_c456ea59_6018_45ef_8bcc_211a24c627dc = "_type": "textarea", "_data": "绿血瓶加血数值" }, - "sword0": { - "_leaf": true, - "_type": "textarea", - "_data": "空剑的攻击力,此项请保持为0" - }, - "shield0": { - "_leaf": true, - "_type": "textarea", - "_data": "空盾的防御力,此项请保持为0" - }, - "sword1": { - "_leaf": true, - "_type": "textarea", - "_data": "铁剑加攻数值" - }, - "shield1": { - "_leaf": true, - "_type": "textarea", - "_data": "铁盾加防数值" - }, - "sword2": { - "_leaf": true, - "_type": "textarea", - "_data": "银剑加攻数值" - }, - "shield2": { - "_leaf": true, - "_type": "textarea", - "_data": "银盾加防数值" - }, - "sword3": { - "_leaf": true, - "_type": "textarea", - "_data": "骑士剑加攻数值" - }, - "shield3": { - "_leaf": true, - "_type": "textarea", - "_data": "骑士盾加防数值" - }, - "sword4": { - "_leaf": true, - "_type": "textarea", - "_data": "圣剑加攻数值" - }, - "shield4": { - "_leaf": true, - "_type": "textarea", - "_data": "圣盾加防数值" - }, - "sword5": { - "_leaf": true, - "_type": "textarea", - "_data": "神圣剑加攻数值" - }, - "shield5": { - "_leaf": true, - "_type": "textarea", - "_data": "神圣盾加防数值" - }, "moneyPocket": { "_leaf": true, "_type": "textarea", @@ -472,7 +427,13 @@ data_comment_c456ea59_6018_45ef_8bcc_211a24c627dc = "_leaf": true, "_type": "checkbox", "_bool": "bool", - "_data": "剑和盾是否直接作为装备。如果此项为true,则作为装备,需要在道具栏使用,否则将直接加属性。" + "_data": "剑和盾是否作为装备。如果此项为true,则作为装备,需要在装备栏使用,否则将直接加属性。" + }, + "equipboxBotton": { + "_leaf": true, + "_type": "checkbox", + "_bool": "bool", + "_data": "若此项为true则将状态栏中的楼层转换器按钮换为装备栏按钮,同时启用装备栏,无论equipment是否为true" }, /* "enableDeleteItem": { diff --git a/libs/actions.js b/libs/actions.js index 01619092..bed546eb 100644 --- a/libs/actions.js +++ b/libs/actions.js @@ -113,6 +113,10 @@ actions.prototype.keyDown = function(keyCode) { this.keyDownQuickShop(keyCode); return; } + if (core.status.event.id=='equipbox') { + this.keyDownEquipbox(keyCode); + return; + } if (core.status.event.id=='toolbox') { this.keyDownToolbox(keyCode); return; @@ -226,6 +230,10 @@ actions.prototype.keyUp = function(keyCode, fromReplay) { this.keyUpToolbox(keyCode); return; } + if (core.status.event.id=='equipbox') { + this.keyUpEquipbox(keyCode); + return; + } if (core.status.event.id=='save' || core.status.event.id=='load' || core.status.event.id=='replayLoad') { this.keyUpSL(keyCode); return; @@ -281,6 +289,10 @@ actions.prototype.keyUp = function(keyCode, fromReplay) { if (core.status.heroStop) core.useFly(true); break; + case 81: // Q + if (core.status.heroStop) + core.openEquipbox(true); + break; case 88: // X if (core.status.heroStop) core.openBook(true); @@ -585,6 +597,12 @@ actions.prototype.onclick = function (x, y, stepPostfix) { return; } + // 装备栏 + if (core.status.event.id == 'equipbox') { + this.clickEquipbox(x,y); + return; + } + // 工具栏 if (core.status.event.id == 'toolbox') { this.clickToolbox(x,y); @@ -1202,6 +1220,12 @@ actions.prototype.keyUpQuickShop = function (keycode) { ////// 工具栏界面时的点击操作 ////// actions.prototype.clickToolbox = function(x,y) { + // 装备栏 + if (x>=10 && x<=12 && y==0 && core.flags.equipment) { + core.ui.closePanel(); + core.openEquipbox(); + return; + } // 返回 if (x>=10 && x<=12 && y==12) { core.ui.closePanel(); @@ -1370,6 +1394,169 @@ actions.prototype.keyUpToolbox = function (keycode) { } + +////// 装备栏界面时的点击操作 ////// +actions.prototype.clickEquipbox = function(x,y) { + // 道具栏 + if (x>=10 && x<=12 && y==0) { + core.ui.closePanel(); + core.openToolbox(); + return; + } + // 返回 + if (x>=10 && x<=12 && y==12) { + core.ui.closePanel(); + return; + } + + // 当前页面 + var page = parseInt((core.status.event.selection%1000)/12)+1; + + // 上一页 + if ((x == 3 || x == 4) && y == 12) { + if (page>1) { + core.ui.drawEquipbox(core.status.event.selection-12); + } + return; + } + // 下一页 + if ((x == 8 || x == 9) && y == 12) { + var lastPage = Math.ceil(Object.keys(core.status.hero.items.equips).length/12); + if (page=0) + this.clickEquipboxIndex(index); +} + +////// 选择装备栏界面中某个Index后的操作 ////// +actions.prototype.clickEquipboxIndex = function(index) { + if (index<1000) { + if (index>=core.status.hero.equipment.length) return; + if (index==core.status.event.selection && core.status.hero.equipment[index] != "blank") { + core.unloadEquip(index); + } + } + else { + var equips = null; + equips = Object.keys(core.status.hero.items.equips).sort(); + if (equips==null) return; + if (index>=equips.length+1000) return; + if (index==core.status.event.selection) { + var equipId = equips[index-1000]; + core.loadEquip(equipId); + equips = Object.keys(core.status.hero.items.equips).sort(); + if ( equips.length == 0) + index = core.status.hero.equipment.length-1; + } + } + core.ui.drawEquipbox(index); +} + +////// 装备栏界面时,按下某个键的操作 ////// +actions.prototype.keyDownEquipbox = function (keycode) { + if (!core.isset(core.status.event.data)) return; + + var equipCapacity = core.status.hero.equipment.length; + var ownEquipment = Object.keys(core.status.hero.items.equips).sort(); + var index=core.status.event.selection; + var page=parseInt(index%1000/12), offset=12*page; + + if (keycode==37) { // left + if ((index>0 && index<1000) || index>1000) { + this.clickEquipboxIndex(index-1); + return; + } + if (index==1000 && equipCapacity>0) { + this.clickEquipboxIndex(equipCapacity-1); + return; + } + } + if (keycode==38) { // up + if ((index>2 && index<1000)) { + this.clickEquipboxIndex(index-3); + return; + } + if (index>offset+1005) { + this.clickEquipboxIndex(index-6); + return; + } + if (index>=offset+1000 && index<=offset+1005) { + var swapIndex = Math.floor((index-offset-1000)/2); + if (equipCapacity<3) + this.clickEquipboxIndex(Math.min(swapIndex,equipCapacity-1)) + else + this.clickEquipboxIndex(Math.min(swapIndex+3,equipCapacity-1)) + return; + } + } + if (keycode==39) { // right + if ((index=1000 && index0) { + this.clickEquipboxIndex(1000); + return; + } + } + if (keycode==40) { // down + if (index>=offset+1000 && index<=offset+1005 && ownEquipment.length>offset+6) { + this.clickEquipboxIndex(Math.min(1000+ownEquipment.length-1, index+6)); + return; + } + else { + var swapIndex = index*2+1; + if (equipCapacity<3) { + if (index<3 && ownEquipment.length>offset) { + this.clickEquipboxIndex(1000+Math.min(ownEquipment.length-1, swapIndex)); + return; + } + } + else { + if (index<3) { + this.clickEquipboxIndex(Math.min(equipCapacity-1, index+3)); + return; + } + else if (index>=3 && index<1000 && ownEquipment.length>offset) { + this.clickEquipboxIndex(1000+Math.min(ownEquipment.length-1, swapIndex-6)); + return; + } + } + } + } +} + +////// 装备栏界面时,放开某个键的操作 ////// +actions.prototype.keyUpEquipbox = function (keycode) { + if (keycode==84){ + core.ui.closePanel(); + core.openToolbox(); + return; + } + if (keycode==81 || keycode==27 || keycode==88) { + core.ui.closePanel(); + return; + } + if (!core.isset(core.status.event.data)) return; + + if (keycode==13 || keycode==32 || keycode==67) { + this.clickEquipboxIndex(core.status.event.selection); + return; + } +} + ////// 存读档界面时的点击操作 ////// actions.prototype.clickSL = function(x,y) { diff --git a/libs/control.js b/libs/control.js index a59adf5a..a9b20f50 100644 --- a/libs/control.js +++ b/libs/control.js @@ -1957,6 +1957,26 @@ control.prototype.replay = function () { return; } } + else if (action.indexOf("unEquip:")==0) { + var equipId = action.substring(8); + setTimeout(function () { + core.ui.closePanel(); + core.unloadEquip(equipId, function () { + core.replay(); + }); + }, 750 / Math.max(1, core.status.replay.speed)); + return; + } + else if (action.indexOf("equip:")==0) { + var equipType = action.substring(6); + setTimeout(function () { + core.ui.closePanel(); + core.loadEquip(equipType, function () { + core.replay(); + }); + }, 750 / Math.max(1, core.status.replay.speed)); + return; + } else if (action.indexOf("fly:")==0) { var floorId=action.substring(4); var toIndex=core.status.hero.flyRange.indexOf(floorId); @@ -2128,6 +2148,14 @@ control.prototype.useFly = function (need) { return; } +////// 点击装备栏时的打开操作 ////// +control.prototype.openEquipbox = function (need) { + if (core.isset(core.status.replay)&&core.status.replay.replaying) return; + if (!core.checkStatus('equipbox', need)) + return; + core.ui.drawEquipbox(); +} + ////// 点击工具栏时的打开操作 ////// control.prototype.openToolbox = function (need) { if (core.isset(core.status.replay)&&core.status.replay.replaying) return; @@ -2650,7 +2678,9 @@ control.prototype.clearStatusBar = function() { core.statusBar[e].innerHTML = " "; }); core.statusBar.image.book.style.opacity = 0.3; - core.statusBar.image.fly.style.opacity = 0.3; + if (!core.flags.equipboxBotton) { + core.statusBar.image.fly.style.opacity = 0.3; + } } ////// 更新状态栏 ////// @@ -2726,8 +2756,14 @@ control.prototype.updateStatusBar = function () { core.statusBar.image.book.src = core.statusBar.icons.book.src; core.statusBar.image.book.style.opacity = core.hasItem('book')?1:0.3; - core.statusBar.image.fly.src = core.statusBar.icons.fly.src; - core.statusBar.image.fly.style.opacity = core.hasItem('fly')?1:0.3; + if (!core.flags.equipboxBotton) { + core.statusBar.image.fly.src = core.statusBar.icons.fly.src; + core.statusBar.image.fly.style.opacity = core.hasItem('fly')?1:0.3; + } + else { + core.statusBar.image.fly.src = core.statusBar.icons.equipbox.src; + core.statusBar.image.fly.style.opacity = 1; + } core.statusBar.image.toolbox.src = core.statusBar.icons.toolbox.src; diff --git a/libs/core.js b/libs/core.js index ee47c077..6afd2468 100644 --- a/libs/core.js +++ b/libs/core.js @@ -828,6 +828,11 @@ core.prototype.hasItem = function (itemId) { return core.items.hasItem(itemId); } +////// 是否装备某件装备 ////// +core.prototype.hasEquipment = function (itemId) { + return core.items.hasEquipment(itemId); +} + ////// 设置某个物品的个数 ////// core.prototype.setItem = function (itemId, itemNum) { core.items.setItem(itemId, itemNum); @@ -848,6 +853,16 @@ core.prototype.canUseItem = function (itemId) { return core.items.canUseItem(itemId); } +////// 换上某件装备 ////// +core.prototype.loadEquip = function (equipId, callback) { + core.items.loadEquip(equipId,callback); +} + +////// 卸下某件装备 ////// +core.prototype.unloadEquip = function (equipType, callback) { + core.items.unloadEquip(equipType,callback); +} + ////// 增加某个物品的个数 ////// core.prototype.addItem = function (itemId, itemNum) { core.items.addItem(itemId, itemNum); @@ -1067,6 +1082,11 @@ core.prototype.useFly = function (need) { core.control.useFly(need); } +////// 点击装备栏时的打开操作 ////// +core.prototype.openEquipbox = function (need) { + core.control.openEquipbox(need); +} + ////// 点击工具栏时的打开操作 ////// core.prototype.openToolbox = function (need) { core.control.openToolbox(need); diff --git a/libs/events.js b/libs/events.js index 73497b87..8ce50c87 100644 --- a/libs/events.js +++ b/libs/events.js @@ -1057,9 +1057,10 @@ events.prototype.battle = function (id, x, y, force, callback) { } else { - if (core.flags.equipment && core.getFlag('sword', 'sword0')!='sword0') { - core.playSound('zone.mp3'); - core.drawAnimate('sword', x, y); + if (core.flags.equipment) { + var equipId = core.status.hero.equipment[0]; + if (core.isset(core.material.items[equipId].animate)) + core.drawAnimate(core.material.items[equipId].animate, x, y); } else { core.playSound('attack.mp3'); diff --git a/libs/items.js b/libs/items.js index 82ee9204..4aa87a7f 100644 --- a/libs/items.js +++ b/libs/items.js @@ -96,6 +96,12 @@ items.prototype.hasItem = function (itemId) { return core.itemCount(itemId) > 0; } +////// 是否装备某件装备 ////// +items.prototype.hasEquipment = function (itemId) { + var equiptype = core.material.items[itemId].equiptype; + return core.status.hero.equipment[equiptype] == itemId; +} + ////// 设置某个物品的个数 ////// items.prototype.setItem = function (itemId, itemNum) { var itemCls = core.material.items[itemId].cls; @@ -140,3 +146,79 @@ items.prototype.addItem = function (itemId, itemNum) { core.status.hero.items[itemCls][itemId] = 1; } + +////// 换上 ////// +items.prototype.loadEquip = function (equipId, callback) { + + core.playSound('equip.mp3'); + + var loadEquip = core.material.items[equipId]; + var loadEquipType = loadEquip.equipType; + var unloadEquipId = core.status.hero.equipment[loadEquipType]; + var unloadEquip = core.material.items[unloadEquipId]; + + // 处理能力值改变 + if (core.isset(loadEquip.equipEffect.atk)) + core.status.hero.atk += loadEquip.equipEffect.atk + if (core.isset(loadEquip.equipEffect.def)) + core.status.hero.def += loadEquip.equipEffect.def + if (core.isset(loadEquip.equipEffect.mdef)) + core.status.hero.mdef += loadEquip.equipEffect.mdef + if (unloadEquip.cls != "blank") { + if (core.isset(unloadEquip.equipEffect.atk)) + core.status.hero.atk -= unloadEquip.equipEffect.atk + if (core.isset(unloadEquip.equipEffect.def)) + core.status.hero.def -= unloadEquip.equipEffect.def + if (core.isset(unloadEquip.equipEffect.mdef)) + core.status.hero.mdef -= unloadEquip.equipEffect.mdef + } + + // 更新装备状态 + core.status.hero.equipment[loadEquipType] = equipId; + + core.updateStatusBar(); + + // 记录路线 + core.status.route.push("equip:"+equipId); + + // 装备更换完毕:删除换上的装备 + core.status.hero.items["equips"][equipId]--; + if (core.status.hero.items["equips"][equipId]==0) + delete core.status.hero.items["equips"][equipId]; + + // 装备更换完毕:增加卸下的装备 + if (unloadEquipId != "blank") + core.addItem(unloadEquipId, 1); + + if (core.isset(callback)) callback(); +} + +////// 卸下 ////// +items.prototype.unloadEquip = function (equipType, callback) { + + core.playSound('equip.mp3'); + + var unloadEquipId = core.status.hero.equipment[equipType]; + var unloadEquip = core.material.items[unloadEquipId]; + + // 处理能力值改变 + if (core.isset(unloadEquip.equipEffect.atk)) + core.status.hero.atk -= unloadEquip.equipEffect.atk + if (core.isset(unloadEquip.equipEffect.def)) + core.status.hero.def -= unloadEquip.equipEffect.def + if (core.isset(unloadEquip.equipEffect.mdef)) + core.status.hero.mdef -= unloadEquip.equipEffect.mdef + + // 更新装备状态 + core.status.hero.equipment[equipType] = "blank"; + + core.updateStatusBar(); + + // 记录路线 + core.status.route.push("unEquip:"+equipType); + + // 装备更换完毕:增加卸下的装备 + core.addItem(unloadEquipId, 1); + + if (core.isset(callback)) callback(); +} \ No newline at end of file diff --git a/libs/ui.js b/libs/ui.js index a365323f..bde0adca 100644 --- a/libs/ui.js +++ b/libs/ui.js @@ -1714,10 +1714,157 @@ ui.prototype.drawToolbox = function(index) { } } - // 退出 this.drawPagination(page, totalPage); core.canvas.ui.textAlign = 'center'; + // 道具栏 + if (core.flags.equipment) + core.fillText('ui', '装备栏', 370, 19,'#DDDDDD', 'bold 15px Verdana'); // core.fillText('ui', '删除道具', 370, 32,'#DDDDDD', 'bold 15px Verdana'); + // 退出 + core.fillText('ui', '返回游戏', 370, 403,'#DDDDDD', 'bold 15px Verdana'); +} + +////// 绘制装备界面 ////// +ui.prototype.drawEquipbox = function(index) { + + var equipEquipment = core.status.hero.equipment; + var ownEquipment = Object.keys(core.status.hero.items.equips).sort(); + + if (!core.isset(index)) { + if (equipEquipment.length>0) index=0; + else if (ownEquipment.length>0) index=1000; + else index=0; + } + + core.status.event.selection=index; + + var selectId; + if (index<1000) { + if (index>=equipEquipment.length) index=Math.max(0, equipEquipment.length-1); + selectId = equipEquipment[index]; + } + else { + if (index-1000>=ownEquipment.length) index=1000+Math.max(0, ownEquipment.length-1); + selectId = ownEquipment[index-1000]; + if (!core.hasItem(selectId)) selectId=null; + } + + var page = parseInt((index%1000)/12)+1; + var totalPage = Math.ceil(ownEquipment.length/12); + + core.status.event.data=selectId; + + core.clearMap('ui', 0, 0, 416, 416); + core.setAlpha('ui', 0.85); + core.fillRect('ui', 0, 0, 416, 416, '#000000'); + core.setAlpha('ui', 1); + core.setFillStyle('ui', '#DDDDDD'); + core.setStrokeStyle('ui', '#DDDDDD'); + core.canvas.ui.lineWidth = 2; + core.canvas.ui.strokeWidth = 2; + + var ydelta = 20; + + // 画线 + core.canvas.ui.beginPath(); + core.canvas.ui.moveTo(0, 130-ydelta); + core.canvas.ui.lineTo(416, 130-ydelta); + core.canvas.ui.stroke(); + core.canvas.ui.beginPath(); + core.canvas.ui.moveTo(416,129-ydelta); + core.canvas.ui.lineTo(416,105-ydelta); + core.canvas.ui.lineTo(416-72,105-ydelta); + core.canvas.ui.lineTo(416-102,129-ydelta); + core.canvas.ui.fill(); + + core.canvas.ui.beginPath(); + core.canvas.ui.moveTo(0, 290-ydelta); + core.canvas.ui.lineTo(416, 290-ydelta); + core.canvas.ui.stroke(); + core.canvas.ui.beginPath(); + core.canvas.ui.moveTo(416,289-ydelta); + core.canvas.ui.lineTo(416,265-ydelta); + core.canvas.ui.lineTo(416-72,265-ydelta); + core.canvas.ui.lineTo(416-102,289-ydelta); + core.canvas.ui.fill(); + + // 文字 + core.canvas.ui.textAlign = 'right'; + core.fillText('ui', "当前装备", 411, 124-ydelta, '#333333', "bold 16px Verdana"); + core.fillText('ui', "拥有装备", 411, 284-ydelta); + + core.canvas.ui.textAlign = 'left'; + + // 描述 + if (core.isset(selectId)) { + var equip=core.material.items[selectId]; + if (equip.cls != "blank") { + core.fillText('ui', equip.name, 10, 32, '#FFD700', "bold 20px Verdana") + + var text = equip.text||"该装备暂无描述。"; + var lines = core.splitLines('ui', text, 406, '17px Verdana'); + + core.fillText('ui', lines[0], 10, 62, '#FFFFFF', '17px Verdana'); + + if (lines.length==1) { + if (index<1000) { + core.fillText('ui', '<继续点击该装备即可卸下>', 10, 89, '#CCCCCC', '14px Verdana'); + } + else { + core.fillText('ui', '<继续点击该装备即可换上>', 10, 89, '#CCCCCC', '14px Verdana'); + } + } + else { + var leftText = text.substring(lines[0].length); + core.fillText('ui', leftText, 10, 89, '#FFFFFF', '17px Verdana'); + } + } + } + + core.canvas.ui.textAlign = 'right'; + var images = core.material.images.items; + + // 当前装备 + for (var i = 0 ; i < core.status.hero.equipment.length ; i++) { + var equipId = core.status.hero.equipment[i]; + if (!core.isset(equipId)) break; + var icon = core.material.icons.items[equipId]; + if (i<3) { + core.fillText('ui', main.equipName[i], 16*(8*i+1)+40, 144+32-ydelta, '#FFFFFF', "bold 16px Verdana"); + core.canvas.ui.drawImage(images, 0, icon*32, 32, 32, 16*(8*i+5)+5, 144+5-ydelta, 32, 32) + if (index == i) + core.strokeRect('ui', 16*(8*i+5)+1, 144+1-ydelta, 40, 40, '#FFD700'); + } + else { + core.fillText('ui', main.equipName[i], 16*(8*(i-3)+1)+40, 144+64+32-ydelta, '#FFFFFF', "bold 16px Verdana"); + core.canvas.ui.drawImage(images, 0, icon*32, 32, 32, 16*(8*(i-3)+5)+5, 144+64+5-ydelta, 32, 32) + if (index == i) + core.strokeRect('ui', 16*(8*(i-3)+5)+1, 144+64+1-ydelta, 40, 40, '#FFD700'); + } + } + + // 现有装备 + for (var i=0;i<12;i++) { + var ownEquip=ownEquipment[12*(page-1)+i]; + if (!core.isset(ownEquip)) break; + var icon=core.material.icons.items[ownEquip]; + if (i<6) { + core.canvas.ui.drawImage(images, 0, icon*32, 32, 32, 16*(4*i+1)+5, 304+5-ydelta, 32, 32) + if (selectId == ownEquip) + core.strokeRect('ui', 16*(4*i+1)+1, 304+1-ydelta, 40, 40, '#FFD700'); + } + else { + core.canvas.ui.drawImage(images, 0, icon*32, 32, 32, 16*(4*(i-6)+1)+5, 304+64+5-ydelta, 32, 32) + if (selectId == ownEquip) + core.strokeRect('ui', 16*(4*(i-6)+1)+1, 304+64+1-ydelta, 40, 40, '#FFD700'); + } + } + + this.drawPagination(page, totalPage); + // 道具栏 + core.canvas.ui.textAlign = 'center'; + core.fillText('ui', '道具栏', 370, 19,'#DDDDDD', 'bold 15px Verdana'); + // 退出按钮 core.fillText('ui', '返回游戏', 370, 403,'#DDDDDD', 'bold 15px Verdana'); } diff --git a/main.js b/main.js index 26190b34..53ef15ce 100644 --- a/main.js +++ b/main.js @@ -118,6 +118,7 @@ function main() { 'speedDown': 20, 'speedUp': 21, 'rewind': 22, + 'equipbox': 23, }, 'floor': document.getElementById('floor'), 'lv': document.getElementById('lv'), @@ -387,7 +388,7 @@ main.statusBar.image.book.onclick = function () { main.core.openBook(true); } -////// 点击状态栏中的楼层传送器时 ////// +////// 点击状态栏中的楼层传送器/装备栏时 ////// main.statusBar.image.fly.onclick = function () { if (core.isset(core.status.replay) && core.status.replay.replaying) { @@ -395,8 +396,14 @@ main.statusBar.image.fly.onclick = function () { return; } - if (main.core.isPlaying()) - main.core.useFly(true); + if (main.core.isPlaying()) { + if (!main.core.flags.equipboxBotton) { + main.core.useFly(true); + } + else { + main.core.openEquipbox(true) + } + } } ////// 点击状态栏中的工具箱时 ////// diff --git a/mota-js b/mota-js new file mode 160000 index 00000000..45645884 --- /dev/null +++ b/mota-js @@ -0,0 +1 @@ +Subproject commit 45645884940c700b6121ffdd3624f9ed0ed062cb diff --git a/project/data.js b/project/data.js index 5bbb87a6..2bea651c 100644 --- a/project/data.js +++ b/project/data.js @@ -1,173 +1,228 @@ -data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d = -{ - "main" : { - "floorIds" : [ - "sample0", "sample1", "sample2", "sample3", "MT0" - ], - "images" : [ - "bg.jpg" - ], - "animates" : [ - "hand", "sword", "zone" - ], - "bgms" : [ - 'bgm.mp3' - ], - "sounds" : [ - 'floor.mp3', 'attack.mp3', 'door.mp3', 'item.mp3', 'zone.mp3', 'jump.mp3' - ], - "startBackground" : "bg.jpg", - "startLogoStyle" : "color: black", - "levelChoose" : [["简单","Easy"],["普通","Normal"],["困难","Hard"],["噩梦","Hell"]], - "statusLeftBackground": "url(project/images/ground.png) repeat", - "statusTopBackground": "url(project/images/ground.png) repeat", - "toolsBackground": "url(project/images/ground.png) repeat", - "borderColor": "white" - }, - "firstData" : { - "title": "魔塔样板", - "name": "template", - "version": "Ver 2.4", - "floorId": "sample0", - "hero": { - "name": "阳光", - 'lv': 1, - "hpmax": 9999, - "hp": 1000, - "atk": 100, - "def": 100, - "mdef": 100, - "money": 100, - "experience": 0, - "items": { - "keys": { - "yellowKey": 0, - "blueKey": 0, - "redKey": 0 - }, - "constants": {}, - "tools": {} - }, - "flyRange": [], - "loc": {"direction": "up", "x": 6, "y": 10}, - "flags": {}, - "steps": 0, - }, - "startText": [ - "Hi,欢迎来到 HTML5 魔塔样板!\n\n本样板由艾之葵制作,可以让你在不会写任何代码\n的情况下也能做出属于自己的H5魔塔!", - "这里游戏开始时的剧情。\n定义在data.js的startText处。\n\n你可以在这里写上自己的内容。", - "赶快来试一试吧!" - ], - "shops": [ - { - "id": "moneyShop1", - "name": "贪婪之神", - "icon": "blueShop", - "textInList": "1F金币商店", - "use": "money", - "need": "20+10*times*(times+1)", - "text": "勇敢的武士啊,给我${need}金币就可以:", - "choices": [ - {"text": "生命+800", "effect": "status:hp+=800"}, - {"text": "攻击+4", "effect": "status:atk+=4"}, - {"text": "防御+4", "effect": "status:def+=4"}, - {"text": "魔防+10", "effect": "status:mdef+=10"} - ] - }, - { - "id": "expShop1", - "name": "经验之神", - "icon": "pinkShop", - "textInList": "1F经验商店", - "use": "experience", - "need": "-1", - "text": "勇敢的武士啊,给我若干经验就可以:", - "choices": [ - {"text": "等级+1", "need": "100", "effect": "status:lv+=1;status:hp+=1000;status:atk+=7;status:def+=7"}, - {"text": "攻击+5", "need": "30", "effect": "status:atk+=5"}, - {"text": "防御+5", "need": "30", "effect": "status:def+=5"}, - ] - } - ], - "levelUp": [ - {}, - {"need": 20, "name": "第二级", "effect": "status:hp+=2*(status:atk+status:def);status:atk+=10;status:def+=10"}, - {"need": 40, "effect": function () { - core.insertAction("恭喜升级!"); - core.status.hero.hp *= 2; - core.status.hero.atk += 100; - core.status.hero.def += 100; - }}, - ] - }, - - "values" : { - "lavaDamage": 100, - "poisonDamage": 10, - "weakValue": 20, - "redJewel": 3, - "blueJewel": 3, - "greenJewel": 5, - "redPotion": 100, - "bluePotion": 250, - "yellowPotion": 500, - "greenPotion": 800, - "sword0": 0, - "shield0": 0, - "sword1": 10, - "shield1": 10, - "sword2": 20, - "shield2": 20, - "sword3": 40, - "shield3": 40, - "sword4": 80, - "shield4": 80, - "sword5": 160, - "shield5": 160, - "moneyPocket": 500, - 'breakArmor': 0.9, - 'counterAttack': 0.1, - 'purify': 3, - 'hatred': 2, - 'maxValidHp': null, - 'animateSpeed': 300, - }, - - "flags" : { - "enableFloor": true, - "enableLv": false, - "enableHPMax": false, - "enableMDef": true, - "enableMoney": true, - "enableExperience": false, - "enableLevelUp": false, - "enableKeys": true, - "enablePZF": false, - "enableDebuff": false, - "flyNearStair": true, - "pickaxeFourDirections": false, - "bombFourDirections": false, - "snowFourDirections": false, - "bigKeyIsBox": false, - "equipment": false, - "enableAddPoint": false, - "enableNegativeDamage": false, - "hatredDecrease": true, - "betweenAttackCeil": false, - "useLoop": false, - "startDirectly": false, - "canOpenBattleAnimate": true, - "showBattleAnimateConfirm": false, - "battleAnimate": false, - "displayEnemyDamage": true, - "displayCritical": true, - "displayExtraDamage": true, - "enableGentleClick": true, - "potionWhileRouting": false, - "enableViewMaps": true, - "portalWithoutTrigger": true, - "canGoDeadZone": false, - "enableMoveDirectly": true, - "clickMoveDirectly": true, - } +data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d = +{ + "main": { + "floorIds": [ + "sample0", + "sample1", + "sample2", + "sample3", + "MT0" + ], + "images": [ + "bg.jpg" + ], + "animates": [ + "hand", + "sword", + "zone" + ], + "bgms": [ + "bgm.mp3" + ], + "sounds": [ + "floor.mp3", + "attack.mp3", + "door.mp3", + "item.mp3", + "equip.mp3", + "zone.mp3", + "jump.mp3" + ], + "startBackground": "bg.jpg", + "startLogoStyle": "color: black", + "levelChoose": [ + [ + "简单", + "Easy" + ], + [ + "普通", + "Normal" + ], + [ + "困难", + "Hard" + ], + [ + "噩梦", + "Hell" + ] + ], + "equipName": [ + "武器", + "盾牌" + ], + "statusLeftBackground": "url(project/images/ground.png) repeat", + "statusTopBackground": "url(project/images/ground.png) repeat", + "toolsBackground": "url(project/images/ground.png) repeat", + "borderColor": "white" + }, + "firstData": { + "title": "魔塔样板", + "name": "template", + "version": "Ver 2.4", + "floorId": "sample0", + "hero": { + "name": "阳光", + "lv": 1, + "hpmax": 9999, + "hp": 1000, + "atk": 100, + "def": 100, + "mdef": 100, + "money": 100, + "experience": 0, + "equipment": [ + "blank", + "blank" + ], + "items": { + "keys": { + "yellowKey": 0, + "blueKey": 0, + "redKey": 0 + }, + "constants": {}, + "tools": {}, + "equips": {} + }, + "flyRange": [], + "loc": { + "direction": "up", + "x": 6, + "y": 10 + }, + "flags": {}, + "steps": 0 + }, + "startText": [ + "Hi,欢迎来到 HTML5 魔塔样板!\n\n本样板由艾之葵制作,可以让你在不会写任何代码\n的情况下也能做出属于自己的H5魔塔!", + "这里游戏开始时的剧情。\n定义在data.js的startText处。\n\n你可以在这里写上自己的内容。", + "赶快来试一试吧!" + ], + "shops": [ + { + "id": "moneyShop1", + "name": "贪婪之神", + "icon": "blueShop", + "textInList": "1F金币商店", + "use": "money", + "need": "20+10*times*(times+1)", + "text": "勇敢的武士啊,给我${need}金币就可以:", + "choices": [ + { + "text": "生命+800", + "effect": "status:hp+=800" + }, + { + "text": "攻击+4", + "effect": "status:atk+=4" + }, + { + "text": "防御+4", + "effect": "status:def+=4" + }, + { + "text": "魔防+10", + "effect": "status:mdef+=10" + } + ] + }, + { + "id": "expShop1", + "name": "经验之神", + "icon": "pinkShop", + "textInList": "1F经验商店", + "use": "experience", + "need": "-1", + "text": "勇敢的武士啊,给我若干经验就可以:", + "choices": [ + { + "text": "等级+1", + "need": "100", + "effect": "status:lv+=1;status:hp+=1000;status:atk+=7;status:def+=7" + }, + { + "text": "攻击+5", + "need": "30", + "effect": "status:atk+=5" + }, + { + "text": "防御+5", + "need": "30", + "effect": "status:def+=5" + } + ] + } + ], + "levelUp": [ + {}, + { + "need": 20, + "name": "第二级", + "effect": "status:hp+=2*(status:atk+status:def);status:atk+=10;status:def+=10" + }, + { + "need": 40, + "effect": "function () {\r\n\t\t\tcore.insertAction(\"恭喜升级!\");\r\n\t\t\tcore.status.hero.hp *= 2;\r\n\t\t\tcore.status.hero.atk += 100;\r\n\t\t\tcore.status.hero.def += 100;\r\n\t\t}" + } + ] + }, + "values": { + "lavaDamage": 100, + "poisonDamage": 10, + "weakValue": 20, + "redJewel": 3, + "blueJewel": 3, + "greenJewel": 5, + "redPotion": 100, + "bluePotion": 250, + "yellowPotion": 500, + "greenPotion": 800, + "moneyPocket": 500, + "breakArmor": 0.9, + "counterAttack": 0.1, + "purify": 3, + "hatred": 2, + "maxValidHp": null, + "animateSpeed": 300 + }, + "flags": { + "enableFloor": true, + "enableLv": false, + "enableHPMax": false, + "enableMDef": true, + "enableMoney": true, + "enableExperience": false, + "enableLevelUp": false, + "enableKeys": true, + "enablePZF": false, + "enableDebuff": false, + "flyNearStair": true, + "pickaxeFourDirections": false, + "bombFourDirections": false, + "snowFourDirections": false, + "bigKeyIsBox": false, + "equipment": true, + "equipboxBotton": false, + "enableAddPoint": false, + "enableNegativeDamage": false, + "hatredDecrease": true, + "betweenAttackCeil": false, + "useLoop": false, + "startDirectly": false, + "canOpenBattleAnimate": true, + "showBattleAnimateConfirm": false, + "battleAnimate": false, + "displayEnemyDamage": true, + "displayCritical": true, + "displayExtraDamage": true, + "enableGentleClick": true, + "potionWhileRouting": false, + "enableViewMaps": true, + "portalWithoutTrigger": true, + "canGoDeadZone": false, + "enableMoveDirectly": true, + "clickMoveDirectly": true + } } \ No newline at end of file diff --git a/project/floors/sample0.js b/project/floors/sample0.js index 78e04a85..cec16491 100644 --- a/project/floors/sample0.js +++ b/project/floors/sample0.js @@ -1,120 +1,215 @@ -main.floors.sample0 = +main.floors.sample0= { - "floorId": "sample0", // 这里需要改楼层名,请和文件名及下面的floorId保持完全一致 - // 楼层唯一标识符仅能由字母、数字、下划线组成,且不能由数字开头 - // 推荐用法:第20层就用MT20,第38层就用MT38,地下6层就用MT_6(用下划线代替负号),隐藏3层用MT3h(h表示隐藏),等等 - // 楼层唯一标识符,需要和名字完全一致 - "title": "样板 0 层", // 楼层中文名 - "name": "0", // 显示在状态栏中的层数 - "canFlyTo": true, // 该楼能否被楼传器飞到(不能的话在该楼也不允许使用楼传器) - "canUseQuickShop": true, // 该层是否允许使用快捷商店 - "defaultGround": "ground", // 默认地面的图块ID(terrains中) - "images": [], // 该层默认显示的所有图片;详细用法请查看文档“自定义素材”中的说明。 - // "color": [0,0,0,0.3] // 该层的默认画面色调。本项可不写(代表无色调),如果写需要是一个RGBA数组。 - // "weather": ["snow",5], // 该层的默认天气。本项可忽略表示晴天,如果写则第一项为"rain"或"snow"代表雨雪,第二项为1-10之间的数代表强度。 - "bgm": "bgm.mp3", // 到达该层后默认播放的BGM。本项可忽略。 - "item_ratio": 2, // 该层的宝石/血瓶倍率 - "map": [ // 地图数据,需要是13x13,建议使用地图生成器来生成 - [0, 0, 220, 0, 0, 20, 87, 3, 65, 64, 44, 43, 42], - [0, 246, 0, 246, 0, 20, 0, 3, 58, 59, 60, 61, 41], - [219, 0, 0, 0, 219, 20, 0, 3, 57, 26, 62, 63, 40], - [20, 20, 125, 20, 20, 20, 0, 3, 53, 54, 55, 56, 39], - [216, 247, 263, 235, 248, 6, 0, 3, 49, 50, 51, 52, 38], - [6, 6, 125, 6, 6, 6, 0, 1, 45, 46, 47, 48, 37], - [224, 254, 212, 262, 204, 5, 0, 1, 31, 32, 34, 33, 36], - [201, 261, 217, 264, 207, 5, 0, 1, 27, 28, 29, 30, 35], - [5, 5, 125, 5, 5, 5, 0, 1, 21, 22, 23, 24, 25], - [0, 0, 237, 0, 0, 0, 45, 1, 1, 1, 121, 1, 1], - [4, 4, 133, 4, 4, 4, 0, 0, 0, 0, 0, 85, 124], - [87, 11, 12, 13, 14, 4, 4, 2, 2, 2, 122, 2, 2], - [88, 89, 90, 91, 92, 93, 94, 2, 81, 82, 83, 84, 86], +"floorId": "sample0", +"title": "样板 0 层", +"name": "0", +"canFlyTo": true, +"canUseQuickShop": true, +"defaultGround": "ground", +"images": [], +"bgm": "bgm.mp3", +"item_ratio": 2, +"map": [ + [ 0, 0,220, 0, 0, 20, 87, 3, 65, 64, 44, 43, 42], + [ 0,246, 0,246, 0, 20, 0, 3, 58, 59, 60, 61, 41], + [219, 0, 0, 0,219, 20, 0, 3, 57, 26, 62, 63, 40], + [ 20, 20,125, 20, 20, 20, 0, 3, 53, 54, 55, 56, 39], + [216,247,263,235,248, 6, 0, 3, 49, 50, 51, 52, 38], + [ 6, 6,125, 6, 6, 6, 0, 1, 45, 46, 47, 48, 37], + [224,254,212,262,204, 5, 0, 1, 31, 32, 34, 33, 36], + [201,261,217,264,207, 5, 0, 1, 27, 28, 29, 30, 35], + [ 5, 5,125, 5, 5, 5, 0, 1, 21, 22, 23, 24, 25], + [ 0, 0,237, 0, 0, 0, 45, 1, 1, 1,121, 1, 1], + [ 4, 4,133, 4, 4, 4, 0, 0, 0, 0, 0, 85,124], + [ 87, 11, 12, 13, 14, 4, 4, 2, 2, 2,122, 2, 2], + [ 88, 89, 90, 91, 92, 93, 94, 2, 81, 82, 83, 84, 86] +], +"firstArrive": [ + "\t[样板提示]首次到达某层可以触发 firstArrive 事件,该事件可类似于RMXP中的“自动执行脚本”。\n\n本事件支持一切的事件类型,常常用来触发对话,例如:", + "\t[hero]\b[up,hero]我是谁?我从哪来?我又要到哪去?", + "\t[仙子,fairy]你问我...?我也不知道啊...", + "本层主要对道具、门、怪物等进行介绍,有关事件的各种信息在下一层会有更为详细的说明。" +], +"events": { + "10,9": [ + "\t[老人,man]这些是本样板支持的所有的道具。\n\n道具分为三类:items, constants, tools。\nitems 为即捡即用类道具,例如宝石、血瓶、剑盾等。\nconstants 为永久道具,例如怪物手册、楼层传送器、幸运金币等。\ntools 为消耗类道具,例如破墙镐、炸弹、中心对称飞行器等。\n\n后两类道具在工具栏中可以看到并使用。", + "\t[老人,man]\b[up]有关道具效果,定义在items.js中。\n目前大多数道具已有默认行为,如有自定义的需求则需在items.js中修改代码。", + "\t[老人,man]constants 和 tools 各最多只允许12种,多了会导致图标溢出。", + "\t[老人,man]\b[up]拾取道具结束后可触发 afterGetItem 事件。\n\n有关事件的各种信息在下一层会有更为详细的说明。", + { + "type": "hide", + "time": 500 + } ], - "firstArrive": [ // 第一次到该楼层触发的事件 - "\t[样板提示]首次到达某层可以触发 firstArrive 事件,该事件可类似于RMXP中的“自动执行脚本”。\n\n本事件支持一切的事件类型,常常用来触发对话,例如:", - "\t[hero]\b[up,hero]我是谁?我从哪来?我又要到哪去?", - "\t[仙子,fairy]你问我...?我也不知道啊...", - "本层主要对道具、门、怪物等进行介绍,有关事件的各种信息在下一层会有更为详细的说明。", + "10,11": [ + "\t[老人,woman]这些是门,需要对应的钥匙打开。\n机关门必须使用特殊的开法。", + "\t[老人,woman]开门后可触发 afterOpenDoor 事件。\n\n有关事件的各种信息在下一层会有更为详细的说明。", + { + "type": "hide", + "time": 500 + } ], - "events": { // 该楼的所有可能事件列表 - "10,9": [ // 守着道具的老人 - "\t[老人,man]这些是本样板支持的所有的道具。\n\n道具分为三类:items, constants, tools。\nitems 为即捡即用类道具,例如宝石、血瓶、剑盾等。\nconstants 为永久道具,例如怪物手册、楼层传送器、幸运金币等。\ntools 为消耗类道具,例如破墙镐、炸弹、中心对称飞行器等。\n\n后两类道具在工具栏中可以看到并使用。", - "\t[老人,man]\b[up]有关道具效果,定义在items.js中。\n目前大多数道具已有默认行为,如有自定义的需求则需在items.js中修改代码。", - "\t[老人,man]constants 和 tools 各最多只允许12种,多了会导致图标溢出。", - "\t[老人,man]\b[up]拾取道具结束后可触发 afterGetItem 事件。\n\n有关事件的各种信息在下一层会有更为详细的说明。", - {"type": "hide", "time": 500} // 消失 - ], - "10,11": [ // 守着门的老人 - "\t[老人,woman]这些是门,需要对应的钥匙打开。\n机关门必须使用特殊的开法。", - "\t[老人,woman]开门后可触发 afterOpenDoor 事件。\n\n有关事件的各种信息在下一层会有更为详细的说明。", - {"type": "hide", "time": 500} - ], - "2,10": [ // 守着楼梯、传送门、路障的老人 - "\t[少女,npc0]这些是路障、楼梯、传送门。", - "\t[少女,npc0]血网的伤害数值、中毒后每步伤害数值、衰弱时攻防下降的数值,都在 data.js 内定义。\n\n路障同样会尽量被自动寻路绕过。", - "\t[少女,npc0]楼梯和传送门需要在changeFloor中定义目标楼层和位置,可参见样板里已有的的写法。", - {"type": "hide", "time": 500} - ], - "2,8": [ // 守着第一批怪物的老人 - "\t[老人,magician]这些都是各种各样的怪物,所有怪物的数据都在enemys.js中设置。", - "\t[老人,magician]这批怪物分别为:普通、先攻、魔攻、坚固、2连击、3连击、4连击、破甲、反击、净化。", - "\t[老人,magician]打败怪物后可触发 afterBattle 事件。\n\n有关事件的各种信息在下一层会有更为详细的说明。", - {"type": "hide", "time": 500} - ], - "2,5": [ // 守着第二批怪物的老人 - "\t[老人,magician]模仿、吸血、中毒、衰弱、诅咒。\n\n请注意吸血怪需要设置value为吸血数值,可参见样板中黑暗大法师的写法。", - {"type": "hide", "time": 500} - ], - "2,3": [ // 守着第三批怪物的老人 - "\t[老人,magician]领域、夹击。\n请注意领域怪需要设置value为伤害数值,可参见样板中初级巫师的写法。", - "\t[老人,magician]夹击和领域同时发生时先计算领域,再夹击。\n自动寻路同样会尽量绕过你设置的这些点。", - {"type": "hide", "time": 500} - ], - "12,10": { // 隐藏的仙子 - "enable": false, // enable: false代表初始时禁用事件 - "data": [ - "\t[仙子,fairy]只有楼上启用事件后,才能看到我并可以和我对话来触发事件。", - {"type": "hide", "time": 500} - ] - }, + "2,10": [ + "\t[少女,npc0]这些是路障、楼梯、传送门。", + "\t[少女,npc0]血网的伤害数值、中毒后每步伤害数值、衰弱时攻防下降的数值,都在 data.js 内定义。\n\n路障同样会尽量被自动寻路绕过。", + "\t[少女,npc0]楼梯和传送门需要在changeFloor中定义目标楼层和位置,可参见样板里已有的的写法。", + { + "type": "hide", + "time": 500 + } + ], + "2,8": [ + "\t[老人,magician]这些都是各种各样的怪物,所有怪物的数据都在enemys.js中设置。", + "\t[老人,magician]这批怪物分别为:普通、先攻、魔攻、坚固、2连击、3连击、4连击、破甲、反击、净化。", + "\t[老人,magician]打败怪物后可触发 afterBattle 事件。\n\n有关事件的各种信息在下一层会有更为详细的说明。", + { + "type": "hide", + "time": 500 + } + ], + "2,5": [ + "\t[老人,magician]模仿、吸血、中毒、衰弱、诅咒。\n\n请注意吸血怪需要设置value为吸血数值,可参见样板中黑暗大法师的写法。", + { + "type": "hide", + "time": 500 + } + ], + "2,3": [ + "\t[老人,magician]领域、夹击。\n请注意领域怪需要设置value为伤害数值,可参见样板中初级巫师的写法。", + "\t[老人,magician]夹击和领域同时发生时先计算领域,再夹击。\n自动寻路同样会尽量绕过你设置的这些点。", + { + "type": "hide", + "time": 500 + } + ], + "12,10": { + "enable": false, + "data": [ + "\t[仙子,fairy]只有楼上启用事件后,才能看到我并可以和我对话来触发事件。", + { + "type": "hide", + "time": 500 + } + ] + } +}, +"changeFloor": { + "6,0": { + "floorId": "sample1", + "stair": "downFloor" }, - "changeFloor": { // 楼层转换事件;该事件不能和上面的events有冲突(同位置点),否则会被覆盖 - "6,0": {"floorId": "sample1", "stair": "downFloor"}, // 目标点:sample1层的下楼梯位置 - "0,11": {"floorId": "sample0", "loc": [0,12]}, // 目标点:sample0层的x=0,y=12位置 - "0,12": {"floorId": "sample0", "stair": "upFloor"}, // 注意,目标层有多个楼梯的话,写stair可能会导致到达位置不确定。这时候推荐写loc指明目标点位置。 - "1,12": {"floorId": "sample0", "loc": [1,12]}, - "2,12": {"floorId": "sample0", "loc": [2,12]}, - "3,12": {"floorId": "sample0", "loc": [6,1], "direction": "up"}, // 切换楼层后勇士面对上方 - "4,12": {"floorId": "sample0", "loc": [0,9], "direction": "left", "time": 1000}, // 切换楼层后勇士面对左边,切换动画1000ms - "5,12": {"floorId": "sample0", "loc": [6,10], "time": 0, "portalWithoutTrigger": false}, // time=0表示无切换时间 - "6,12": {"floorId": "sample0", "loc": [10,10], "direction": "left", "time": 1000}, + "0,11": { + "floorId": "sample0", + "loc": [ + 0, + 12 + ] }, - "afterBattle": { // 战斗后可能触发的事件列表 - "2,6": ["\t[ghostSkeleton]不可能,你怎么可能打败我!\n(一个打败怪物触发的事件)"], + "0,12": { + "floorId": "sample0", + "stair": "upFloor" }, - "afterGetItem": { // 获得道具后可能触发的事件列表 - "11,8": ["由于状态栏放不下,绿钥匙和铁门钥匙均视为tools,放入工具栏中。\n碰到绿门和铁门仍然会自动使用开门。"], - "8,6": ["由于吸血和夹击等的存在,血瓶默认自动被绕路。\n你可以修改data.js中的系统Flag来设置这一项。"], - "8,7": ["如需修改消耗品的效果,请前往 data.js ,找到并修改values内对应的具体数值即可。\n如果有更高级的需求(如每个区域宝石数值变化),详见doc文档内的做法说明。"], - "10,7": ["在 data.js 的系统Flag中设置是否启用魔防。\n如果不启用魔防则不会在状态栏显示。"], - "9,5": [ - "每层楼的 canFlyTo 决定了该楼层能否被飞到。\n\n不能被飞到的楼层也无法使用楼层传送器。", - "飞行的楼层顺序由 main.js 中 floorIds 加载顺序所决定。\n\n是否必须在楼梯边使用楼传器由 data.js 中的系统Flag所决定。" + "1,12": { + "floorId": "sample0", + "loc": [ + 1, + 12 + ] + }, + "2,12": { + "floorId": "sample0", + "loc": [ + 2, + 12 + ] + }, + "3,12": { + "floorId": "sample0", + "loc": [ + 6, + 1 ], - "10,5": ["破墙镐是破面前的墙壁还是四个方向的墙壁,由data.js中的系统Flag所决定。"], - "8,4": [ - "炸弹是只能炸面前的怪物还是四个方向的怪物,由data.js中的系统Flag所决定。\n如只能炸前方怪物则和上面的圣锤等价。\n不能被炸的怪物在enemys中可以定义,可参见样板里黑衣魔王和黑暗大法师的写法。", + "direction": "up" + }, + "4,12": { + "floorId": "sample0", + "loc": [ + 0, + 9 ], - "10,4": ["“上楼”和“下楼”的目标层由 main.js 的 floorIds顺序所决定。"], - "9,2": ["该道具默认是大黄门钥匙,如需改为钥匙盒直接修改 data.js 中的系统Flag即可。"], - "10,2": ["屠龙匕首目前未被定义,可能需要自行实现功能。\n有关如何实现一个道具功能参见doc文档。"], + "direction": "left", + "time": 1000 }, - "afterOpenDoor": { // 开完门后可能触发的事件列表 - "11,12": ["你开了一个绿门,触发了一个afterOpenDoor事件"] + "5,12": { + "floorId": "sample0", + "loc": [ + 6, + 10 + ], + "time": 0, + "portalWithoutTrigger": false }, - "cannotMove": { // 每个图块不可通行的方向 - // 可以在这里定义每个点不能前往哪个方向,例如悬崖边不能跳下去 - // "x,y": ["up", "left"], // (x,y)点不能往上和左走 - - }, - -} + "6,12": { + "floorId": "sample0", + "loc": [ + 10, + 10 + ], + "direction": "left", + "time": 1000 + } +}, +"afterBattle": { + "2,6": [ + "\t[ghostSkeleton]不可能,你怎么可能打败我!\n(一个打败怪物触发的事件)" + ] +}, +"afterGetItem": { + "11,8": [ + "由于状态栏放不下,绿钥匙和铁门钥匙均视为tools,放入工具栏中。\n碰到绿门和铁门仍然会自动使用开门。" + ], + "8,6": [ + "由于吸血和夹击等的存在,血瓶默认自动被绕路。\n你可以修改data.js中的系统Flag来设置这一项。" + ], + "8,7": [ + "如需修改消耗品的效果,请前往 data.js ,找到并修改values内对应的具体数值即可。\n如果有更高级的需求(如每个区域宝石数值变化),详见doc文档内的做法说明。" + ], + "10,7": [ + "在 data.js 的系统Flag中设置是否启用装备栏按钮。\n如果启用则装备栏按钮会代替楼层传送器按钮" + ], + "9,5": [ + "每层楼的 canFlyTo 决定了该楼层能否被飞到。\n\n不能被飞到的楼层也无法使用楼层传送器。", + "飞行的楼层顺序由 main.js 中 floorIds 加载顺序所决定。\n\n是否必须在楼梯边使用楼传器由 data.js 中的系统Flag所决定。" + ], + "10,5": [ + "破墙镐是破面前的墙壁还是四个方向的墙壁,由data.js中的系统Flag所决定。" + ], + "8,4": [ + "炸弹是只能炸面前的怪物还是四个方向的怪物,由data.js中的系统Flag所决定。\n如只能炸前方怪物则和上面的圣锤等价。\n不能被炸的怪物在enemys中可以定义,可参见样板里黑衣魔王和黑暗大法师的写法。" + ], + "10,4": [ + "“上楼”和“下楼”的目标层由 main.js 的 floorIds顺序所决定。" + ], + "9,2": [ + "该道具默认是大黄门钥匙,如需改为钥匙盒直接修改 data.js 中的系统Flag即可。" + ], + "10,2": [ + "屠龙匕首目前未被定义,可能需要自行实现功能。\n有关如何实现一个道具功能参见doc文档。" + ], + "12,7": [ + "在 data.js 的系统Flag中设置是否启用装备栏。\n如果不启用则装备会直接增加属性。" + ], + "12,6": [ + "在 data.js 的系统Flag中设置是否启用装备栏按钮。\n如果启用则装备栏按钮会替代楼传按钮。" + ], + "12,5": [ + "装备的种类由全塔属性中的equipName决定,equiptype的值就是该类型在equipName中的顺序,例如默认情况下equiptype为0代表武器,同时只有euqiptype为0的装备的攻击动画生效" + ] +}, +"afterOpenDoor": { + "11,12": [ + "你开了一个绿门,触发了一个afterOpenDoor事件" + ] +}, +"cannotMove": {}, +} \ No newline at end of file diff --git a/project/functions.js b/project/functions.js index 5c0517ad..8d6468b0 100644 --- a/project/functions.js +++ b/project/functions.js @@ -15,17 +15,22 @@ functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = core.material.items.bomb.text = "可以炸掉勇士四周的怪物"; if (core.flags.snowFourDirections) core.material.items.bomb.text = "可以将四周的熔岩变成平地"; + // 是否启用装备栏 + if (core.flags.equipboxBotton) { + core.statusBar.image.fly.src = core.statusBar.icons.equipbox.src; + core.flags.equipment = true; + } if (core.flags.equipment) { - core.material.items.sword1.cls = 'constants'; - core.material.items.sword2.cls = 'constants'; - core.material.items.sword3.cls = 'constants'; - core.material.items.sword4.cls = 'constants'; - core.material.items.sword5.cls = 'constants'; - core.material.items.shield1.cls = 'constants'; - core.material.items.shield2.cls = 'constants'; - core.material.items.shield3.cls = 'constants'; - core.material.items.shield4.cls = 'constants'; - core.material.items.shield5.cls = 'constants'; + core.material.items.sword1.cls = 'equips'; + core.material.items.sword2.cls = 'equips'; + core.material.items.sword3.cls = 'equips'; + core.material.items.sword4.cls = 'equips'; + core.material.items.sword5.cls = 'equips'; + core.material.items.shield1.cls = 'equips'; + core.material.items.shield2.cls = 'equips'; + core.material.items.shield3.cls = 'equips'; + core.material.items.shield4.cls = 'equips'; + core.material.items.shield5.cls = 'equips'; } }, ////// 不同难度分别设置初始属性 ////// @@ -501,40 +506,6 @@ functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = this.test = function () { console.log("插件函数执行测试"); } - - var _useEquipment = function (itemId, name, type) { // 具体的装备使用效果 - if (itemId.indexOf(name)==0) { - var now=core.getFlag(name, name+"0"); - - if (typeof core.values[now] == 'number') { - core.status.hero[type] -= core.values[now]; - } - else { - core.status.hero.atk -= core.values[now].atk || 0; - core.status.hero.def -= core.values[now].def || 0; - core.status.hero.mdef -= core.values[now].mdef || 0; - } - - if (typeof core.values[itemId] == 'number') { - core.status.hero[type] += core.values[itemId]; - } - else { - core.status.hero.atk += core.values[itemId].atk || 0; - core.status.hero.def += core.values[itemId].def || 0; - core.status.hero.mdef += core.values[itemId].mdef || 0; - } - - core.setItem(now, 1); - core.setItem(itemId, 0); - core.setFlag(name, itemId); - core.drawTip("已装备"+core.material.items[itemId].name); - } - } - - this.useEquipment = function (itemId) { // 使用装备 - _useEquipment(itemId, "sword", "atk"); - _useEquipment(itemId, "shield", "def"); - } // 可以在任何地方(如afterXXX或自定义脚本事件)调用函数,方法为 core.plugin.xxx(); diff --git a/project/icons.js b/project/icons.js index 2d7e35df..98e69bb6 100644 --- a/project/icons.js +++ b/project/icons.js @@ -203,13 +203,12 @@ icons_4665ee12_3a1f_44a4_bea3_0fccba634dc1 = 'greenPotion': 22, 'yellowPotion': 23, 'lifeWand': 33, - 'sword0': 60, + 'blank': 60, 'sword1': 50, 'sword2': 51, 'sword3': 52, 'sword4': 53, 'sword5': 54, - 'shield0': 61, 'shield1': 55, 'shield2': 56, 'shield3': 57, diff --git a/project/images/icons.png b/project/images/icons.png index dbd9658b7966e82e0a1588399d168c7bcfd81e7e..cbf4aee4195ddee73487210731d22e59cbdff491 100644 GIT binary patch literal 17595 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%0DunnYTx0{=Gmfdr1Yi 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 V^h@hL4){{Uf36~1EN$ff{{Tp#VMhP} delta 31146 zcmbTcby!s4*ETxCz)*vvbV@4Sh{PZ$Agy$FNO!Y`lul_R1Ob(l?(PPqOS-%B8-MS6 zzEjtAuIoMj?V0_|-p{PK@3rpr#9o1q15jes0Dq{gl!U5>{=P4I#?$q>2fC>wO_NY| zrpZo%54PNWQ8)yu#_}jRdmLsIuFtVBuu7h>VXG5yvxJFa5aT_^wk)GYY-q?ih z6ri~~Q?#<2)s2{{&l7^O6k;B8@G7f1X3KT?bKnr%anU z2)_#j?zC#RejARE*Nvz*CDVIy>lp^&%kJW#8zTC4E-|P>*;{pPC;>BE`bPXmN_$8fhWA!RN{RE)1f0xY3I!7dI88@oJl;k<=UiqLd-8hbmd3gwc< z*2}Vzh2RivHo|dv6>XZ%#x8$d9bDp0(1qSd6@|4o9}xjJHFOiYj!7}|2;wOwyRp6&kc3F{r7dKo&A=Ew9|7$oz z@5K|BFrhaMQj{zyLMW(X<`hIy8Lx$FnND3(WxB{z(I-(jT=h*?w0|=WY&lJj$Wdm4 z*^@A>@>z;;jTcwoCB^92#-Lk{szRodXZ&!9ytx0vJ{fG`0Qfz2!sBPCizmekcV#K` zKP!f@{xY55DZ~J+BNq<@9vjAG#P!}0MPlL{Ixzhr82l!{GUBuHYs|+x(&nF&6P0~k zf!5hQ0ck5~*+-P6<^Mz90{;`|hVsQ*l?V+;+rc9e-f+V|8l7Z~BRK3O*Pn!MWouKy zc<{o6mdPE+7@oW}2VwBwGr``zP^7i2Uo<4s`NowkgJ&B@@Qx*i@F3H@SbCNruuOo=R%>{zuIG&=@Kea%(_@~gM3bE41nky^kzj;ye#?>&s?Kx4Z5Taju`WrDg zaNM?V&%Ynz^DsgOdg~d1jAFD2ZXQQ~_6zv4(~@48olTSg0z#>K%M$xyK|SUPY!55wTk=t9#O>z%cAUU>2ZyfOmUG}+3-KbT zYf|*Wcpg>8ag>-HMhkMp7?&FB1Y=34A`>WeBVQT?`h+*HQo>2EyyL<<|MWy&*jd(MALenurZ-`A{$kZna9Z z392qo7U&4rJ0c`zoXE3<@J*lDLxeS7Kw46(7P(IJ4Y}A4$U)CbaJHNTbT4GgTKRLj zv_6^H)b9O-!gwWiehDvy4B)`_$VZ>033CGWj_{hnr!vXZVPKHIErf1N|ps`)KHi2LZsh?AbHrGcfFljWd3}C0X*#Q9oc_C5&)QD zPH!hzb+VnK3WM~sounDA>f3A==seH#h|a%6PKk~SgGfLf_Qr=|q>x{PJ7lrDoK}HH zL;7&FgWApqhD$JOif|HMRU(L)D={wu4lt31vUIeieHiv6hZLD~nBh`sQe z7aWR7FWjEv?L!Fo|ME-RGLj#(wwKT&!`s5EU0H-YyQz-ltxq+_J2au)`X!`Ny?qUVjz^8y&G38PN4>y~UasirARCs?dvm zUZib@LHL55pwmK>$zbU^A`+9}+OJ$lo?L$Rz7db4=Q>&|MppXS5+`wJBP^vKZxaoD z%6Hi74E4mOj?2^*@zm#U>^I`=Y<7wem+LQv+FMu^a|vA{B;P)YPE-(}4|)xkLl?}F zR-S8TC2$#O|IjHuw5t?~R#_}fLKXbdW9LO1S%_an_@0VI6r zAnK$94dKRKE7XM&=5xSIO;8N~7QOfe|9vd>BgNab%KcP9&|5>PVfN>b?=SQ}lJaMx`Zn0fh*&J=PRqXc74fJGnEkjo7d!J81nZf>HtYnyx;hM=bsDcNzgWJdFm z`~;@Zb&^TFWi>q)MK>lx!|oI@N5btv2C`rI4v{>kZ*`ZW4!tEVpvss*_&mKZ9HUT6 zRG*vf7g_N!Cju_!2!GyT;f{u7pO)KzK^Gp=uHK)VVqL!_*eC>EwYE+v0wV2rx3q&n zWaH*=j06EwH$%?RASN%S#GFQL#Ziz<8y7w03tJ`v2n_2ZJxA4Z%3NIr==7I70V2~7 zXjxPzB2$&p!1f(QK$$>d4Va_LvEM4GKhm0o6Viz1=tx(GGOqeU@+Fyv<)3HH`0Y*~ zVJwacQ!>hjrnaEuv8WMyK%S?Soy;^uo`+#@8iD`WTCCJ?qrW>M+?a`}HxiZ&svjg( zPW~-a%!1;y#BXx4?;9}l3H(yg8k9-`JQ|n2Jy5qqc^ZY_!9T>eX6Xx6$gN#en)8yc zembDxacY-kF|3s#kW$A5xwMpxkCn^=Gw_q{zo-`U+={i#_9kg;a|W=(3m=m2@~ zutLc3nyMa+L zg@iYCW7yOvyg zar?P}%$if?KhzgS2^835Kxu*9%WY}{pRuk*KlHui27FXZ>z5^7G&Zk<6)9I==i$U| z#T7+m8>iF~yVaE)tSA%m88f!~V;LX_B={VB%61|p9z(2|W3ZlzLd_qU4!5;Xij@G4z|L1>ttrcHKkBQ6zv0UZL%X?y%FWW` z*aYh5_{Vs^z-R+;fzQ0#_*{dXez%OB7JP$T$0UnYqc(9N(_dg^AiaEEg30spri%#o z24eKM5FXMrMJTn;a+`<5RHQZPdF`J(p+R2gs!^y46UP%;@Z}jFo|I|`=I61u${Lpe zWT!Oxlq42ZI8C}SlCcI_t{FJRxs((AXPz2|t z*`2F7Y?-+i0!sEg8!wFpIu>WU$>|#lT+1uO+3YY#MLdq^+#0fMg!zA4_Tq*pO$S2C zL@(!^FWV>4bg(7p&lXmP9@4b_ylCo9A78y44crT(7(h2Tjfc6RK*m-G*CPF`%NZ?#ZP9VmEfMkRFA*q z-g`N?MEbn1RN~t1!v3V`(U+=Nb9!4M`zEzyg&6b0IME)|;s^?mCfqSPjvGQiJ* zCWq73N6;TVq6EKhhULSUW`-GgUvB*ROwz zOLWPV3v9gsC;Dl78)dln+qb{^#2Ed&HM@CiO_(FjzJr2+KV!f?OUzd+dOwJ|=Rkr{ z)K6*Xq(-KWy30CIbUkRrDTz9ec;y^JcB1j zXcZ`}bbejxBRgO(klm_e?VX1GM9L7sOA!*=<5aEvu9s`i#JvMwT#|vMUeo=R`Kv7o zxky1J{z`$VTNKDXm)4pOegE;r>2S3o~VcmKJ7NRntA-yl^Y0qQ;<-A%dK7D-Dunj^DjDIzQT^V{-mIINzW|2 zywgob3M_IzS|j_bCt%_%$4zPlNY^e{UZlit)e9NTwXOXHhjtN8#GexrsZ`a}Tx&(; zUz?e&`@7Wy0Y+?v`+vVx@Zb@EfwD~qZsn)0VEh_DVUCfh{x>|{LnCGDJ;Z;-G)Ezi zi20P;2sIqeN&@@9l4s_>Eg_HJ(I1pMfCKu1VoI+F?JWB{LI2%}V+}jdnF16URzkp;6U5P$c=cfz z!?ME+T@~iVmyYesBLR_6>a8$Rgz7q0GiYp>A;2d&IO$}{bTX8;GhEh2&w4@C5-~d+ zDHZ;-$GTRM=IE*}IH-_&3W)>)!soyMbzw#fn1acjR;C1M6FToti}xo|m*HsuEEY|$ zZ5i)pu|mFeyLuRLN$sP6o^>{+4x_du1Qj+arGleeI{>pJ6yc}^xALo~I)YI6{>FP& zTN+7lE2OKv#?*_+#!SPut=&U}OB7gg4ECYoESodZY?!t_wUBc%(}$AM(j=e|5fI7= zMZToKAQ(wR@;&^`6nwNaCxMyhIn-iwx^@_nAVDYvXjP~$?RHma^^LA{#xpjoBvv9f zV#3E)q}4B!t)LiU4O%g6hJv_{2O@DSj|*WS92^A&GO|%756WP$VRvMH@}8YVEz?(G zC2Wk*Ai0g1ufb?te75SCjHIYTak~FyP+>VIBSj`l&?WXY7c-w8l~8Mllf~}6$;P1V z1(#?$%v6%19|VmI3kmrm@SGArI;j>X0hJsiZeyuwlo04oTSs0-CoDk$61TLhoi}HM zNYMUB{VwxDd73(ez891l6BY^M66$pO!!*Hf^wTsl5=U9&$#){tcJ)5eIHx>IX5phtIbno?G%Zi(gNUb~9=gheC8TJ9XruX478#)~USl|0d`G!vaGC@(euN>BQ_OQkiG$N=ZP1 zXNQt!oi?RC0a@5mf|NvA)fJO?&(0HQNEm_Q8jBdrhqg@IrrV1v6Z>I2*5O}FGGa2M zN6d?8r}x?3jksMMnYDE{dR69oFS)S|TbZNByp#(h%a~!Bj*9!}ib_?DuUU@Cd{)-}@5}=vEad+4dhe zIry9>WFIIqglQ-A(%YuoIkW}Pbae^cJ~!1a@#@JNFnh)0hysoR&q4SQFa2-9w##=7 zST62CB^zWCkm)qnR*tr~n)zUW%$|R8p0l5w4BzF0HlHI3At*P?S1_+q(?E3jkY{p0;P_(6`@6$!p%G~maCFJz3^4}R28yL zH~|FymI=d~GF8YQkxFXxQit73nKrUo6O)nXNs6TeOFzTen|CAV(+mHTcToWPHqiOx zFICxctxF>vpcfzHTMROz*>qeWY`Lj5U{p*3h+aAETVq<94Kq-0j}%h7tcHRPq>Vwn zov3ZAy`7k-gPj-yGattSQH(0PkV>9Is}%NY6{Z}{_g-SH2lEp= zV}yH-e-M7Up2ug{XPC=(Fc1p)f1=L6I-!a9>MDzwlr8A%~1jWl< z_28!%a^bL(c1op+;H1c)K+!6dUoiD=7zIceQ}}XDfBYzsjA+UF1pbg3uvjIQ=&wBc zt4pwzC;XZMo=wX=ijQr~2R$*=ha!CB*Vvz!T7#DT7@!Dwc|4J5Kt2QBDj(T7@Dz&( zBbQzMHD)k`NgFSm2h%rh{1ogah(_3+&91I_Wvs{WhsMh8y^NLpH36s*6VzQZMz^A4AEZ;63-HIA$W!Xl{)W2rcDn-D> zk{$e>TSWku5cbRaY0V*;jsp7@!O`U@7owkNRp)XRPMQ!&P6h1YfFAzsb5I`d!O?UD z6~){*Xx*l2OTwRP)))z$LOvG5GmACB^O?N6u*3No3-2YOXG6rSFj}tT8Sb|%p$S=3 z7S+`rXK)A7l(RU$xb#;a2VqEVE_x^)6Vp|m zVObp$0>EV#4I$whYf%I>Jb722h-t zTY3WN6<&RkE%Dj|WBE8=q=q^DiqVXOjLRF^m%mbD34Me1bz1uJ>ob%9A`|8K?Lu_$ zZwb9MIvgL>!LrCi1yEQ%>zj-xM&V!<(0kRIC%?^<(XA-SJ0lYesAM5u#HAB{Qt>eM zaYiaFIgwD-=)xR+`A3>`n16CMzrx1V#$(9){t0t6O1RM5JOPFJHE;~Iw_T;oX|eri zc{a(n$dX|@Zd2Y4LZOPFsaW|kQ@-X{QH4~!@bMw9io*)>*0a;?kfQX~1+I?%#YJVa z@&C=5yXH%pjc+j67wWF?4<%Wf3(mi-R8hlmvjbs<~99Q>nbqKKDADVw&Q z{9XVABhM-!p;b0z%m3*AV$RwY-$Ax2fmcsZrKqPMHgV<^tF0%If8xr8894sSnw%^J zQ=jxjgvKkKQ`Ua;P-nNMX@xCYo6mgs(+##_Dyx}(LDcybMWtm$F8>+IjYLA1Y<_Mg z_j6Ze5>LNb9Ak62Mx;4`R?g*8OBaj}FgQ5&YrShWN1(9G>L@MK1d4`&_$lKnBcD&x z0oy@=GK9iOOSJOSvD9!z)G0I=(n>9YVsE6Vy z-nKtstmVfe9qW3lNrij|junQTwDM%l&~1u$&VPbF5J|b0qyO3l{0M&LaSF{*o+|eD z=RtM9@{lkHdgPl%>cy}r{69RXRza?SS4k@)!|R!%&*Q3G^F4=7(DB)vzJtzx%79*% zXYWOLAP7LkHGO=@zv5>JuBI6&1 zGS17NZ4#Uq20>$RAP9Uh<79R3KE z#%X-N(E5s}0K5K^o-eH^)eZ%GSU_PbhihtHy?}Z_CBv3H@vIjUILL6w5H-*qL^$!C=4&wJ|c{hn5b@Z$^wo9c7#YiLS%cM=Sb!9WM3A)BiA$< z$H{o^8add7sap0nAfUh`-eGbjh(9(Wi~-_F_enogk+OFjuKUkU{BgrFfDsbSRo}ku zb3%ilwQC}wu$zB?`m99jB6f61(f1B~nD*@w`<_pyhzrpwT54Ce^2M`ssG=(uJ)i^m zS&MLh{fi4yfrr4Gv&<<0uaU5_C5l7h z(sKlv^S09hHX4mL4lo7s%8|oyk-#;4Vsn)FIPhwW0#2)to)L7#5P1o|VvwrWdS0$z z5zj8^05r7ypDDqM&hWn>X5n<_ZH4LFo@whB1BcwpHATs?JJ| zhO3+uJukI&(fFq_UIdoZefVKoI0mqVu0YJ38tsJ#r$TBMSr^$Up3M5){Y=XwM;d&> zLC>MtAQ_bfVdZ2Asys(ayaX%%pZQtO6J%c)W?2~uBYh?Ho^9g)J1-D9gPN)!y*L+B z(Zxc93~mOZ^LNi-mGPn1L=v!IjkWnqksLw*DaV@-{C(}BfRgbwn+$6XGUFm1rZ!G; z=AG#NUY&`5nIN%_wyuqr(PaKom^hn{-M!6mpbNxI(JLfigy;JV#lCTJrqu93#&5II|nGudBx%lXvyA0WQcNkYX69Q^0{Hv#fn|D29!%@nWh zmi_xRl&}P|%yI?PIlA(%xCtQrj|)-rEIz_}uviJvv1rT8l^K)dENCY@p!HnQWYfiY z1KT`C>zWo!MY@#rC>IiXaaOQ)5xs8q9+CWV%8Ozf6t>oOJ90D^!{qwNk^xOSZ2}i2 zYzJ}qlxsU-8NzI&ypzue4kH>vbE#*Vc)qs5yATp4II5t8f^8)CUJBhpIEG9$*+`TM zdwW{DZa9ICp$3qrWI?p1NhE4=eDRlGCEIETK^hWWUg|LwQ4RzpMo4P3iWRc*L`kF+ z4Aict^zbEhG$$$`&@^kMW2lecO}~euyL}(ns*n6OQDlQ6O!zyoJt*}sKadY>Zi9GM z)EO?Z!iElAA45dvP88elXkzFPJgwx$+H$fZuP*B0kq3Gv`(2?tRViYVR;kq1kelg# zWYSfJ(L%O+Pl$fsBAu*^_f%#IG|>@V1^!~uVF9JmrErLmp#BhgD+0BhM)u>d&TJwG znQp=MFT>##R0T_YP+_R#5Z+z~me*EZgS5@<^%dNlh-mj{XoU{Je?f(0>Jf32C27+(RRaNc$ zBZcr8s}4G@*w?D+3&PzIQFqR;Q~S^YK7`%*`MJz4o9@!(Z(riylLt+C)fdbBfBy9B z7k+>Fp%Xn!c{Ncq=91}LXxRGacP;VnJ(yoE02Ol!g`wrmpFf7@^tC*HhxGSD=Dg2m zN#0TtE+nyOo!FNbS0}!|f;;+f>5k9{9VOJf`#JaN$-RrW+4>Y-S#I@30pS}{rCnnr zWpm-ay}M7#^G%6e)I=;!E9>1KZiQKmBh<{y(CMnTsE*!wUO()j<1X6Yi=N+hQU5Fv z1H5jR+j>e$ibT*C8q4!HcE_Wbo4HMUH@}%#$VI#ea(~8!5yxNg1F411@H?v5)ZwubI_n=w5#tj{me z61GM9YR8+sW>A9Xd58;}w% zI?C*R+o9L-aqxHzdyFD1lUrwwmw_*ve}A0Q>(ycHc3R5dfiUXZ?qSA?rs%GyUtgZe zxbSy1;a;ZDa4qi5IH{%C%9k+*?8JxS7F#9z_3hT4ZoJ&`|C_SV?5|}GYZEPw7#v)j zxCy=do7DBbybV=w1#jWhzXi=AhXn93;X`=&`NozLr;AwXu|wU4Tddy7GyRP@V^fkQ zzZ$LdQJk0hihftpqwKKdF?cWgtHpURrD5(cMU>~lRP9d}DO6s_w4JKX&aLD_BJzDY^)mzioVq;=%ziSI9N~rL3^z`n#%(nrw)bG69 zM#{0PXa`<-W8Ti?OSXiZB9keG?hU4_WRP@)2!3fvbA#=48Q4CO;<`)2 zu27sUgi$4_yQ9p_gvCu=gYymWEo)Mrw720S2VYx!_iqBvuwSBo9)jb6fKSuoy<_9k z6*Q$kU;Ry_u$vYSiRkp%exNBgTTb*Vv+BU;>Fbzh*ZW7}uka8u)#Dc@{ zfzwp%+xpbN509A-PQ{*{N6V6H?Uk1|H#bd&pskRfE7jrQN`Gf*tuNka(&V)d@tCC7 zQU-3#J{OG^ltfHAnkzMrj+nfxfKB}_dIL*crf1|BuI5Z*Ez->#5)II$D)wUwK^;Ul zG2R+oHEUGtAwR}4FG_(c11{wUZfBtXsLn8nyY-!&5caC7_1dh~KTlV%p|CBx101-w zTV@Dh${VN$Y!ntS87J&7Nt-J^ICtOw@v|$-$p>}2KK56M+qM< zlx=O@y-l1j&A9?r>;2gaKfyO;FAZ3o3onK1(%bbW*{tfE4N{2nNw~BQl4P${)&6Lu zND-X9!+gMCW=z)IOPAHqxh-5%^8ahlUl)DOD7K*$O1N>>>6?*S$Is7<(Si+@=L+4S z!#j3u|LKsKJ4FlF9o#z+p)0q+(7aIE+_}<#6)VZ$ zYNdm78qz?yj)g;D*KD0*&ei&+Th+z+8!|=lLOnxxy}kg73}g#zn_X)EOt>=C|Ki7w z%<*xGvPEZ%vY0Ncje~>_BW{o2_l)Dzp?wT{i|Sg}R4*w?{^A)Pw?&1+kS$Cvo?%Kx zF!R%2yrDl+1}{oiUw6q>bJN~xUNhWNXkI%Qb-YXKhTrvAF>R@Pd+jgc;!qyX!mko(pUG1s=2)HNT^`EJhO`QDj?q~|=xGEM; zOaj+4N(xEOzxS!FD%lj0T`qXi_e_a!JKb&Ns}Pnz%O6kilP}Y`ZSHVOi;8Y%gCty; ze_v90f=WCT*>ILX4>3~7EC=)=mFJhmS(Y;kPQY5eyP&VxX+yfVt!IsAA!UrcZ>i_& z-P@rLFf$sfUhBmLpSaJrFLts^Y`?KSapAR)UC67?ohmhmu|B1nmAAIuU95Rnnd~_9 zxf(95Y+P`18)#q;)NvOSG(IsJ)LB}vv45`^dZ@JJSoDdM5mo z{QYWp&zY`WEO|ZYQv2YwJ)5uJw&%$G-#Vqz$3HjsNj7@FaI38s^($J&ZtqW&iaggJ z?oF^am#(UkmTZLn{>?`pkrw2%*Z14#b{7OPuT~C7#AA{KTc&jBpo2;-T#g6siv?tO zAv%lpWR)xHPd7`K${*IE?2EMGCc(d37+J~lRtdNcQd)#3)71N(&quToWg4v9PK7E}e& z*yZ8}K(p@Kw=NqMlI?m8<*CkCO&-Am!s8yzgKrDzB{Me%6Otx62HIu^F7ar>OX|1m zpIxr6p>6CsQddekKH9u&);s!FFIxb`=~Ms1tUcR>dwE}*IaUQ{+Mr0}IO#6xlar2i z-X9(9dkaVa1K|+++s@+BR1YzSAEX|3iZ;6g3cMf0X=Lt7q#Z~RhVixhh`(^o9Gm)0 z$cGjnyykqt!lF|ju=>+G=`N5?^UY{2=KW};DrU=>G%)w;+f0gN&2A3;OIZMCEa8xU z>Hemng_2CC?rsyJ^H6q;^%7g1mheC(W9lYl^)SuS);78z7ya(!ffr37BcCfE?0JH( z&&0+Xh)D#=l51N61K9byy0Fg`eOuHOueR}e^NS#!??1dgP`IG4rIv%`q-yVtOH+_L&c(AVnA%hsEQ zAUcaPSKmn7MIDji=Y<)%-StpNF17E**r6O}q^)nwI;QGM)ndV|&Ju1ukcSxTaSlN1 z@Dg%eODp$2%{&Kl=@zkz=XQ~Qp@v@k_($}%ugkJ+vGz*jF@00KZW}jUF_CxW z)3^e!%YZVOhA_2(r+>@HviZhxB)Pg_@ma=NvN*#ai-}M~Axk ztI6(|)tyh+!EC9?p+H#N`)y*aq$$UjP+ng#!=%5LI+^hm)+J{LmfH`D?1z;;+gO8MrW*_aiD<#Vzt%7SZh* z4L6ND8$r)o+~1wcq7HA!edXualf16K980mW1<-jgA>ViB^867ZUpv$?clVu4a72gzI#?^`^T*4iHMmaajge5x-vYsm zrXQ|<1i8XG2TkizJsA9A43+qijK@6XttD4N07)+K@m#Ml{pGuHQ#X~B-G#qoL>q~D z)*f;xKpC1E5f;{9>`c<=?Od=4NjWw)`~g6#GTG(;ddIA=TlhrokAZ!GDsZh{nPJ;v z3bv4~A?j}D#J-ZoyUWE6>g6bw0}pi@EtSg%{+8P1ZZyHn$df`rvyIP6uZo%9lOrdp zVHM2OmLZZ%qe?Un+f(;Bmd!X3gx;-1PKPyvx9ica_htP?TeN=Xf06;>^Nh)KUL}Er z7jM-7pME7wX`lB2LoL=1dnXEVtcD0lgnp|S%y7ll%X`8R5B=q-3Q750tYh9jm{yD^ zfm!KcEq}>Qm|V2gRYIJ`5SOoI!bijl)Od6AGsclA8`}h-$j2Xv>9YFOHKG|2#$tUF zrMdYMb^0=Sf2hg6W%J^+?Ca#n55c!glS(20Rui6aD-AANgaanNj&eFzek=#?4aT;) z7FGJt7rxH&tL0}59ZvV-IC8g5N1sTd+c;^Iy_SWZNEU)Ilrs6R6R?vwuY!PJtjuy5 zo%8V@O7?#Cr)0It$MLqX-sZaDmbsh#E+tMeObd920uJ+6bf!N_EA}JHbZ{nJeg0M8 z2mP)+vMjZn#H#9yvg*>v(t_yRY!+B7o%XN9a`JBX)G+Z?bc91cg5G3&G!C~t79{s_tA>G-ty=leFN6}i|$LJ z8%J69d;O)ARs0zX)fGk#Iz2^Kr~cK|-B+jJgVhpDv(CL(=Bx}aZiSRrS;I_sbRO%8 z6c<&y%+fj(nsG8buu$k$E7s-9wcuPx8j-VTAdYO#!Qk1+hAa^}UDn4gEnC3oROV&?&NG#sxRr1~F`krOb zV78)CPSw(Ut7H4hzMk|oPZEEA6&22Xp3ZGev&%hdXzqaP021#IK)vzTC*^J~d=IE0 zotlYfiZhc)V^V8!Z^utx)Ev;vHlOArEwR5J6%!G5YxaJDH8IKA2cOSqS*X+``7WNg zdcSe(ze$*c8&7U!u_o6<{qDN8`a)}}Xvu4TRI|sPrk)tH55UktIG*frU2@!f)A(9tJsLdJFU8$uuV0RsUT&)>n8@nXP2*TnXx<>t@7HE zQGEY?qjO=zw!zM{XnQ*yTJ1V7WQ4TkTjY@JJ;1(LK0ty#2JyQ-LIP6?4`z?}-CEv5 zc~55TLqNf#63w#$!|oAupSB>&75Sr6GWxyi*654w)Y2Nkvxk|Lu+8p+X7B#wa!}v* z_Z$VX$fYcbP}hc$wN1z`Vz$qTPRp!w=9$&aRn6WuA8zLZtL?LVfB#U^@HOD+4o?jL zL}_AOjZ#~<_%nPj7YLgh-zJ&f2`}1T>~UuSP4_p1X_I;%n9#5;d_d)nRd-#SOj%7< zAMPdO)@}^_GFM+8pA4LTs;p8FHr7A?@8EPEN8XW?cm>f9C;%)T-oO7spH+vnLv zZuR`zlzzIWP)U%bkjs!OnILTfbIcV3M^|@H9l@}WwfF6y7-u8bJyQyN)Fu)edOW3f4f-^-pBy?q#7MlK?{JwgB!d$*I2WYhSHG9zQYKkb;4< z6C~H!&XJ4pn*iOl^!KuxOH@B6-FZNUEL_jm(XH;8H-;KkY-S#zOmTy2eFS%LSE2!; ze?#BzViXS&F_Rpn}H>pQzJZh_!K!y${G5X;x`zRSXUv-*mCu`q0W`a9N;jcJ5M50dD&fQ>v|?PoO5l z4FoCB+UdO-wY$#jX;{;+Wy*$;j~9Z1{pTn0kL9A*a%^ov_Q0geku?R{FY@?7o!)-UUFvp6cL=dTweJw-{X3DYWPTXB7=P(G16}&i98p4W)B`ytp2Y$sg5? z7-3t#bYRY}r#0lywdOZhO)|HDs}!~S77;hsuFLKsHX31bwd<>TwROTB^&}z8O9DC{zm~uEk&R_}BI4jZeLu+G8nQb|uH^CHC7=ph%N;CD9dE zE#uW*pIFv+vJW%B)_hJ@NXQs|RJ~f$1%C)Rag2!Le7Jv4jJBrZlX}nJ9cBhJ*HYJE zCYh8+*X6AJBPBX2D%@^rT9bz)y=C*kbY$ldCzl+^0!l>0+uL9o%E`y5KV|^ z>!$1y+t7ILN4Vp7;CimcXPmOrg8seI7Yz<;fq^aL=`}`sv3=GdiY8p#N42JloO8&~ zE7bg_kZvv6eegJ|mvD@>B{%(#Lds9;+EY}dX|yVem|o=sg#LDfZPHx&r=$kSQt2G6 zJe^X!f9R84=)(*~gWf(&iicnXx19g<4_WO5MOS#XfY!N`jNNS;S3a zvALTKmeUY2%6jj`X$p1JR7lbv+iS_LYJ8U9H<#GcPK^d|N4)J>II`3>^$6+Nuq&kC z{%*Cku=f>k$pa^cQ6Du>>ka0ta$ibhXz>X8ky?A0o*}}lp;0|SlF<3M+J%$N5OJ`= z8`iuoN1yBdAn;;Qy;MEfZQ{C8F9W5hS6g<3@p;VeOvme0$(v|BwanvNG(4U*^Em8mZ#6wl1dE<8(U7F8 zL_h~-^;DSIrf<VA|-tE3N9h917xM)Vpm5%aT-_2jUIfF=XPbgg!D zt!r;;?fV-N<~m^`Y2x6(?h=kyvXc)qy#(afw`flNdYl@+2i}S*U!0fA0S=+fJZW;= z96)j|b<5rddUe$d9_r;hVm%lngL>?eUTX0_N8o~NvbSLfW+cgaITQd7Jucw5n!pZQk{`N(4h_mmq>D)<>eE9D_#lA95)C_6-v| zU)qJh4+yV(5TbAh!_M^|dJrsBS!vrJxgEpufV#he>OMF?`?^N2{a~m!t$KqG{IZ-C z>L<-)RB(yiIqjNDtajGT_3f5Dh1cOJMOEY8?tiy6V(MZq6x}Z5KLVXdVyim4%I(m5GDg&N znBD|vo-eahJ$yM5x%KKc6~AgZY9#u=y(gsp)ZTaP1e?b1Bz%HePi%cnp>&d_$;|s+ z#Y1~`Qec&rmRkQ{T4jmqQF&PULZI1S0Q}*Ex9L#K_a^eu~WQ&0cYSZL-lUhTn2S+rnP!3${ep7JwZZpF_k+A(ki zJhH@Gvq}nU@2sCbU4`OO`*CWda!&bJ~loTdQZLE1rhZGw|#Vy94)xqjEg3#Bd`8pKGmcDmV7+W4d6n5 zJv_AT^}nMRv73i=^yTKKtlDJZhL*qM=HmEyh?_Erb?pOB=jxVXDCGE_g$t*E{NOTY0Yr94teiA{DQsAq zMl7Z_|7jb{3Z=0}+WDbVp`;uHT!?Qf^14h-%1Dhfl)d;6;5Y3J<@Nl=r@^?lY^*^p8 zdM}1ZpRLEB^C_`jjCYWj@BAj@VyNFA(nH0mQ9g0cZ#@6sczm_8N*?lr>O=G`rmh~H z7+?sub+25!03G72aEbbRL+Yf3h!)J0#*mMe`J&SWN7IhF4o;~ZQEuO`waeXUohLir z`GZ8^5Z#`UHzek_KJXH^+&fGIl!_a=6o!Q7{U-{`mw1HU$mx{k-oaRuU2S_@TY zQ=@!gE^bjjcCNgFtW_NP-zy{JQ;O=$&J?^dlUf=ecxNuq;F4`vCE0 zbI1}mmWhcb(b)$JhD#-UVUw{)>D*c2h;wAjCq`n13o%kunr|^Wfsw1a2SjeV(;+aS zDx#?4>$|4y`i#(Zk)HkeqmJKonGBiF|9iqy=F?yM1Rq)F)2>|hrhZ@qPB&olp(~N& zgipZEXb>M5dxvuG)xZ1OH8@nlCAjjhNju5Rb~kWLP%f{9*p2?FQ)SM}0`iT1_Z*K! zPkZtrq%yYD)ddb@fJDlr?Q6ugzr^Z|C1g^{1py`t$u!PJb_lW!WE&1UT9D^0;)oW` znub(J!RJsP=}zH){U`6Lu$G&*$-glU-W7Sq0!}cQJ1~V_VmyxR#GgQ+<=rO$HC-~e z?gk*NG)!4_lLcJaQ{b9(pTAz$t{HdP-zg?h0Z~$K{7FcW5A6jv*l|C0;s~1yd0&TYsu{A0duOV4AIgcFCGx`^*k3F6wPw~=u@<^M@#`p|@m@UI z{bay(H`zZCGEyq?{igg^?y)`Lzqj!kad zb;T~mfs6Y3!O8MAHtf%%W)?RC!?+=isCvCkEXBgH&HXUQ>M@OeDK7UttzQJVQ+f~fa zT)MljoiwVw_B8HVfCg!*9s(PwFo|>L*f135r>&1m?MJ|+=A#lV zT7)3VyC|xlaz1(;YbraKc;>`0@bXYxe|JUhsr+>(*XfO?z~1=y`^vEiLZqIq2eW~9 zgl0Dp$<5?zE2$2Kf`o9ldIqlw7P2j4rUwgyKa_eiet|6=8A&r@25afpFRpCU-ijf% z#nJj>Q{Pw!7U8l+20`BJcenud2@%yo%kxRT)_fEjH*wK9nK4mWf;S9CkeQ+^zrVHvf{et**($(Eu{z+@k{($yUp#U%Bm?$5WG($1Jd7 znlW~%v`k5eHO6!5(EubLUQRkKzmFlkf{&lj%=c{$PNWDM>P5F>X773IMZ}}_hjX2jPNVn!FH)GzkCsS5&!%5exr`&$tpoyoKiu8%{>ab zVS(iVz907PA4S&+FW7*SSH${nyJfi=-&Se3<8SrMQGZldS=Rqr^hTR8l+X7_K9Tt7 zeszf3$Ix^Zrs9oBVJ%56XMLE4xOuBNUa8fUcGR=A#kXibv3_I_{y&_)_4JC>`!|Fi7QD%FGd3ivzeGHnmZCC&I9wBCf+TpcB z`o2FAyXX)GmejSp@`zg)S*t$-!cA~|92HB!7>oydB54%&9M9XrY}AWqeHPp~qNx0e z1^f);7&1b#>aM%Qh$dZ5Aa%uugu+1#Q*~ZwHxq%Rj$w?N$M#RUO#d$BBjlM@`DZ6p zCZDGwmVk2QK1j9rSNnQeO7c_8ut6Eq-V{|hSx?rr&ACp_?SQRV3%i-9H_1RMwm@EE zxYi*f9Vc$~Y{>~FU0Fl4yvH2>EOv;Iy4AZ4p)x)hY@&A;CuK?<2h;9eS5kyLL3k)t z6YMtgahLk9tvqpWn~ql~VV#W?E2=~9S<)@7_W&tJ@-~NIf>}{IDw{8c4LbE^{F_{u zGW-Q?PgpHOr+Xy)kF~kE8_Nu8Zljpxr61=2cdZY)j01mg^z`&Z?VuX(UY1HFmv<@& zIK;dqlcgh~LS)vCJ^o(dwy(ap@|b@vZ3av)nzme%J#NSuxx6}=XPiAg(AHb<+0)lw z@Bl7HCKo(@dv8Csv1!sq`Mm2w@8&%Os_TE*-c$(Rq@ZTceUg^y^}+Hqe?wFGhuIlM z|C9xXi@lurlv|&by-$V?zUvn&B!VCAHnvtOlB4O{fOHOs;oxU;^bjQqIJ}Q#Dj9-U-5_vHKM#f_1!Kx({KE_*j;a= z0#HRy-akFrtgsVU zsd2`SJ82wSRlWE`ZFXX5luwX-2GAUrI|5@%^bd&;A~PJxKRXsO>*xp87cpxx6^ggs zM(DkGSdub=dcEqG|LeeWJf(-OeS49KF0{Ut&E5~gqJs)5sITnvvG@X-pJ6#W$9-ln%G#Ub5o!PbFL!QmltQ_k56;vD$Y?LG<(SS!j z)F&d48Nk>(#`(V9$gaOr9F@{%>rhe~t_ja@w~#GQg1ZY0{b*svg6ORaKdPUGWxKx^ zMeOV(NXiy&S(WJy*P&KY(j+?-(iz~p@?Nr|h_vhKmh-A^Dwb=u3Hs6!CHB$2(teZ0{ z;^9O<&&v$zTIpi#!9>5`{y@X!acfAC)K!?u$}imPJYyO|qqoO>E4hnau4nlT>pH4y z?X;_yv2{a1n1Fs{WtHj37qCnhM(bVG=^ac7v%+kvdVY~|?RBlDv?BkG$sYB})s6VT zE+WC8wm}JAsVIcOFUdHRfjI%QB?9KEE}~N!Ie4V+k->x9n;s^Rp7(W~MkW2{S{Y6B z=-M=xq6cv_7z{UB2^5e=XHNs#(tJ!6*S~4C7GpkgB{Xf z5NG+l5t>o|>RA&wu!sf=4rT`depSxUBWG(V>fXFharcbLN@=C}O$LB~HMbPdt(qTs zHo9b|z%m|Ct&dX&BvX+vDu&(b=9{AJZ(M+R=!jh~JB(3V-6M#Rr zF_)KZrmnT^tIiqYdE3$LxiSYNsVV~E9wAm+f=YtpXh>pAdS2vGIss!z4(C{jLiBk- zh6jx_5f_pQxIhtg#e9lb`nGwV&+*j94m#>t$Bgb19Q6(3dw2NmSK!|(@22CX5I50O zu-x%PGBb>JaZ2Xo&5iE)#P`S>)|b+Zi9_fqsq^E+B&hqF4nyvSIvMnhTY!Z@*#El1 z)LUPS417Vuqtpx5_Y_8&t=gqeC;K233wP4fKtA&;G0=&;_Vir}1Z$?E^(Cfj>cpsg z=*gOXX}AN87%C#yR%G?E7(}^;-_4RYlIx2rp zooI>p|3xp9`>HPt;xudnLfU$$N#JcCX3c_M!K7(4hVS-!K)OjcnpS-dg5z4B6l8mo zqc(|Lu4Fh1{=;mVae;=sJsUppoY0>)%RD&`a?see#wftyzkloa9W3l6?CG8>&&2bL zs^jf?J}L4fZMydItKGUV*~}oCvM&mCf8Kk{7wqaodeHp%O5E!G!U{XfG$6aa4o%1a z=0an6rEeLvPbHV2;tPSi372k*E?#@Vm%Rpn&m|YJHnNECq`PTfusl7N9!PG*wG`90 zEi_}&o8jLEQ7E5ELJ)eN@HlL)OEx}~OPWuTRf%==TQs5l+xlTg%HA3me+mS1jLl;o z&!zJCuMHgnFY*NCDih0%BsnPCCSWJdd<2^qi+_);a(WGw4(T_ZP% z*7ChRKLq=Yiyq^m5N$olad_em{b)%34YAi!dtPjt5A-%^=}fj&tnU;o3)|YS9=<0G zKtK+;i}IzYI$d4O*IqpC&&4t2SN&OWnzW|PAKJVwWXjIVTOZ`id6%8BJ5=TAy^zQl4ZG!3CGeJn8r(Swp)-&IOdQ+Q@IC@|jpHWWtb%RWU48O_CcCK#} z+UbJtUb^nrgoeb8OCf%H9{aG`D9Q-g4*gURhAQzCTp#{459FmUF*$h9s!dp9b)M`` z`N{U-zOXk~zEI5PtTlV{+GB7julLqxY^$_rC05?`CuB~w6Z8Wwe zH*P^#yc+MfiS4am{deouknT^8ZE>XG-$5Kj5ds>!w)-nhovQD&66nQ`!jB9_kSdKN z-#n!eCYm1P<$YekQ_D@+vt18-h!A8BY8Nq|ZMa!(t{_SBUf-20O<0zZg!4BYSZjek zd>fd+sHZMAbHx7yjFCF8OAKg)^ap|%jh$&r&be@*rRLlHQ$@dY`u3ui_i;js3adQM zMeN6)Eo08G`U{-hXZf80|^=GI*IN)o`)|7{^iF~^A2i_mx z4i4?bGjemOSE(1zaeU)Uqa%c32GNjBpx>Nz;_D~6lHWV3LhlX7_Cm!Gxm?h*#m8a(Pu#O>00hwdxyXk5(Lg5Zd4#k+2|Y^ET7| z!D}#~wp3@+HWShCP3!aub1fll=TODr!_Wh(n**hXp4$`aV9s*l?#ITZu{xm`&|7EC zQBN>zrc9LR&~=-=3@`T`+d5Ld^_A7T^A}pHF@Da?TZl9`6nCkYn*BmzcrrExet^+j zaHo&hJG%?@;gi-0!gEO)Do);w4&g?0-{1|{iTHsL%{OmuSoCh|{ZFa>Sf*IVjPu{3 z@60{aQ_qNd&o2C2ZWyfl-n6v=`JK}bJS|$d&SQzo1bo|LHPtKAVMCt8@=HWYTkB9~ z`4J{jCX~`-o-Sihbo-F!+kL0>sK&)ABA>&*nuCywH(gjs<|k1H*XQCd8v>kr zS4HZ##u6{>*;KWAtAS79`X^8CTAhsfMGMab+)|hmz+@9r@i#h;pB4+-- zzIRP}@5y^^Vav8He<@7388&r*IuVV~hW9AcTN)v&mj|@}fe;45r(LPsA}c?|kqtpj z79aEL-YgH|Fu~qAq5N*bc~>5 z-=BG6P01oB>b=iCF*S9zNX`oLJzA9ult#ZZUsZAUH}}#U_uwO>_Z*Jz>A|lAQ$;7L zYW)cmnwn|OaXXW6YG-zfqWo>CRmr^vSCrkrDXDSr4p9q5r!tOtHd4}MW5`+Kw2?zn z`&{@JkZLPKPOD|;s%7W1uigjVq*eUK&EZ;`^3c$5Cu-8Y7|F7I0_PX4tGgDWbxC}a z%FZI%b<0y)uNk%8bNYd_Q|{}L=(Ag4k&ZL7yT4SouOa8sB`$b1YSG-M{bDLhe9Aw7 z=fR&rTP2Pfv50J~Yf9mu(1G$h$!S6*h}R0og0BwVPAlG?K}jnGEDFtt2wd)bF%Sim zOMLhED?ZDB@B3!bn%vX)>eSEUcM?{5u6zi*TIU%5=ms(h6~l&V{js;YY4V3Qvhjw7 z`FElCh!2xUYqjB&$c&Ih0;qdC~#%8_IwFnL2?A#L^{-j zo$X8(p)4Or-@fCP-m$FQ>`wo9_aKS|xj5w9ewrIkG|vEa)tD zG`IO;TMipjyU#8#Y7I;>!V5d;(B`qmT2iTJR`qWpc5X1kMUn2mMo+qjOb7otz@~_l zLP}repW6Td;SQehtDsZ=bLrZh^1Wxf0_V!IMQ9;7!%1-9QD25)93Fq|^E?BXGohs++vfM($-JGo^$+}G$>;5PF z%bd0AWxmy{Go%sOULl66*!UKLP0zRVERw)06C}$lAMW8SpZkQ3W51GY*paB*5E_D4 z!|?T}H%NwjxuMvg;u{-%fi$urL%wo0K9>TAtqH>zbUoj9UL_Tuu#BmnHgaD_9WPJ* zVD4PPWMvc% zV7)m}BOv=q3PGqXGQBmZyoyPMP=9#&toWaINbdgG{v$zSApY)m{b!ZXW6MCS>k1be zMbKM%Qs05Wm1=Fvk5ClUnaHs&af7+;Z6p>L%OBU~pJTteO}xKd%P2$}c0g(Lq~jW= z6h-tT(W=z0c-H9)5QV-?xnH^N_0X)8_~K`VHh^KE*Yw=MUH=|n6O}N37#`JMD+=Ir zveOs2*40XH&X-6U-$s!WeIzU>DnjA#aW4t;pj{(TcDMH%$O3qxJ{Ja03Qu@4okGsU z@LgKlac$f?)a#haZB)K72cMMi#EYAyHrjG%>RIs@xvDGzz7y<@4_e#X7;>-(WD#NF z)Ll6^7?qTqsj*@)yL1@k;dN~g@lKhzW{)&1nkKFN*_|CGe1birF9SBPiqN!7g_DN< zJ*@b$(6pHHcl<`bGat1!C4E)XWG6)G3~n(cJD-~nCFZ>CAk)+yio@h;G5GeCeB>#W zYu#6v9}}4}FdF$0+VeEmc{&1WOfKxY%_>a%hU;q&)+w}C$HF!MrV~ycVAUfx6@e26 zaeWkD=G<)b<4v$GOuyctEVk+Tjk$!s|E@6yg0uGr{($o-0Cq_=h`V{W=(>zgLjQ{SMvR|uMU|p z>&(GUy5ranJ62+3d?kzKAr%$6sOBrS^Ec3i-%TG0PUi#i+3h6~QJd~6c>A9ge>|w; z4<2+m=gWI=(@7i~ffcfeRoq()vs+xIv`ozK%{CRLuBQ)mE(T)z9yB%W z@#8TKO1)6v-VemvqiB+DTHNFJ6FQsHQl|zUn`V;Ak}yE0h{&Sv%l)GqGm~ci2YYh*B6z5ZoRL%&9-4ohOF)I)qa(_4ggkrV8r*^EG7L!G|3m`c* zGx>c@&v5gDZ9jCtTDEerxyg(%0baWgGndvR6ipBAHbpp#m|(@L(m{C1Ll;w|s%1-~ z(BOH$y%PS++Y?Eo$54nmk(RO&?rTZ1nS;&dd&WGACC^jRDtz^d1)7;e9;XjB8D9jY zWKe8kA`AsNGaS)^m=CS8Y_aA%CHT0DoeN>bi z1$HkAyr~~TGjzT256fm-_7VDz%|85N`7>nyIu6A31!>=!d660z{W>uGAY*t=KP>}A zMf{^qk{o&6`aLqR=%HGZ^LJ#dt73T)x>!_jb-anTwml5p*KJUU69yY~4~CnVLm9SQ z@1_hE4B|zq#rzHifQ&a@2CbhgyiS5U$p>+tGCgaM%I-nir)bl$TBf=xei5@)Rd#TH zZ;@z9CBC{LpDpTq)Qv(k%S~ckSg6G<1rkYGxyudWOHwHz|ADBwCSORl3{h2cPWN@J zi+TcAXcXM=okuraU{|e43;Cfzcb+8`lYLvVpPxvv%{ng-tN5OZ1y0_(Zi^M?f^iDd z$Im|5@ST60nZ*4e-A|WxiR~#9Jw`z`LQRMu4_&x1?NOLn$Zs;3N==z&;`xx34E__^ zgjJito~*A||M>D$u!EEC>6n6gmaiUJSI}&xto^oVL)Gy1MSXf!Y}{CfHQQLw=9V85 zBDiM;tAZF%pdU&r&c|&anPCuL)sk7$~8n(HgL&7~xjqt~`BG7Ri z7SCC3sio-XUU0%An;OCG`zE<%njz({s8j7&OwI&Mgf`qJ-LEPLGkS&^n{? zVl^f66Om)>@U#12gYn&c&W|T=lmy@Dv&D~B&|q^iQ4`f5sx0D)N)o3rK7nnQ(Vl3``ad3A=#KYz?>Ul2?3%#r%WU3AGqt@MDS8x@VFg z9D#Q3tRPb7_V3Ms^{Q4M|FOVJylyUEj48^}vdC1)2?wgi$gQf-N`U_ds$%gAKxvE> z14c?5@)U@8LUw26JEo{t9{iYH4wmD9eyVgWfRu8=a?;$My$v(@o??;r6ep|})QY{lcB|KTFT z+GGotWfx#aBsfgZ$aHDDv{U^M2^J||soz4Y!=U2SenY^V=q&CNF>NO%8|eKry@__U zzYht`%$bzuELP#Tx#X7I-zacKX#9wamV`*+-1Rh4-S~x!!RrGXv?ZGs!wSfL-iC+k zmgJ82ASkP%Vxl*w!rjGa5wX$8I`V%_@TclIav&svLJtEj01-fGal=QbxgziuGg`2Q zey|trIMw0g2pE4hgR_ux8-BWYJxiJ=?ASkc9|M!<>6_}(SYi*knVVq$>r7ZQT%2_DjcvpSic24ZVp zEz&yHb&jLu77per>s{ToMD{6s#kUolm7EoThNCHlei@^E%PjDcMQTAH>}3$URm4@7 z!-5PuOaj0LxjAQ@YXhqk9+n2$Ri(quO*lLN$zB@CO|~NW9^vP`DQ1sH zi&F1Tp(S!%e-?IBbZ>9&^5sOm{kkDH-V&Q%#W%ss6AWqWW#;`_e&MSC!w#sK+18l1 zU82W3%(-coW#Ri}!)4o6%*WGl%C-q9r@I;u=Ve~PDNusr5^h;He@Y#;jbLlUG*BP0Fq+Y zD+gpwf5=1WA69=Z(VkU1*aYNQeJDkNKyb10zp$amOYz+#t0sA8di>O$F76a2W1QU z4>CH!j$swk)Qj%D(k~v5{vqv3{h~}Jq7TSRc6@JpwqY3gz2Wb$vPeDC`frDpuzOAt z$qU7Qhhl{M7n;5cx0-P9DfBx|`B(KZPw!qw|5SKyB^GQ-$HndRiBOiIm(@@osot9u8lXFFHvP}ZzZGJ3xNRL%Di7dcS zF%f3iq5hoe;LIBST+GBM+Ziu3iZ1~!Q*2j{$HpR7A7lS?xx=vzkfc}q1IY+aKOi_? z-Xw6mUY(+f;lb?i3aMW_#;90(R3hKDw=QD0{fP;CM^_eNs_MyZ{{(LocRf&sT3qyc z!cyQi3s$8d@hiA`AHSzWIAP3_{|iuY^@r)xdFQPT>jtB7-zf$<@~5z0{5EsgnQZbN zjyL4qw4Jm1Ihk5+)~ZE1)$m_tKg0mW`&;}`YK&z_WXurdp6v_url6mV?Ik3X7M^=H zi603A5mh4J+9NaTIg^f5D1Yv>~b1;`@?ecgs`T0ripzpf1XW0Mv_~$Hd)j<3io*%2s^%pzV}lftt3F{+wOYO!4gZ z?4;luKEC#gmHNof_0k!*4U@UH3w%WU76j&ZZIun{yC?f!c*_+=Td`(5OO4O|uYJnhRty=B*YMP@ z^_d#W#;}&gS5v8Q)k)i_;$AqZ@tkYLOgZrBv3u` zIKD!i=G<;7Ivg`vBs$>`Staas#u)4Dm{oug)e829yY}#$@p;3o-Ce*n1q;g>Ble@> z4@%E#b;hF0qSb})yXn>;RpoSrcoFY4*&hW(Y6p6EF4>|E;|3uKCwp{5bf#8_&7pTO zWTRXuv#uv&< zO_Bu1=SKz$`?q^Iz%lTn9)5Lg#kU{%?MvV?-2L4ddutY-Dk4Z%h=~uHXk>Mx4@~dQ zSJ`D5pV>r-kg1XWyWMvH@9w*Z|ehOd{3gDGaYf*=&h zSiB1_y4qtfILTPMPz=h^MC8OTEXeGe!ZY_W?$!qxtOlqaS&f%k;i)aE8fjHrNUP7y zcjmuabyjN{c^9vpzkN#j9GW}ttvJ_InQ(R>Yf7d4l8QWeanlGhVq4zVCz*NToEk9P zIJqdoJ9I^T1xnugNoHPR2(CF9Yw)gjAoz5?SeUmAo5NH!dhwzenYeWsTNeO{e%hO} zU$?9AqBJ9Ei7pktA*zXwIZ2x9AWlvaD+S*^i4&K+9MDo}QvI6Z!*GM6i@wXNJWIK& zY&viQ43`W8m~946u5^IjnZ3cH&>GK?}0F?uuh$v6O+ZZga*4QpQuz5F}txx zq1$_*<{ubRDD*~s{yy5e$$jT=Y)DCy%>7`W=++vJp}cYXZ7(EozDt(rU}La5Sm{Wu z87>D^)P%b!Na7REuJJb%u*A8qaF*#*VwyU9G$Sy@sQ>9}im2duMc1ZoILn#xR??-~ zpY+-J#uK1ZXk;+F#$P3ce$cSgOgmLV#u8CXn~G^~V8gv2f4Cg0=THX_Iy6nzdVOLw zh#tLC3j|P#UHmsp%{ydi;9=ro!WE@d8GqzJyA}&diu>5FlQ_eec@&`%$P^O;v&=B=7YM_YV%-bYG%>j) zUJ^cB&KDG#bVINRUP9Tg~Jh_ELHfEaOEXX)rUAv-@-w=0EPcAY{tL$Bo)>&5Y?5{E_9MwtN?(7LY%Y+p`{$9 z2!s<0($}Dit%^7BrVDPyLa6bzy!!&;F8~gn2{z12f@78WybTieMdViyDT~r}#$SdO zXO-R1;-yIXf-5b z!ju;FhR!GxK?X>qnR)25(O8k4Gv6bVD9Bt6qJRrD`+(Ry1PjZ6VduE)e3TN<`Hxf+{07OH5oT2 zQT~F!R5@N0tJXMEL*zLD6s zSrCU8%1cL)_>>yK8GSt|aD}jV3uQL;ER9g$DQM7-P^b`4tZC~CjbiuY7RqU0 z4m1RFu7IM3DFh?X;FkIk9fE9-W!T_86JSD0BDTB=)RxXu> z+JJerM6q5)dq00_N!8R`$NABm`*4#@=s31meXw_3oor=$i%(mF-F-);1GGO{Ih7FBKt zB-cov6{v~r4e`6$-k@X?Kct#3YMwNRG~Lc&&cFfS2jP` ztV+mJItOCY6gNgSGeK*j7C>So?nAo!pk&ap5nu)jc!>3%B7v5HgB&Oe7O1}4cqYMQJhCfRyHc=31FB9ygIyIw zi&dVRHj(3iXET#q$+#(`pYG>(=y!o;@AzTYVr=lVW(Fd}j7J27j6lJ#HxvGxvcQJ7 z8WN{`$vKc>DLykZhZi5j)cZG=%M!a%4{1fi;9C(j|My~o7Xd2Hfjnr*a;ulYGBb{~ zQlQn#jSey=Jp)E;|5!C;-hXc?6Aj9iX{i$+n}6__^lU5&HJfUuUR8L$Be-UKSQSZG z44FHAb0s;ktU4)V-XZ|V(YL7)W$Uy5EX?6*?WxIpG3v3il_{V~l#FjrofbdA9Bzt5 zB+zV{wm(6@a^x)HCv?k+*E{JN7*_Y4Sy`ddgzhv~S0hQ4N;H!@7avnDB36i`?M+E6 zycj>Q=H=)=8%scqOPq4p`U4TrKFb;rIj73V!n_p$R2bA48%P?EL{bM8+k0qG=is#e zIg-|i32qH2jvO#;;9Xg(b_H3Xa=}SCqk*aiI_o&&%Z zw<#93oMQwwKy4&FIxi+3C?^|Xm6a(pq&3JW!AWHyn*gypv65wmsaJwICmd}iW`< zf@q(wCK!rbH#+!1S}^(N$=958>LZ&mjQtZ09091ktf-W;aSQo!Ns56Zw9);XGUWcE zQ*%%_uc#~nfvrNrm54Z02Ng7hG!65qzu|~|B`yrtIT3hU^4LTJo@fH`uaeAe;>H>V)`5^!1+<)=SQlr;KVQj0`QkP zIc7NOeNvuxCwY?m3-DbErmQdL{BwSkoFo9l%P zFK(^E0|TF3O^5y&;gBgMnj;OExh~PasgTgpfXfBpzgK<6uus%@7YI~-*wx#w0Euye zG!}_GBaA-RFZY8#@g-j0o!#ALoQ29Z<0Yc8(WFNIX1yw?-2V~hT z1ljNNHuom*o%sS+6Atp&v$L}Vtw%5avo^`&0!Y>MVjxkZjmtDXU&CVk#aascL6PqX zxBQO$`EDgjq^%((`hRU}?Iqi>{^^Rb4wd>Wv7bsNa=uyt`$xWaSEv+52Ji-M zlUF6}#C}scWJ4IZQhleMJgDIr+XJAd3zbR;ZZnCI<7|fthr1)x2WBH#-kJ$>q4&9+nw=Z=t z1YOwoJ$pO~C5DRQ6i4F|ANitFQ0_$1$C^v8G8`_<-xO98_ooVv{x|LX@>un6_V)7)uXA2_ zXbhlGQde_j3)?_ZebmRWv!U$Jx=90|KmR5Xni$h~wY%S^d)QYt=>B-d&AsvM-Sg3# z|E8f6X5DHTg%`_yZL)CfvA|taXHvLXIoLR_U*Vl3e!G8n>mYc_#LhV26}A!)TFMEI z+_=>|I=-ZW73DrCB&jn)CETav0iQjy=`Gc1`)dA~yU8fO0Q zJhz7QGH8z*o)B2~7gYAux6hVa$LjVDKS}gsTEqIERsBEy!M17+;kq@(*F8Tl!Vxc1 zVmV*qs)$igw;MI9$}P9UO5nj6`0o^msNPn2x2*0fF9NnRb=_W$!+{p59?$JV{`-Y! zOlW;1tjhX|KId}TUFl^IUBAgIYIyg*Uj!bcDE*S=GatEa-~Lz6aT3#^c|N{0TIg?9 zB#!}=(JQ3X$<`zXQkW}Tx!0>DPQ$y+=0&&nx=0&&ny|2j?>lGpwdE)Q7YJCGo9mpPna&TK zL$IrYqLjRhlnfeuaq)j39~AfhYYfo$alLaMT-?tI0Pr&bU@#c>IYQ@1pL69L>^X*p zhL-2tJjd-EzjGd(6BQMea!&3!CFj(h({@hZIb&mEv*)axvvtnrbB@m;lgSqkKcAe_ z#pJGB1ph+tUju%o$}BFme?|XS&gY36258o$0D#x}fv>FnI+RMC19{8#i@k7ib=`u3%iV9=vNC35@`}#!*lK+u~pJ&;cem5CE!gvDOcy zBUyp=ivDwaW$!2Fc#un~lKnbCG~qh}>=gmu2EPXF@=w+`$Skfy34viD?-;d}oI>9I z`BEbQmw1-?Udi#3H#v7b?CqZ*F;sx^eS>oh5f1uXoo1Pcf=;Gs^zk$H$&8Fq#O`gq_vCDZ9pKLA3WR#m-Ecn5=d5TF1|6cvCn3IvtDl5Y;J zU}oOnLl8tktZL0-_-Z`)pmbOW*ZMn0I=`PnKf`1<nhkamGiS1eGD9HM>wo8;oCRbV&3hS43B(pVbHOXc8w@6jDu!l2MnStO{^~Q z+~>f;9O5TV)gN-p+ zLP+DQmBNd^Kgq8qs@|E3<~7Ai?5hQw8}e&QOE}E!glYSF*S2E{A)9(_*}=HneI$0v zMB7ZkHiv^pph1W^f#&viMb``EE@9}Gn#We|QCh+$c}TxexDtb1D4!B0mN|j5ujlsO z3Z2mJ4#g+p*r>;HqtVQ)P10ZI+@cEnliO`y(;=gYp%Ru&?0Vb&J+8WgtU28J9o!_{ zM_sqIvcIy53rT)e6>@)Y)38X81OA*^4pGiz8la@_kR>?ANj3dXszup&R(o}VCCJ&f zZ(Z()wW-c4uKK=Cw-`5H2i7}Jxg?cBWjSqYDyPQ`*rm6Gc;hoI{aAF%(N6j!N&V~9 zscIj+VKK$vYQ1c+u4t*PYqWWz7M>r^9BkSL;ck^Nv3fIZ!@UsK*$J);%4brGV(cpu z?o*|V*0pHg%kN~XV9Mh_ft(x6YvaBS{Nd=7u=5K{p z@|`wUkXi&_ow92_@#^nVdY3PhGcf(rNCeDW+D**YX8HD}#v??`{XxGr7zj$JtjzoF z+eM8Z7)Hy(WeFI!Btc?K<_)0l1hGue4^u)c$vw60i~<2lbT=~w{}A!vhG;z`n}IC` zz%K-cj0wr417q@eDuafa9nd0J`mDQgn8VrJIm z`|Xpct}Vu^jX&xf0kv?)THdO0+AW)`%|V5}k8|x`w5FmtT9|Bm4;OgYvg$)=4<7P^ z^*EWeTKyPpl=-Y66l!Oru-8>kC^~O6^3B-A-ZMflkv+l6Aefj>fz$)Yzt+C3FPN=K zQ?&thp`d;4mpOD;uk*X)LOE%JSNVnKnY(ATIN4jU<2dEHn#9L3YPP(67?U1to}Wfp z&iK9;3%o8+eQQp*<;YvXWlMVRFrl>ecP1aPV*(n}52M0GRl8)@&Y92(y(rLL9yoB^ z%U{c+jvE}#;9=qN@`~Y!#}fIfvn1on#nMpl%Qj~3T0uf^8%&N&L}|HrGJ~}Q)1`Sa zYqN!1eU|4FE)D!rh3i&*SxIY)lN$ZtUCoL`6-RQQI;i))%r6G>Uf?0twaQVntdlwlyPpkAf z|7D3zDmE9{6y;aUakE+8gm=vbH;hCaT80JJ9V97ugP+t|Pen}K=HClODu;)$D20+n z1LJ3Fvi*NIF3*!n7iC@h)GSwXrLNalY<8P>GRdx(x#j8vm%a;PU&$KvHh2-G$CS-D zR<*Y8?ctZLyd-InGyM3+Y@Oi;rMpU&?iNR5;%lwNJ{1S+XD&wdUVrT$-6*WPx8=HJ znPO%abI0Yx+-gSDCHiU#?8K9k*SN-3Op?Vs9E#RO?Z-{Dr|V?>u;l%qJXS+Oy?f}@ z-XI42yp*n*-B$sn22%e(-rrTC2;XASv6OLa6#>u@BSDyPVG6p4N?vM!xx8bmU=@0^ z#fc9+5FbrL$u2(Njii$4WQcs-9b#nM}Idt3|6svWBG<$m^rBi-P zJjHF{J1*qju(IO*2>J&e)2?MPcwg<+u5EdvOf)?*A}J$)0MinC^2zigF8PU}j?2bV zE^+{yxT-Ih5~fSRa@E<1_>16PaS{QeMhX&nsNK@iV`5zqlo3E-;T!n_vRj8uB`0AH24XJ5uk0*k{p<@|4l`vSl^^a=IM(RjHHWuUt6 zXQKD}#|s{goQYkfXn-CyI*u28<-5A?57?z7ENB1|An8}K8Vo%Q`Ax7LynYo+;BMqe zw(DllAvM0|H@7tB69u$(eCbXXj?7WI`=cVpYwfkv0f`ZKLbko}dT#Pbjp5+$Th6)& ztx?k`I>pJ%9$|~bdex2=Yk;%z=%tvW^ z-Y3?bD*RK@r;_c%jc6!k^21ur*eHxrETE1%MdxEs-=tyf-f`pQ+M&-B%jC0$^|MFc zNAo4mTde@ig~{NTv`xhjHb7KA$OR&Zu^4!GISGXspTGzv@nWF^QAnHuR&R)p9Rld5 zy+NcT@Dsp1j4>@2$|)GK(#cc&biWh%BW8kbI+ zUvS%ls?Y#lnWl2tVjP;A%9@6kCe3{A*3*=hib{+a44c<3trBKC?kjvHL%f2#STOt4$;lNBN(@eo1 z_`1Llrz0)607{9^T9CCjYqHP@xm#={W-MoK`=ivzmb4uv+q?fk@e_QPtlNiwLx z4aAL3Z}6_$o)+;@0CU{%dmxxF+dtGc$>D#CBis_a#s6j=1n7bxqgwSWE!2B#b?OOk{hplyYkBvo!be}Wn*#T}RzA+kQ5ZJ!d8 zbcNED-Klvll=D?iY)tN0y2Lw__cnzkfNajY@>$5%&ED*msHgTw?)(QQ)o(kEKOuj* z+6{TJNcd3)6_S}>RoA9ZxbVTHH}?q#7B{Lt4F=62i^@-RXCL#>oM^*hjsnd#KD<3e zJA^~nl49P&6@NZ_8c;PfmWM9Y?rBv_t@=gge13HA&YNKn?axJ8Fs*%R@N4=o%U^JiYh8?7}U2ANXaZcvOY2q2^Lq!YGP`>vUq8{?9h0P5#Qst2@F0EppL ztmzs#<-t&pi0lZY*@;n*PSEXOFF8U##VHb-MQ3znp+!=YA*zFdo|0{JH%#s9P))i7F&kyyKp`nP|-hbz8Uw zirA`ik(6)b${jl1sG6wjs$24~LDhanFFlc7`rZ3RF`aj_B4eX%SLsX22$_s1s*^r- z*f%UcGF$kOu;xj0vI~}}iV=RB;K+6AYNW(hR4@|lmXdp!e9zAv)L zID0H@Z~(NZP1n9Q{ynKuddxu`QFT5;1Z12co^Z_W~b$y62b@ zU3f>dvc08C`b_0nqC!~6k5m^KAt<|Y&D_fwLk*s1rlNW%v8=TZ2VL$zelba;<@S>6 z9>1$)Ax@i=ocw-jvgqS#*r|*GXv)`@th=Mv*tIOuCyu*~7}bFzHv$`QZUJ!JgVD{n z(_`B>!`olqvP4XKIm`;}il_20?L zL2t(uPh8iUaKua_vr=(X;!)D~o=POPl>3@o+3)y^`ChfQz4z_U+?S@+m8qV+mv%;V ztVZ#Zs0-y%)XbHmL~Q#32V5>+*2RYOeo@e7UF&KQwm5CoH9nMg`F#1S`rj7*Se2^Z z_DgSb<`hGVMw~5{zYQ@MRCnK8`tqthx?u~_`^;lnvHbY@_o)aM-nrIjPqPzoY@;G&Qc4ZSB~i{X56!!igd}) z&D}UgS=bDp^Y``Hn73>evO=rb~$TB_axnw32ibbE#_#U5F_mfyX{e5KW}0|KD*dGVXK z8qthgArSJKg(Zn#mC^vOqTVWd_bONa?c`W_?IgYBzQh;(E!8rwI~MW^+Fn{wqyP4M z>pv8OqguF@;^x&zr&x`A+DH5iIz z$-Yp|)n;p>xGZlLSZ(2+hjn5`l)YVL*`y;v2%eN(I6;(>M#d($0TeFZ!r?!y7Zr;a zX1?d(9B}oUZyPnd#!f#ouSFL_SuD!PcpW=HpU^PPT-<#?u@m^nO|nN|NjGfv`6Z|YOoS#~Y5 zT%TL@o)}+`Z!*8aST8j#P96GY=_x#EQqnZoQf<=R(r&TF-M8_(xslOI&7+x z{Nuz(=&9n5dm{ik*dAv+DNDx~vkBHuvOAKpiqEytFKrez@t8z%%Zb;vuSI1mo70|U zT_`7^POqLtv)T_B!qqG}Jg4Izu-Xbm+av^owoTTH8qc(5=M9Lyah>w3^E({3CE!Cn z|CriX=l!Y9H~g$=L)TYnwPW8f@vyxDLYp~$>Em$#jij(QTTX)@vN(pckN5Er5AUDhvzd+PDdrmZ7R*Oq|G|(R? zcw9;_H!`@DXT)Y}d($$a^i|Hnizh|$wP$;_Gt={t978J19NtpWeQb8GM(dYC?r?S; zoOo-+O4U9jb&3Pj&1!2$Fae@^09t@yROA#eZUgTM^o>z%u4ir6jKz*p%~8i85FP+C zs*GOLwo|Q@B~7oC5ar;ES^L!@8zD(II!V~wn)jXg7Pk4CO1E^;QEDPd|)Z zB<`ka-C!W~tCv~)-eNZ{D^66X@2&w3e`{GtyY^ZQ29_GU&=ts|3#>IR9JhSp>N3fB zeDuxLb*4-z%V2vAcEgsMrGN$gt;$lcLisAaSzit^hYQ>3B}H}8p2ODKMN&_ZsEEmF z6!2M{VOt4xdjo%c_q%7<{lVm(PSG--^JaVh&*fU*R2?~)ehTYu)0)$!@rE!m`|L$9~-qOyv&D%47|}wm$59bpndxK4(-La znyZqit_|9M>A%f-@7cSDVV?TRSy?$Ofp%BvN6W?K`GU)q6Meh6MkdzHyTW)X#U8n| z`}|gL=w1T0zTB95R@)>&e(|?)%)ic;5C#jLQ;jplETNrjd@E zl#-H^!o{}w{|1nA(4PYh2DO5Iw8_=ODPbl&=x^L|ygW&`3^ca>rHsjzho~hQ=)4YL zkrdV}agxZQ!H(X6=B?j%lxvB?xx#?;X#@r#A!Q0Jf^1#Jm#f9_hU$HraEE^!4E=$z zT-DX!D^Q|THTOTSVkr5LD`*ZQ*8(O(?*KBnsm6rTy?48=!@a?2y42(_=x-?AUW_#Q z;_UkvZ-BXBOry7BN`0Mj^K>ci#&!SuVS*t#^&&MF%C#!)`HOP?RKD`y_K{srL(a3n zH{`n~r=PvLZ@$>umqg_a;`Qb%IUrJz29vukk75t2oc@@G{yQBPKO+7UFo3y8H{qMP zEASqjFr`~|j4H8r6o}x80iqd72p&Wj#y6GH!$BKBhmR)IFPIYvfHEM2avq3a40_B! zVbNa(9PekQ1ou|}y83wl{T9^Wo1De^C)%1@Va{{nyar7$0%KmgN|K+n^RKrI%_B5Y z;RHB9jDP{W4cDc&NqofX5RL=T5)eRaI0<-+V}H(aNClyfQ%Q*9xq4;;c`p(5^cDGv zSRj2h`;()kmPth+;AN&3GCFwxkA@7~lhwow$w&j0fnRa%wo$MEN9-L3 z@h45uRCR4_htTEab|XVWrE61}8jt+fm!;Oebf!G4DsNJVxqkNi^Kr%L337*J+0FCq z1G+^?f6oi$&J60=egVj;s;WX9E|NL(ABrY#_8m-3jga7Wcy_iUr+NbR@o5q@yaG%ziC=bqN{r z{kn;%sWjGTwS3Z|YrNR`fcmrDQuVG@Z#v9|oC4<%COPy>m z-+;x7P-WD&EWp@*pw{m$)_GaZyMvwQC8L$V<$vk}%nRyQM;w z7s}DXog#iYm5oNqMP^1j8k@Z1=gTo}2-g$S=Fnv?i^gu+WzewDP8w@xQKfGJ{nGfy zTfA9Jydr}T(9MOkOdXe_60yWgv+niTMG9{4coKEFmH{D|rA+*8+XFa+!a_=)L`S*< zt!Ve8^>$0~pBXIDvhmb)I#x}5|Gta#&OH0MT~p=}twv%dO7#0J8SXK&?)`bNpLDHV zvJeZsgz0pUk`E*`aE){;XLeyPNOd%@F>gYjR!R!WQDCXu@k-yIPWt9>(Z^Hc$8rjp z*-_ui+hx>LZHU%j8Glp5dyyZh-Fp3Z%XIi$E|Z?O`(#ZDoUC7;ST=Fs9=}lTj{%CU z7xiTW6d>o(;kpQs%le4pFlxo`#C6M>>K#P?XiG;)O%q94#2s~8%ZhgVoWDj|#ebK} z^CHPP=a-yUAaa!nRgjkAI@jNiLe2i*!OcO69UL>RrM1zP-!OeI6wY{+?&Cwm$ReGF z5i2H-Ud$Ssz3cy5ekY~KT11Dg;pLh$C@wgMwVJY6I9gIv=_=n0znr4%c&vs==QUS^ zpR~NUaf7)O@%8yues=Yq$hZxyTB^Vieon8I^fKS3uazpnnm+SeA8ieV7Hm$jzC}so z`r~V~4fCH?Z6B4VyEz;?R~1~>7Y_0aFTY>QQFduUevXGHdak=+tv!LOYDUjPf2#|! zJFgGRP%&V^v>=U{4+C;D)-$e?#IxHv4v%n8txXkbEv7w$CgnFwOT+~(l>4Qx%BBa| z;T6mZrEihAoORu*vEUWgCDLFl+p+sCI%Uqg0@Il%Bo%W`w>{&=+-0v6%jM(9f3I@? KSyca@ME?bSvfQQs literal 0 HcmV?d00001