From 903fc118ce7214aa52bf02be5e943d3440113162 Mon Sep 17 00:00:00 2001 From: Spmario233 Date: Tue, 20 Oct 2020 21:54:19 +0800 Subject: [PATCH] The end of Charlotte --- card/zhulu.js | 22 +++-- character/diy.js | 135 ++++++++++++++++++++++++- character/extra.js | 8 +- character/shenhua.js | 2 +- character/sp.js | 18 ++-- character/sp2.js | 185 ++++++++++++++++++++++++++++++++++- character/standard.js | 2 +- character/swd.js | 8 +- character/xinghuoliaoyuan.js | 7 +- character/yijiang.js | 57 ++++++++++- game/asset.js | 3 +- game/game.js | 41 +++++--- game/update.js | 29 +++--- image/character/key_yuu.jpg | Bin 0 -> 46844 bytes mode/guozhan.js | 9 +- mode/identity.js | 6 +- mode/single.js | 2 +- mode/versus.js | 28 +++--- 18 files changed, 478 insertions(+), 84 deletions(-) create mode 100644 image/character/key_yuu.jpg diff --git a/card/zhulu.js b/card/zhulu.js index f11ed0050..a3da3b29f 100644 --- a/card/zhulu.js +++ b/card/zhulu.js @@ -605,25 +605,31 @@ game.import('card',function(lib,game,ui,get,ai,_status){ }, skill:{ jinhe_lose:{ - trigger:{player:'loseEnd'}, + trigger:{ + player:['loseAfter','equipAfter'], + }, equipSkill:true, forced:true, filter:function(event,player){ - if(event.type!='discard'||!_status.jinhe||event.getParent(2).name=='jinhe_skill'&&event.getParent(2).player==player) return false; - for(var i=0;i0) return false; + if(event.player.hasJudge('lebu')||!event.player.needsToDiscard()) return false; + return true; + }, + logTarget:'player', + content:function(){ + 'step 0' + player.turnOver(); + 'step 1' + if(player.isTurnedOver()){ + player.addTempSkill('yuu_lveduo4','roundStart') + if(!player.storage.yuu_lveduo) player.storage.yuu_lveduo=[]; + player.storage.yuu_lveduo.push(trigger.player); + trigger.player._trueMe=player; + game.addGlobalSkill('autoswap'); + if(trigger.player==game.me){ + game.notMe=true; + if(!_status.auto) ui.click.auto(); + } + player.addSkill('yuu_lveduo2'); + trigger.player.addSkill('yuu_lveduo3'); + } + }, + }, + yuu_lveduo2:{ + trigger:{ + player:'turnOverEnd', + }, + lastDo:true, + charlotte:true, + forceDie:true, + forced:true, + silent:true, + filter:function(event,player){ + return !player.isTurnedOver(); + }, + content:function(){ + var target=game.findPlayer(function(current){ + return current._trueMe==player; + }); + if(target){ + if(target==game.me){ + if(!game.notMe) game.swapPlayerAuto(target._trueMe) + else delete game.notMe; + if(_status.auto) ui.click.auto(); + } + delete target._trueMe; + target.removeSkill('yuu_lveduo3'); + var skills=target.getStockSkills(true,true).filter(function(skill){ + var info=get.info(skill); + return info&&info.charlotte==true; + }); + if(skills.length){ + target.removeSkill(skills); + player.addSkill(skills); + lib.translate.yuu_lveduo_info=lib.translate.yuu_lveduo_full_info; + } + if(target.name=='key_yusa'){ + delete target.storage.dualside; + target.storage.dualside_over=true; + target.unmarkSkill('dualside'); + target.removeSkill('dualside'); + } + else if(target.name=='key_misa'){ + delete target.storage.dualside; + target.storage.dualside_over=true; + target.unmarkSkill('dualside'); + target.reinit('key_misa','key_yusa'); + target.removeSkill('yusa_misa'); + target.removeSkill('dualside'); + target.turnOver(false); + } + } + player.removeSkill('yuu_lveduo2'); + }, + }, + yuu_lveduo3:{ + trigger:{ + player:['phaseAfter','dieAfter'], + global:'phaseBefore', + }, + lastDo:true, + charlotte:true, + forceDie:true, + forced:true, + silent:true, + content:function(){ + player.removeSkill('yuu_lveduo3'); + }, + onremove:function(player){ + if(player._trueMe&&player._trueMe.isTurnedOver()) player._trueMe.turnOver(); + }, + }, + yuu_lveduo4:{}, godan_yuanyi:{ trigger:{player:'phaseBegin'}, forced:true, @@ -881,6 +998,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ misuzu_hengzhou:{ trigger:{player:['phaseJieshuBegin','recoverEnd','damageEnd','phaseDrawBegin2','phaseZhunbeiBegin']}, forced:true, + character:true, filter:function(event,player){ if(event.name=='phaseZhunbei') return true; if(['damage','recover'].contains(event.name)) return event.num>0; @@ -1519,6 +1637,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, shizuru_nianli:{ enable:'chooseToUse', + charlotte:true, prompt:'展示一张♦/♣/♥/♠手牌,然后视为使用一张雷杀/闪/桃/无懈可击', viewAs:function(cards,player){ var name=false; @@ -1877,6 +1996,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ trigger:{player:'phaseZhunbeiBegin'}, limited:true, unique:true, + charlotte:true, skillAnimation:true, animationColor:'water', filter:function(event,player){ @@ -1899,6 +2019,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, midori_nonghuan:{ enable:'phaseUse', + charlotte:true, filter:function(event,player){ return (player.getStat('skill').midori_nonghuan||0)0); + return get.value(event.cards.filterInD())>0; }, logTarget:'player', content:function(){ @@ -10371,6 +10496,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ key_akiko:'水濑秋子', key_abyusa:'游佐', key_godan:'松下护騨', + key_yuu:'乙坂有宇', lucia_duqu:'毒躯', lucia_duqu_info:'锁定技,①当你对其他角色造成伤害或受到其他角色的伤害时,你和对方各获得一张花色点数随机的【毒】。
②当你因【毒】失去体力时,你改为回复等量的体力。
③当你处于濒死状态时,你可以使用一张【毒】(每回合限一次)。', lucia_zhenren:'振刃', @@ -10619,6 +10745,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){ godan_feiqu_info:'锁定技,当你使用【杀】时,或你成为【杀】的目标后,你令此【杀】不可被响应。', godan_xiaoyuan:'消元', godan_xiaoyuan_info:'觉醒技,当你扣减体力时,若你的体力值小于4,则你减3点体力上限并摸三张牌,失去【肥躯】。', + yuu_lveduo:'掠夺', + yuu_lveduo_info:'每轮限一次,其他角色的回合开始时,若你本局游戏内未对其发动过〖掠夺〗且你的武将牌正面朝上,你可以将武将牌翻面并获得该角色本回合内的控制权。此回合结束时,你将武将牌翻回正面。锁定技,若你的武将牌背面朝上,则你不能使用或打出牌。', + yuu_lveduo_full_info:'每轮限一次,其他角色的回合开始时,若你本局游戏内未对其发动过〖掠夺〗且你的武将牌正面朝上,你可以将武将牌翻面并获得该角色本回合内的控制权。此回合结束时,你将武将牌翻回正面,获得该角色武将牌上所有的带有「Charlotte」标签的技能,且该角色失去这些技能。锁定技,若你的武将牌背面朝上,则你不能使用或打出牌。', key_kud:'库特莉亚芙卡', kud_qiaoshou:'巧手', diff --git a/character/extra.js b/character/extra.js index 53970d556..ed444950b 100755 --- a/character/extra.js +++ b/character/extra.js @@ -51,7 +51,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, characterFilter:{ shen_diaochan:function(mode){ - return mode=='identity'||mode=='doudizhu'; + return mode=='identity'||mode=='doudizhu'||mode=='single'||(mode=='versus'&&_status.mode!='standard'); }, }, skill:{ @@ -154,8 +154,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } else event.finish(); 'step 3' - if(result.bool!==true) targets[0].addMark('huoxin',1); - if(result.bool!==false) targets[1].addMark('huoxin',1); + if(result.winner!==targets[0]) targets[0].addMark('huoxin',1); + if(result.winner!==targets[1]) targets[1].addMark('huoxin',1); }, marktext:'魅', intro:{ @@ -3594,7 +3594,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ caopi_xingdong_info:'出牌阶段限一次,你可以将一张【杀】或普通锦囊牌交给一名其他角色,然后该角色选择一项:对除你以外的角色使用此牌并在此牌结算完成后和你各摸一张牌;或跳过下回合的判定阶段和摸牌阶段。', shen_diaochan:'神貂蝉', meihun:'魅魂', - meihun_info:'结束阶段或当你成为【杀】的目标后,你可以令一名其他角色交给你一张你声明的花色的牌,若其没有则你观看其手牌然后弃置其中一张。', + meihun_info:'结束阶段或当你成为【杀】的目标后,你可以令一名其他角色交给你一张你声明的花色的手牌,若其没有则你观看其手牌然后弃置其中一张。', huoxin_control:'惑心', huoxin:'惑心', huoxin_info:'出牌阶段限一次,你可以展示两张花色相同的手牌并分别交给两名其他角色,然后令这两名角色拼点,没赢的角色获得1个“魅惑”标记。拥有2个或更多“魅惑”的角色回合即将开始时,该角色移去其所有“魅惑”,此回合改为由你操控。', diff --git a/character/shenhua.js b/character/shenhua.js index fa4161dcb..86e4f65b4 100755 --- a/character/shenhua.js +++ b/character/shenhua.js @@ -75,7 +75,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ jiaxu:['liqueguosi'], re_yuanshao:['yanwen'], menghuo:['zhurong'], - sp_zhugeliang:['pangtong'], + sp_zhugeliang:['pangtong','huangyueying'], sunce:['zhouyu','taishici','daqiao'], zuoci:['yuji'], xunyu:['xunyou'], diff --git a/character/sp.js b/character/sp.js index 3574d88bd..e6f1f1199 100755 --- a/character/sp.js +++ b/character/sp.js @@ -11,7 +11,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ sp_sticker:['sp_gongsunzan','sp_simazhao','sp_wangyuanji','sp_xinxianying','sp_liuxie'], sp_guozhan:["zangba","shamoke","ganfuren","yuejin","hetaihou","dingfeng","panfeng","jianggan"], sp_guozhan2:["mifuren","mateng","tianfeng","chendong","sp_dongzhuo","jiangfei","jiangqing","kongrong","bianfuren","liqueguosi","lvfan","cuimao","jiling","zhangren","zoushi"], - sp_single:["hejin","hansui","niujin"], + sp_single:["niujin"], sp_others:["hanba","caiyang"], }, }, @@ -33,8 +33,6 @@ game.import('character',function(lib,game,ui,get,ai,_status){ yuantanyuanshang:['male','qun',4,['neifa']], xujing:['male','shu',3,['yuxu','xjshijian']], - hejin:['male','qun',4,['spmouzhu']], - hansui:['male','qun',4,['spniluan','spweiwu']], niujin:['male','wei',4,['cuorui','liewei']], jianggan:["male","wei",3,["weicheng","daoshu"]], @@ -469,7 +467,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ selectTarget:-1, content:function(){ 'step 0' - target.chooseCard('he','交给'+get.translation(player)+'一张牌',true); + if(!target.countCards('he')) event.finish(); + else target.chooseCard('he','交给'+get.translation(player)+'一张牌',true); 'step 1' player.gain(result.cards,target,'giveAuto'); 'step 2' @@ -8972,7 +8971,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ forced:true, audio:2, filter:function(event,player){ - return event.parent.name=='phaseDiscard'&&player.countCards('h',{type:'basic'})player.getHandcardLimit(); }, content:function(){}, mod:{ @@ -11680,12 +11679,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, }, sijian:{ - trigger:{player:'loseAfter'}, + trigger:{ + player:'loseAfter', + source:'gainAfter', + global:['equipAfter','addJudgeAfter'], + }, direct:true, audio:2, filter:function(event,player){ if(player.countCards('h')) return false; - return event.hs&&event.hs.length>0; + var evt=event.getl(player); + return evt&&evt.hs&&evt.hs.length>0; }, content:function(){ "step 0" diff --git a/character/sp2.js b/character/sp2.js index 89d9d3be3..6760650a6 100644 --- a/character/sp2.js +++ b/character/sp2.js @@ -4,6 +4,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){ name:'sp2', connect:true, character:{ + hejin:['male','qun',4,['spmouzhu']], + hansui:['male','qun',4,['spniluan','spweiwu']], + liuhong:['male','qun',4,['yujue','tuxing'],['unseen']], + zhujun:['male','qun',4,['gongjian','kuimang'],['unseen']], caoxing:['male','qun',4,['cxliushi','zhanwan'],['unseen']], re_maliang:['male','shu',3,['rexiemu','heli'],[]], ol_yujin:['male','wei',4,['rezhenjun']], @@ -61,10 +65,171 @@ game.import('character',function(lib,game,ui,get,ai,_status){ sp_shengun:["puyuan","guanlu","gexuan","xushao"], sp_baigei:['re_panfeng','xingdaorong','caoxing'], sp_guandu:["sp_zhanghe","xunchen","sp_shenpei","gaolan","lvkuanglvxiang","chunyuqiong","sp_xuyou"], + sp_huangjin:['liuhong','zhujun','hejin','hansui'], sp_decade:['wulan','leitong','huaman','wangshuang','wenyang','re_liuzan','re_sunluyu','caobuxing','ol_xinxianying','ol_yujin','re_maliang'], } }, skill:{ + yujue:{ + derivation:'zhihu', + enable:'phaseUse', + usable:1, + filter:function(event,player){ + return player.countDisabled()<5; + }, + chooseButton:{ + dialog:function(event,player){ + return ui.create.dialog('###鬻爵###'+lib.translate.yujue_info); + }, + chooseControl:function(event,player){ + var list=[]; + for(var i=1;i<6;i++){ + if(!player.isDisabled(i)) list.push('equip'+i); + } + list.push('cancel2'); + return list; + }, + backup:function(result){ + var next=get.copy(lib.skill.yujuex); + next.position=result.control; + return next; + }, + }, + }, + yujuex:{ + audio:'yujue', + content:function(){ + 'step 0' + player.disableEquip(lib.skill.yujue_backup.position); + 'step 1' + if(player.isAlive()&&game.hasPlayer(function(current){ + return current!=player&¤t.countCards('h'); + })){ + player.chooseTarget(true,'选择一名角色交给你一张牌并获得技能〖执笏〗',function(card,player,target){ + if(player==target) return false; + var hs=target.countCards('h'); + return hs>0&&!game.hasPlayer(function(current){ + return current!=player&¤t!=target&¤t.countCards('h')>hs; + }); + }); + } + else event.finish(); + 'step 2' + if(result.bool){ + var target=result.targets[0]; + event.target=target; + player.line(target); + target.chooseCard('h',true,'交给'+get.translation(player)+'一张手牌'); + } + else event.finish(); + 'step 3' + if(result.bool&&result.cards&&result.cards.length){ + player.gain(result.cards,target,'giveAuto'); + target.storage.zhihu_mark=player; + target.addSkill('zhihu'); + target.addSkill('zhihu_mark'); + } + }, + }, + zhihu:{ + usable:3, + trigger:{source:'damageSource'}, + forced:true, + filter:function(event,player){ + return player!=event.player; + }, + content:function(){ + player.draw(); + }, + }, + zhihu_mark:{ + mark:'character', + intro:{ + content:'以$之名,授予汝技能〖执笏〗,直至$的下回合开始为止!', + }, + onremove:function(player){ + delete player.storage.zhihu_mark; + player.removeSkill('zhihu'); + }, + trigger:{global:'phaseBeginStart'}, + firstDo:true, + charlotte:true, + silent:true, + filter:function(event,player){ + return event.player==player.storage.zhihu_mark; + }, + content:function(){ + player.removeSkill('zhihu_mark'); + }, + }, + tuxing:{ + trigger:{player:'disableEquipAfter'}, + forced:true, + content:function(){ + 'step 0' + player.gainMaxHp(); + player.recover(); + 'step 1' + if(player.countDisabled()>=5){ + player.loseMaxHp(4); + player.addSkill('tuxing2'); + } + } + }, + tuxing2:{ + audio:'tuxing', + trigger:{source:'damageBegin1'}, + forced:true, + charlotte:true, + filter:function(event,player){ + return event.getParent().name=='sha'; + }, + content:function(){ + trigger.num++; + }, + mark:true, + intro:{ + content:'因执行【杀】的效果造成伤害时,此伤害+1', + }, + }, + gongjian:{ + trigger:{player:'useCardToPlayered'}, + usable:1, + logTarget:'target', + filter:function(event,player){ + var evt=event.getParent(); + var history=player.getAllHistory('useCard',function(evtx){ + return evtx.card.name=='sha' + }); + var index=history.indexOf(evt); + return index>0&&history[index-1].targets.filter(function(target){ + return evt.targets.contains(target); + }).length>0&&event.target.countDiscardableCards(player,'he')>0; + }, + content:function(){ + 'step 0' + player.discardPlayerCard(trigger.target,true,'he',2); + 'step 1' + if(result.bool){ + var cards=result.cards.filter(function(card){ + return get.name(card,card.original=='h'?trigger.target:false)=='sha'; + }); + if(cards.length) player.gain(cards,'gain2','log'); + } + }, + }, + kuimang:{ + trigger:{global:'dieAfter'}, + forced:true, + filter:function(event,player){ + return player.getAllHistory('sourceDamage',function(target){ + return target.player==event.player; + }).length>0; + }, + content:function(){ + player.draw(2); + }, + }, cxliushi:{ enable:'phaseUse', filter:function(event,player){ @@ -475,7 +640,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ backup:function(links,player){ return { audio:'juanhui', - popname·true, + popname:true, filterCard:true, viewAs:{ name:links[0][2], @@ -5265,6 +5430,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ wenyang:"文俶(238年—291年),一作文淑,字次骞,小名阿鸯,世称文鸯,谯郡(今安徽亳州市)人。魏末晋初名将,曹魏扬州刺史文钦之子。骁勇善战,依附大将军曹爽,效忠于王室。司马师废黜皇帝曹芳后,随父联合毌丘俭于淮南起兵勤王。兵败之后,向南投奔吴国。诸葛诞发动淮南叛乱,奉命率军驰援。双方发生内讧,父亲为诸葛诞所害,遂降于司马昭,封关内侯。西晋建立后,任平虏护军。咸宁三年(277年),拜平西将军、都督凉秦雍州三州军事,大破鲜卑首领秃发树机能,名震天下,迁使持节、护东夷校尉、监辽东军事。八王之乱中,为诸葛诞外孙、东安王司马繇所诬杀,惨遭灭族,时年五十四岁。", liuzan:'字正明,会稽长山人人,曾任左护军,有两子:留略、留平。少为会稽郡吏,曾参与镇压黄巾起义,后被东吴大将凌统所引用,任屯骑校尉。吴五凤二年(公元255年)留赞任左护军,随孙峻征淮南,因病撤军,被魏将蒋班围困于道,力战而死,时年73岁。', caoxing:'曹性,东汉末年吕布部将,史载他曾与身为自己上司的反叛者郝萌交战,并砍去郝萌一臂,受到吕布的嘉奖。在罗贯中所著古典小说《三国演义》中,也有关于曹性箭射夏侯惇左目的描述,而曹性也随即被暴怒的夏侯惇所杀。', + zhujun:'朱儁(?-195年),字公伟。会稽郡上虞县(今浙江绍兴上虞区)人。东汉末年名将。朱儁出身寒门,赡养母亲,以好义轻财闻名,受乡里敬重。后被太守徐珪举为孝廉,任兰陵令,颇有治绩。再升任交州刺史,以家兵五千大破叛军,平定交州。战后以功封都亭侯,入朝为谏议大夫。光和七年(184年),黄巾起义爆发,朱儁以右中郎将、持节平定三郡之地,以功进封西乡侯,迁镇贼中郎将。又率军讨平黄巾,“威声满天下”。中平二年(185年),进拜右车骑将军,更封钱塘侯。后为河内太守,击退进逼的张燕。权臣董卓秉政时,想任朱儁为副手,遭其婉拒。其后出逃荆州,更屯军中牟,徐州刺史陶谦等欲推举他为太师,并传檄各州牧伯,相邀讨伐李傕、奉迎天子。但朱儁却奉诏入京任太仆。初平三年(192年),升任太尉、录尚书事。兴平元年(194年),行骠骑将军事,持节镇关东,因故未成行。兴平二年(195年),李傕与郭汜相互攻杀,郭汜扣留朱儁作为人质。朱儁性格刚烈,即日发病而死。', + liuhong:'汉灵帝刘宏(157年,一作156年-189年5月13日),生于冀州河间国(今河北深州)。东汉第十二位皇帝(168年-189年在位),汉章帝刘炟的玄孙。刘宏早年世袭解渎亭侯。永康元年(167年)十二月,汉桓帝刘志逝世,刘宏被外戚窦氏挑选为皇位继承人,于建宁元年(168年)正月即位。刘宏在位的大部分时期,施行党锢及宦官政治。他又设置西园,巧立名目搜刮钱财,甚至卖官鬻爵以用于自己享乐。在位晚期,爆发了黄巾起义,而凉州等地也陷入持续动乱之中。中平六年(189年),刘宏去世,谥号孝灵皇帝,葬于文陵。刘宏喜好辞赋,作有《皇羲篇》、《追德赋》、《令仪颂》、《招商歌》等。', }, characterTitle:{ wulan:'#b对决限定武将', @@ -5582,6 +5749,21 @@ game.import('character',function(lib,game,ui,get,ai,_status){ cxliushi_info:'出牌阶段,你可以将一张红桃牌置于牌堆顶,视为对一名角色使用一张不计入次数的【杀】。若此【杀】造成伤害,该角色手牌上限永久-1。', zhanwan:'斩腕', zhanwan_info:'锁定技,受到【流矢】效果影响的角色若弃牌阶段有弃牌,你摸等量的牌,然后移除【流矢】的效果。', + zhujun:'朱儁', + gongjian:'攻坚', + gongjian_info:'每回合限一次,当你使用【杀】指定目标后,若此【杀】和你使用的上一张【杀】有相同的目标,则你可以弃置其两张牌,然后获得以此法弃置的所有【杀】。', + kuimang:'溃蟒', + kuimang_info:'锁定技,一名角色死亡后,若你对其造成过伤害,你摸两张牌。', + liuhong:'刘宏', + yujue:'鬻爵', + yujue_backup:'鬻爵', + yujue_info:'出牌阶段限一次,你可以废除一个装备栏,然后令除你之外手牌数最多的一名其他角色交给你一张手牌。其获得〖执笏〗直到你的下回合开始。', + zhihu:'执笏', + zhihu_mark:'执笏', + zhihu_info:'锁定技,每回合限三次,当你对其他角色造成伤害后,你摸一张牌。', + tuxing:'图兴', + tuxing2:'图兴', + tuxing_info:'锁定技,当你废除一个装备栏时,你加1点体力上限并回复1点体力。然后若你所有的装备栏均已被废除,则你减4点体力上限,且本局游戏内使用【杀】造成的伤害+1。', sp_whlw:"文和乱武", sp_zlzy:"逐鹿中原", @@ -5591,6 +5773,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ sp_shengun:'三国奇人传', sp_baigei:'无双上将', sp_guandu:'官渡之战', + sp_huangjin:'黄巾之乱', sp_decade:'其他新服武将', }, }; diff --git a/character/standard.js b/character/standard.js index 04632c40c..669a50d43 100755 --- a/character/standard.js +++ b/character/standard.js @@ -77,7 +77,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ zhenji:['caopi'], caocao:['xuzhu','dianwei','bianfuren'], huangzhong:['weiyan'], - zhugeliang:['huangyueying','jiangwei','jiangfei'], + zhugeliang:['jiangwei','jiangfei'], liubei:['guanyu','zhangfei','ganfuren'], zhaoyun:['liushan'], daqiao:['xiaoqiao'], diff --git a/character/swd.js b/character/swd.js index 91aa1dbd5..2cc845479 100644 --- a/character/swd.js +++ b/character/swd.js @@ -17,7 +17,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ swd_chenjingchou:['male','wu',3,['youyin','yihua']], swd_duguningke:['female','qun',3,['nlianji','touxi']], swd_guyue:['male','wei',3,['gtiandao','gxianyin','wangchen']], - swd_tuobayuer:['female','shu',4,['liuhong','poyue','niepan']], + swd_tuobayuer:['female','shu',4,['swdliuhong','poyue','niepan']], swd_yuwentuo:['male','shu',4,['wushuang','xielei','kunlunjing']], swd_yuxiaoxue:['female','wei',3,['huanhun','daixing','yinyue']], @@ -4005,7 +4005,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ player.recover(); } }, - liuhong:{ + swdliuhong:{ trigger:{player:['useCard']}, frequent:true, filter:function(event){ @@ -10082,8 +10082,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){ gongshen:'工神', gongshen_info:'任意一名其他角色使用一张基本牌或锦囊牌指定目标后,你可以弃置一张装备牌令其失效', - liuhong:'流虹', - liuhong_info:'每当你使用一张杀,可以摸一张牌', + swdliuhong:'流虹', + swdliuhong_info:'每当你使用一张杀,可以摸一张牌', poyue:'破月', poyue_info:'锁定技,你的黑杀无视距离,红色杀不计入回合内的出杀限制且不可闪避', poyue_info_alter:'锁定技,你的黑杀无视距离,红色杀不可闪避', diff --git a/character/xinghuoliaoyuan.js b/character/xinghuoliaoyuan.js index a756a4930..1d49d5510 100755 --- a/character/xinghuoliaoyuan.js +++ b/character/xinghuoliaoyuan.js @@ -421,9 +421,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){ } }, }, + qinguo_use:{audio:2}, "xinfu_qinguo":{ group:"xinfu_qinguo_recover", - audio:2, + audio:'qinguo_use', subfrequent:['recover'], trigger:{ player:"useCardEnd", @@ -433,11 +434,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ }, direct:true, content:function(){ - player.chooseUseTarget({name:'sha'},get.prompt('xinfu_qinguo'),'视为使用一张【杀】',false).logSkill='qinguo_use'; + player.chooseUseTarget({name:'sha'},get.prompt('xinfu_qinguo'),'视为使用一张【杀】',false).logSkill='xinfu_qinguo'; }, subSkill:{ recover:{ - audio:'xinfu_qinguo', + audio:'qinguo_use', trigger:{ player:'loseAfter', source:'gainAfter', diff --git a/character/yijiang.js b/character/yijiang.js index d4180ba88..6da1dbbbe 100755 --- a/character/yijiang.js +++ b/character/yijiang.js @@ -21,7 +21,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){ old_guanzhang:['male','shu',4,['old_fuhun']], old_wangyi:['female','wei',3,['oldzhenlie','oldmiji']], caozhang:['male','wei',4,['jiangchi']], - guohuai:['male','wei',4,['jingce']], + guohuai:['male','wei',4,['rejingce']], zhangchunhua:['female','wei',3,['rejueqing','reshangshi']], caozhi:['male','wei',3,['luoying','jiushi']], caochong:['male','wei',3,['chengxiang','renxin']], @@ -194,6 +194,55 @@ game.import('character',function(lib,game,ui,get,ai,_status){ fazheng:['liubei'], }, skill:{ + rejingce:{ + audio:'jingce', + trigger:{player:'phaseUseEnd'}, + frequent:true, + filter:function(event,player){ + return player.getHistory('useCard',function(evt){ + return evt.getParent('phaseUse')==event; + }).length>0; + }, + content:function(){ + var list=[]; + player.getHistory('useCard',function(evt){ + if(evt.getParent('phaseUse')==trigger) list.add(get.type2(evt.card)); + }); + player.draw(list.length); + }, + group:'rejingce_add', + }, + rejingce_add:{ + trigger:{player:'loseEnd'}, + silent:true, + firstDo:true, + filter:function(event,player){ + if(event.getParent().name!='useCard'||player!=_status.currentPhase) return false; + var list=player.getStorage('rejingce2'); + for(var i of event.cards){ + if(!list.contains(get.suit(i,player))) return true; + } + return false; + }, + content:function(){ + if(!player.storage.rejingce2) player.storage.rejingce2=[]; + for(var i of trigger.cards) player.storage.rejingce2.add(get.suit(i,player)); + player.storage.rejingce2.sort(); + player.addTempSkill('rejingce2'); + player.markSkill('rejingce2'); + }, + }, + rejingce2:{ + onremove:true, + intro:{ + content:'当前已使用花色:$', + }, + mod:{ + maxHandcard:function(player,num){ + return num+player.getStorage('rejingce2').length; + }, + }, + }, rejueqing:{ audio:'jueqing', trigger:{source:'damageBegin2'}, @@ -12617,7 +12666,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){ reshangshi:'伤逝', reshangshi_2nd:'伤逝', reshangshi_info:'当你受到伤害时,你可以弃置一张牌。当你的手牌数小于X时,你可以将手牌摸至X张。(X为你已损失的体力值)', - re_gongsunzan:'界公孙瓒', + re_gongsunzan:'公孙瓒', + rejingce:'精策', + rejingce2:'精策', + rejingce_add:'精策', + rejingce_info:'当你于一回合内首次使用某种花色的手牌时,你的手牌上限+1。出牌阶段结束时,你可以摸X张牌(X为你本阶段内使用过的牌的类型数)。', yijiang_2011:'一将成名2011', yijiang_2012:'一将成名2012', diff --git a/game/asset.js b/game/asset.js index e6aecf167..9a23fefe8 100644 --- a/game/asset.js +++ b/game/asset.js @@ -1,5 +1,5 @@ window.noname_asset_list=[ - 'v1.9.105.4', + 'v1.9.105.5', 'audio/background/aozhan_chaoming.mp3', 'audio/background/aozhan_online.mp3', 'audio/background/aozhan_rewrite.mp3', @@ -3386,6 +3386,7 @@ window.noname_asset_list=[ 'image/character/xin_liaohua.jpg', 'image/character/key_godan.jpg', 'image/character/shen_diaochan.jpg', + 'image/character/key_yuu.jpg', 'image/character/baiwuchang.jpg', 'image/character/baosanniang.jpg', diff --git a/game/game.js b/game/game.js index 63e02f304..0616923c9 100644 --- a/game/game.js +++ b/game/game.js @@ -169,7 +169,13 @@ name:'无闪自动取消', init:false, unfrequent:true, - intro:'当自己需要使用或打出闪时,若自己没有闪,则跳过该步骤', + intro:'当自己需要使用或打出【闪】时,若自己没有【闪】,则跳过该步骤', + }, + unauto_choose:{ + name:'拆顺手牌选择', + init:false, + unfrequent:true, + intro:'拆牌或者顺牌时,就算只能选择对方的手牌依然手动选择', }, wuxie_self:{ name:'不无懈自己', @@ -11616,11 +11622,18 @@ if(info&&info.chooseButton){ if(event.dialog&&typeof event.dialog=='object') event.dialog.close(); var dialog=info.chooseButton.dialog(event,player); - var next=player.chooseButton(dialog); - next.set('ai',info.chooseButton.check||function(){return 1;}); - next.set('filterButton',info.chooseButton.filter||function(){return true;}); - next.set('selectButton',info.chooseButton.select||1); - event.buttoned=event.result.skill; + if(info.chooseButton.chooseControl){ + var next=player.chooseControl(info.chooseButton.chooseControl(event,player)); + next.dialog=dialog; + next.set('ai',info.chooseButton.check||function(){return 0;}); + } + else{ + var next=player.chooseButton(dialog); + next.set('ai',info.chooseButton.check||function(){return 1;}); + next.set('filterButton',info.chooseButton.filter||function(){return true;}); + next.set('selectButton',info.chooseButton.select||1); + } + event.buttoned=event.result.skill; } else if(info&&info.precontent&&!game.online){ var next=game.createEvent('pre_'+event.result.skill); @@ -11632,9 +11645,9 @@ } "step 3" if(event.buttoned){ - if(result.bool){ + if(result.bool||result.control&&result.control!='cancel2'){ var info=get.info(event.buttoned).chooseButton; - lib.skill[event.buttoned+'_backup']=info.backup(result.links,player); + lib.skill[event.buttoned+'_backup']=info.backup(info.chooseControl?result:result.links,player); lib.skill[event.buttoned+'_backup'].sourceSkill=event.buttoned; if(game.online){ event._sendskill=[event.buttoned+'_backup',lib.skill[event.buttoned+'_backup']]; @@ -12978,7 +12991,7 @@ if(event.prompt2){ event.dialog.addText(event.prompt2); } - var directh=true; + var directh=!lib.config.unauto_choose; for(var i=0;iKPk`x6cOAtX+M35XMg93sGC_%|l z1WaT^a@yZ4#^;;v-n-BJ^*#eLQ(aZvU0q$>GhI{L=rQyx>3P*lE{*`8s|)Y~0DuqR zK_~$z2tmL<0Kx#^oWKBJ4>|n{c7<^N;K2fUgaPmhuz)8DB60##gK*Lf7XbT5-U9GG z1i)Xm0st5J&%2_7mpu|@;Oyn+ zX&G@z8Bs~F6aaueg#4E8A=b}2AT|%7zu-3~oB)6ef&Spd{j)6)w%=`m@c!8rEXc1i zM6iC9O~U-6JPq&;Y6UpCqsP!I0P#sHY?XBZ2znJDJxKu$S1^3&N#Hs_jE|2`fKN<7 zKukeINJK$HModgbLq|nLLq$bLL40!jxP4Fj;}t?eL_|VLLQYCbPEATmN{zXYQh(1v z@!u%`-3n0P173g$6v75zQ9z&+5cD+INL=&_h&(7I4&>wj1;!ju0D^^$gNuhxKu81{ zz+Z_F01Nt)NDe@-Ay6!AEF3&sd>kmTC`hD$VzW{T<0u;1QL*`46~U!W%C1ym=b$lq zZZ9f^ig>Gx$C+%rKKm8nD^C09$+a^oDJBl8Z8?4trv^;tkQ-Ik+XwyUzo~Jh=0;ZE zelhf6^Knhb@W(AP$AGA`yxNx|pSC5{&7A^o+{v%&9R0jQ0bpT)(qf;;goleGej);^ zFeNr9fe#xMj>y#{YK#QWjoz+{a@fzJB9fJjX%N0*Upa9x0^pqyZyNxG$T{VpYAWG} zockrhzn6gPw+QG7fEapGCj}r6lv}A~MI=aQ3-oN-^FQvt6iI}=E%c^DyBg}l$VMAf)8pHiVrYNsGpsE-UXcYV6)KH|7>xv({xC}vi+m~3Wl`vDE0-$aRKTug#huLSGE1J7PK zZr(a~*8O5xY*eD>qB|pb=p@r&?Zf4>?PCF!BdtE~>vrJK1yM90du&g_q_xw;eCv7b z`FC8JB>LSjsSvGY``xDxZZN3S$16shlHF=4xS$s*Cf16ChXe@tX06J9^+1Hzp#j=P z#?TM#!RbT^OHvu3$|Xn}{i@~F*Lb#$vNn&UmXDj&bDm{=T^N*sUm5OybP&4jC6}`) z!K4$)RyLfzxOkdFOuWzi{*%+hL8OOhz_&J-Cb5Xc+-<+z(@LPC?oDYXBf)9i$lk5+ zI}0^gIptq2XZ69!O4C0-zBoFt6uhD6Ptw9sH!*6|Df8gLYh}yV7Z#hRTC`d|g|~;L z^&557cb+0MGZ1@XV0dfE#rMHOv-c$J^CKb8uI_c3N_`}N98^S$-W6!LV55Mf^~OV9FvM!GmTw=_x$EH`UNxL}%KZ5hUp~T!=jFRkB-*w2`+WAz&L2oLY|DRp z5OevlM|}0z{5s2Ca!G%24|KDk!7K<5m#iUP)k|^ViDWEX{&nT&-Rs|;Po)X!2jov? zE?sWY>zxefYs&w!s_D3I8uoUx_JGY^KSE27VwY=I9{tu0X10MxA`}L(E@z6UjcG-+ ztBtBWPkdbW?Y5Prg>LC3xVOu#AWE850%k(ZHJUdQHo6b)JIHU@-lls1B$zU;Ve_a{=1Qp_34&bi%m2TK4?{+-utW~kmSmi+5 zqy9INd+Hj720qayhNj`h>wnT_+!;p$1_gbh^JC-gucPXto_~^mDOin?CiP?I?WGiVW1-P;iyw4Ms{`#J7BP zX&McDv|SGW@~oTH6Ake6Z?K~QAoX_n!SKvZIeMUS*kSr2OOsXDQPv*kYyXxKSq*=k zm`V{QRcfiBk9vb~)+?pUQC}pFhm2- z?mNvMZ?*dgH2KHBT*#2{eEH~;T*LxrDV|G-{Eo!2>uPfz`7;0L@v%oPO9~Yl=pJYj z7g#6MO!kRNc~2OvPr$W(D!C2fKCJo#9H1 zR&h__QVPC=qdz2S9nTkk&Of>ATREc5)g(4yH1kH@SF5Sc(fV{3w+YKn7X4pZqzN<= z$38XP&!s%4@PREiecQcS@g{5VsbQkiUg{o6Yl26tUjs&hW4GVu|lRF1fOUtQx!)YO&b}F15NM4xzUg=x5OjPFR~KH4}FU1dV0g;nnHo~?yRs*tdS$xuHlHBs&}xD z=^gdEW@}yMBJ@N2pUGrD?*()oU06}*UYORY81sfB=!ote2-sZ_7nodp){Va#S#Z#Q z>@IP*?V;(gZ()Xe+U;UNopcotRA!ooHoa(=PAu%mWl zUHR_XN3jBPD(sb{mGISi*G@Emd|kMIpv=Eim&P#Z@4?wCcyVfa$Lefs%e~1>deHJ) zk3YJl>RFQw;pqoSK1Cs96a{9!~e>Yrp|L< zPUog!d@tm)i*s7abW0OBGwINc-Y*Suk%3a60V5+LU;ms#3Ko`a9F`gjq4RPKui&FI z$g+mpLvMDsjU+0REnhA>9E6tYO|B4cnbTvbpJUkq5g&$;d;KS}7$JUOm zJ)C*eu@G*0T<_2>DQs=edP)_y$N0}jd>o8ILK6@ zfrwGB<7kUe<42Bj#tFySNjCaATM{)x$eP~Moq0>bi(US~S$dx=(E#{LaGdq!4Kwd- z^jH-dxbGL5wU^T}v=yjv9PBw`z9Var6z+IryBXHKoj4@vd7xe-v6h`F3x@4=lT ze~#w$vx3_!=yCK4E#>dEov45iAf=?Ki;YKk5@9*dB?*}F^3sk_s*U#AA%gg6H`w=HFhI+OmF@=l-wO){|ay9>+W}gH@M`k zfNK58PZ)qi_<5mJ?ELI7EjSU=chz;l<9lsaz57nB0o``={tuey= zJKg|=P_V$1aB`3%P+s2V&PcFxL7Q~(bo!}2QVhWelu60U&(F)l-OJPIM;79r6pRRe z;7NYsja;0Z|0EFoB!II0;>U~*=*o8)ApGDRT#5d?pNyO{Cp6L@m4Y|HnIBemhAMoLs>RjbL-2s%1~6nF3ndRo8(@&l8d zarYNSOxZujA(jHz zOz`}nx9?t{lNs!UmjOe8Vyx-A^q3?7c>|s{AbC`I@QgR~Q&F{b^?en8|u*dL(u%TB+G zVf4!kPa1^l>+XU;`kJ}xU_5VTtWeCcb~d6Mepaa+hbpHPA<=@{Q{u*2M zM+PM5Fh%z!a{HnArmmzOiUR3=M$2W5fb{&stX#C1L#@)SIj4oX@6n%a&U1B z`tPvn>dI((`uf>{SMfslW7LPq|J~*tybxd+zceHxBxx@tBq1RRml6>bf;-xaiNNiV zA`);BX<=z`Aqf#tNqe!MrG0n5*}4B&Dn=>?utaG)F*|WdNnyC8or42hSVYVoE+v6P z!0kjFMMdo$?W9HRkZdpqgp8vX%EJycG8Yd!C#0aOH`0j>_FJ42uad5p1E_S-Kk=H% z%Ha1AM;CXH;0u0RfN82KO9)F#fPxALV+IW<2iRT>7hkZGgMJJ{W2Day$lV2YV%suy z2+YS4SvCa59FPudKhQ4!LeKxb7JV-^5OneXM>F}(=IiC?7ifnE^IG>5CwZt8UaU2iAlrlrR~JwNJ)g9ggC-MSQr7C$p4|}Kgvcp+j%-6 z!TDK`?SI}FDPe@Th=YhYTm)e+2A8lC6N5`3?LZq7vX>B+bZ`)Nke2#Sjrq$6{Gas0 z|A)pPygV@;*5AG3ZHEFs8TuhnzOrnNC@&A#ceD5Qbb|SL{YadQfq$zX2PDenkM91n zz+bh&{%1x1mv;2un`-{O9sM7vUJ&y{{64q^|8d-ZPpf=ani@vqzJB0iM&@6Q@c*u5 zVe*6X=6^Ahia8?egd9X9;SLCJ@^cgt6NgKSib=qQ?Hz>0BqXGS?1aD>@VhkMKW_Xl zW>So~oT%ZC7lofF@a+Qw{(9|^`}unE_x*1T{H=k%HSo6v{?@?X8u6YZ1P1nCp96mpN9^@xtME)oFfCVt~M9)b?T>i|&O|3`ahG4}F@C(H$j5Wpz(*YRI6 z{Nnugz#sJqVCwtjB7muUkAZ<L;CH(Q0jk_%fZA37An&IJpesE9 zHWd*7wSE9nAiw%ehrkTi69f0l>`A%Rdq=pif+ zP6!`F1R@2IgQ!AuAVv@i$VG?~#1rBV34vUL#6prGcOlu3LP#Z~0rDKu4S5S0hs;72 zARCZ5z#hb&#a_og#v#FB#Noq{!O_GykK=?Bh!cgA zhLeX=gVTXCjPns^8y6Rs7MBZG5?2G)0@oEc7&i|0K5jW~EACs|dE6~LJUn_lK0H}G zeLOonKfEZs47?J&7Q6wxk9fQIMEETDBKT_fmiV6d5%_8NMflD51Nfiu4+zK!I02L`1|!Bu!*UM`-s?F`ZI8g*+8~ zs_fLjsU5o0bP9Axx){20x?#F~dKkSby&HWJeI5NY12zLMgCRp8!vls6hUL@Lr_Y{7 zoQ^sDvWO%X9m1KjI$Z z!R3+SapSqq^M)6TSDe?GH=KniQrK))I~oZWP`S;T1uMWQq)ll8CB_hKtsV zeih>rLyA2R8xyAz*A>4Z-X?w|At`~9D3e%_^5IAIZ-t zuq!wyi4b)hO*K%P5B`x2ix@)Ky|s`cx@ZO;zuzzEfjUb5bi- zTUQrX4_0s0z|qjwNYWV9WYR=v7HY0*Nos{^z0fAsHrBqYJ*UH~gVJf##nRQ%P0^jw zclaSaU&GYvl(2^)nNbsAF{+Zq=cZ<{EYB$`Z`a+~^_ zwwaNcS(_D_?U<{WC!4=NFL*xm{A&va3m1!eOFT<6%RI|1D^;u8Rv)d!t)r|*E^uAA zbfMdZ!N%R@nJt;Eoo&@coQvici!L78>DxWB+p^cRzh}RWP)6KAEIBARq&h4hWs%9q z&yKQ=$&O!~WSvr+7M$gs)0~%GlwIz+e09}u&2rsw(|5~vL%W;1mwVuQT=Z!0r1W(2 zeBs6Hb;;|kH=lQu_j?~1pW8m`C~Z`pFU0qPZ@nKi_%hYw&+Q-SKN}zykQuNWXcky? ziQct!n6!BxVm zZdZFFgd&n7Hm{jqYrM{M{mS+ENcG6#DAFiY)aZ?~H?nSG-*maz7cCl{5q%uv5c4Wl zC^jwjFb)y-Dqc7~JszFln9!Ffk@(;i?k&$-BT4c}1<4f2my_pHbW>_mVW}~xo40Lm zcc+P^W!)jXsU*=qG}U4HKLe7?=LZL27!>^{Vc*#OvA~@t&Gq@!py~iN4x?$^QB` z(r+5yo_pIoAV2VYP-XDtkmk_qVZGtEBc>x`qt>JE#~jAKjJuD2od}pXn7lHDGZiyU zKArZC@!g{to|*FZ67QeQs?7Gx8P845Bj%Sr_NQ}r?k&3p9{Z;e0jQ{w(w@r zYVqTe_tL>~)C$GQy;bhj>NSP6p7rzVAHSl$qBr8c(SOU|6x(duGT3^z?Xi8Z6SGUd zTd*g!*ST-L|M?*B5brSki07#BSo?Si?Ewbf|K8{T^Fr`_qXS%QY-}8CTpS!+0$lJU z!pFtMCn6>!BqAgvCMP~Qe%!t%{_zR{pK&C_By{BDbpMNu4j^wJHc$w-Gr;eS4*0>1 z4#3x1a9<0|fe{#UVB3TJF&iD=;z7X+mM;VgN`VdF zfIA&18sbvffjb>gizH>^(R|-%U{;jYew_mq@s(3q%sBbc6NGP@xC&QFPL;$d69>Qc zfjRs$*9Zvd=&z@$s^wOj4VrQ@Y|MYdY<7V3kG%bT!-Idb-+`3IdFM+v(+ldm#=h+G zNNZZS1Vv{QHgu0K?D5KIS-M`1xm(ouYGQH!`^E@R92{`725fvN)Z-)&7PB{lB90*_ zF|NaQ@r%)ZFU7imdj>CJle?(eM|U|AWYX-Ae&xqi`jJSHIbjREI(* zx1htEdromt*z|laNw9rUoN_5{Ct*D|DbFb3<9AMzN{wiMoBLqQ{?)m`V&};LRaY!> zEWC==7v;ck?Vf#chBUWV%jZbTm?#P2Fp3!(n}T=L*o5}QM?weYV{^BWdh#SZQ+7&* zfsBpf^RBmeJmgUFnhH6~4%(`^98hj$a}!jbExq1ECtPpKr8&xQ>;+&|%Mi&r-fvdN+pT zLk-u_9>vkest?JFeVo8N4H~U-yN72o z+_i`ZMzR^Rp1IXJs8~W^V@l%_s+67Zo)Y+Co_!1vHrE_4nGvp$-}ABfkfsMMkB=_| ziLVU!6iivaSY)ENAg8f22(bJ_f0c^Y|2-?n*-I|mz)~% zEPKEofh!m88J(GDddfS$yiBJ5fQ3*O*I~=D*>@m2z%-tk=}iH2%Wj=e(kQdvyYQT4 z1M5{6QZ$ebB;HtW-}BGqXbyUy|KtVZtv1?QoxMA8lMV8E+HFLdFEa}sZ^|_qNS#9( zj<;mLLNYi!7@ML{v@TP`NeoJVjVxs5*q4M3C)__r7rGY)Z{y*;pk%q#J)mHI%Hz2< zQ@?ejD1POou#&))q|yP*t`D5pm0H|$7Y#HHf1v&d{#aQcs{gP&CeOyS zkv7a_;4`sZZqyX6ysN~nB_5dVB4R!KoCQ6~xO=U(Ewx8!ASTZ1DtG-zb!*XcnYkjA z+9k$YCPn+aJY4+IW(1{?q#=^@w{f|(j5V z>r>vhUG0UfF?yRMx+QDStQdMZf>f_M$GtMsWC?O*xyV;ZdiNE3lt$`$0(8S4=e&HH zU*~OpWHw$gf15f=lsUuu3AS^0>ZW2n&FTx}C(VkIiO}Z(k>;sMtB02fL)I-lobw;4 z%CWwAuZ@1o6Bi=)S)?6D4=@-cERQal^!uXNVVW@QV6P5k8%}1dRnhfDKZYuh#Ho7m@q__Jvs6(;r3Hz?c84Lb98{_>9ok3Zi*s2Bn}yhvvf@e${!C@-?L&?Hn`3iD4DpfA zwo=n}unM{JrWKdlr|fW8;RAvK?DrPTKi^(y9N`Jp#UB#_H#-P-<1p4-b|x?$X}|{4 zJyIN1nR=saENj$Hx!B9|x%QHhZ}@tOzPpW%FJFx(JHG2hrvMP=4bAJr1{8Js`A69mUXME zr?zu;E3HCL<3ItKfF6-IahBIC9gJdQu44)DHo|?ZZ0yArV&DQpaLu?u{%EV9kro0P z>Zz0rZv`Iz_m7kIxL>pPR&W*@)-O%M9TJ|@K5a@>^^E7wHILbPxRxaHICpjO)#Y!A zJ6SiH8WZPl->cNU-Z$CJ&{To*$S8!a;UJZ<vc_#^V-MXr`yL0uDP^PiJYxJB^k{k7 zRB>f>%&kz9=YCDK*;o8W)J&SPnqRrtbSpGs&_F||VoSHzkVxOvs)rgcoUXn;&4M1_ zR>Qi@B+8GvShmPyax^4m>Zfow#$!IFXf*WYG%4@3mR&o08H22P`|K;+Me4_;`UAfD z0>}yVWH+}0y#<65AC%Z!SR-!c31nfTr&PjsGcB&Z@kUNgnDo6_Hg>G^qN2!)Bw^=G z30PTY);kP^uNcKwww1Oq$&d{&+}q zp9~*gW`CGl177_4Ri4hsMqYqNFF(amIvHE(eoN-LVFKm{r6``c=Ph#z@2l6Z@8}=) ze+#WN144a(1ioAKQoBCDp$Y7rGK(Ylc) zHfeQablNSKQo%4|UY3kzk~m)UUIFI=@4*%Kn(_BFajIBf=dL|0nBjlvF8b14gzQzO z^W$&OXakvjSHcIW@Rr3_{%0akOb>d}Y74hv@nKpyyN)<_7>3oRCH5{V7h9W-nLdrF z6*fIxT<>8g@@mNNO(54K2hQWjMayTON&{HyjFm1uDz{|pio;fRrhfJGS-$ncet5R1 zNg6+SSnuVSk5sqQC?)R3MbPci4Ea+XYljopJ#=5y0;t)~On}e2L5}z{COFOP#)d1_ zJ;W5+s&Q#&1$K*a&l2vg`j~!tCU?(NaKs`q_o=QNt@s`^#=eavj2avrj_Kb5t{M*R z1ji=;CB?6r?Ho-ip1QVZyJXfMtI5f~^0m7rzHEK2zSz6R=y3>7Wlui6aXb#5=dLM2 zMGp;x@s?R&m9r}80y}NRFKp@7>52rTbaBppFg3NiIP~S5k5>8cvtq+Y+NV~xxC5Cg zb#vwH>yA$Q&^CEK_awjhxmNz`H+r%6IZtB`q%K_n9Wcu&OU$m%>g{i(IFUK$Ty&J% z(2%g*0ylt(=y5?d>%Q%L*Qp(%(+c#s_TatHT-BWV=srPF<=0{9e5!emqZ+382C_j{ zDtO+zsHiihhZ&*Bd0^jTIo6zK`c^ag)pnr!w)ip@KM&GW7i{6uWti#&J z>?Mx!jP0a_0`h)=JTf>XN|;mZxmV5EBh;?4Cy~ipazCiZ3l-1;di(?hCl_u-xNr`V zCFr$}`!WPcrBk_7&|98{(jdOLg%)IOSZ#fL26aN|$uMTRp@;Zk>%4h!s*rW*bZH^C z*nQp8s~yhoKGUdlo@zZyHA!RJdK=r$q}UpEUPu36<;FW9X3azixx4O94UD(d7kkx- zs;Z5hH`1HC7p^Pn+`G&FRF(Q;1kMdA@i&%V#;&4*o`f*=n?WD@%F~NCMWzA)I&D>) zcnP|tW>T7tlL#$4v(I%z{ET-lhRs~mcW1@_GW&4qqLu`{g6;5CLru>sCUcQh+(vZv zGz3Miw=7;3GDLeJjow&|T)Vl%abug!X63*Zi4sk}>4Z;z>i%L~mGy;l<-+y#9uMYH zO>I9!hEMyTfp*CiN3mReNnT+HT=*V=pLbOauePXZDi! zseN%2%>`>7&qt|j54Z5VeM|=0=1{SeT?1+n(L@Zlnep`x)df1!JG0JEz9c*2yBDIo z#NU2d0S%N8cV|@Eb#!ragavxq*n?{gn=Eg7M>*Zy<6EyjdIFd@F!XZk&scOGMf19J66rsXf0dt0eL0PLSy5dx~I z(s|vvFY$LT1EN${U(cz?J-Dhce_at*7aqgCkcMAbeWApT9hu*L;dr^0-HC;D+J<#K zhM~Nfmb(c#Lrrb|sA}?6oNV(-hft)MMqANnDV{Zfih7N(iPmOo0g26~mA6K!uD`hI zQ|vbkq4~ZOVn;d0o!EJ7^h&s@k*=a$y&M!8qf|O>{(kBmJT|Rlm6Tzx99fgjyiUh) zr+n_Z%v+>!x^hKtjK+Pt6u%@VYB+nnEs{j*cv7d@*7)elEfW>Fx8;dZ8bl^ldQpo< z%}xGC6L;Im#{-T^l1v8QN>PsHL|#}JqzPo?4&Z&qJM8_~j37o_ZKy5H_3w9T#FA?>E=D<$+GTYpg6-;nq*cMKowzl^2^Ghn`6- zDvCQE-L|Fl<#WcJezZwKrCL4Up+Zio7no)|oVeK|-P2W*;*zFlg-7FAUyLZ@JijbI zv#37aGN%squDu!l`|&fK=n=jf(GPo`cSpdMB|1zEuy{##v(Ix+K9dRgYEpN;)IM=9 z_h#q@G3AFo#&Jz(#@WsPRY(0P-VZ& zXkdKWk;auIajCVm-tJq6sn#kTOAc1!>c+c)0jt8vIH7Xz#j*n0Bs}iJ2@`h9?55=5 zNdG#t_JtGA#|wXf4tz+2mVXLqzgHjMP?3mlq^s5^^)Y6E+#*$#-mBWcv!4|W@E^B* zuweCEGvm}4xtB6mD${V3v+?EHws)k4xUT(aXWgmK!w#N8D&f<~@o3;Z`{K9|U2+FM zqG3c_X|OWDx6es7?HS%;_lEsurrO&T`0g_fVNOF}Jok&-^`op^{_+54&9%+fZfa@s z7hjf~3J8!TXN2+6XiI%&yE(o?kvP8HR?y%Vd$SE?*_2?DK7Hj(M9$1<6aL!r(@#X+ zTHPVgR#2=tA&JdsLTkG(zxnB|=Sqh^A7@E{OfUXo_^AGF z0wd_!Hr&_dA#$`$#pm;TA2w!*2KptW!}4?D@1zXsiqdpi`Y0Ke2Str))!Dxg`w&7f zyNc?$)DsJXU$vZEJa!rCG75#c@t1BJhW9`0X`lecyB8SrQk))75CtRi4>pvy@9o}e zyB8O0!Tt7@($|;^)~1y)WlTQGjFHWi|NmLfmRv)G1xwTyUZT%14($4nsvtfr&lIJqn*5-7hnap4_LMCOLVhZ z;@Ij8mZIKvcixd0KPNM*B+?x)KT%JeCnPYIZJzM{y|#P4V+Vh5uX*K2AD*lF>C+7c zVWW?$wL+gMzdnjGO<&QiSKDqEhkFuT`q0>va#NhE0r6hs3S+F7?vP_t=VtuIzP#0= zG0U)Vo9xVKaL!Dwzf~xg^9feR_U;S`>hrwsHiAi8azBTIEf!(l^-DcMC-xWv__nOBhY)m9f*IHFi=j4^6r@yZ>pP~9LYUspt^soa^2>2M2g3K z`+;}UA9#9M4WH|q!8SP1z-{)yqXe325i;9Ms)IIOylAcvZd-}_BHbd~A6Si+rwe#& zche+NPmwIlM_Ml_>u{qOgrtfEHv$T_1HWqJ`@;rb1hVLv-a7Bd-0<;&$f*8MSx3?J zh|Sop)BrQ361@E~lwn4yDjFb)&q!siw|0o_X?Ct2xX5~5w);!Y<&cf3OK}-$63@k+ zNt%As%N>wL*5Ov^T;^Wi@p6Ba`T}YPlaZ2V+zY&ZRHo)x^#XD1NRL*M6 zbAjP586#oK4T_lDyCo|$D>*4obV_%iw?B!~PO*LH<}XinzFMj)lKyJ4$AwXE={WR> z-L;!z2On-5THbtCTx%^YHSp=CrMr*Pv%J>Bbsinov-b>2EF;cMEag&N(#v}iVEkg(;4C(CWG1)uzlOUBO}hQT*VF{8SvqA z?SVe*HofapJ@~aZL(}b7^fwYHXgJv{&fgI)7w$;(H8xIGswujh@@TtMzstUGz2Q)Z z*D5r4D_VuMkkWHy65pg#zvSiF3|08-#DKu?vG1X<7IG_D-`TMntcFB?rXj293^a!WH9%*6T(L zejP-wQS8t&tu!=WB;{FSnlFv4ISy|{#X!5u9FrFHhMmr)yf03FvHIcqnaAPS@g%n! z(16c~KY{Ku^`i#;rmU)CJ#xw`cLS0p%oc+$k+yRb8($PQ@sG~uTH98`F>7etoVAyG zJ7!-LKpSPidC%tx!<#K%G$1x>GP5MUP{9PW-d=+Hm~Kp^x2fgtY;3Z;$|+`6_HKgd?PpP+^6^dd?nn!t%P$!a&AOwwYhRe^>otm%$K%ggllmmb$A$W3{`4`+ zd@QFMJ$$H9yD|0A0mUE-I^5Apf*RJdmgJshp zDav}jOZLT<&M7Nh(Z^Mg{XVfG!J-A9qo(>unYYi6OxxRnQ&bi9QdF4)h`>z^6T+jI z3AnBo)Mbj*$P?UIud>Jp3BL{CLE=bFRF9rAv{UZQ9=A5;G?C>w=Rfvk?pH4rW#M%vABbeV71-w;U0sJFv!xb!|k3x z!?pd2qIDk=6A|pVK>h$|p;S@*O;G}Y%K}UIU(o;`jV-)g!>#8b6YyAwFWD+G+l(^t zBioHH?9`7&_WArtydPg^e#PAWBF@xSVPH!((3m#OR5I{Pm5!poLRT7SJw@#mbz=YSp`ab)d(BBzH6xlcIaeMw|ep!?l-EF6$u=QZvbKYxG1H* zoELK?#d>cCO(J%I3x1QQnoMnXzTyoW6s+9t^VhA2oX{j`MVc|S%7^VCEFA@>#4k=OkEG4Jkc`CD>NoQ99N>1Q)_1ObN+dx9HCf*|DDcSM zVf`Q<4Q0XSYA2G{3yRXOxeWGer20}BGu;l?6}a1qX6KsM>gh3&{6iID=Rgh>ZV~pO zu8pplkFP%O&fRrZb?4Ezvp{on$%9mcEv(D-R$Jt$M)@bf9}0g#kDrxgpkY*6yq_EWV-N94A{_>7Le4tXvP@ zJ!d5t`>wmh%cC4_HaFhz;=sIKcKC)PT}_h4CriL>qwRW~evaFK&zD;*?<~}m*~0{M z5>$w}QF(8Y7w;PBGTde%w+|;S@~Q3W4!x)AL1*(a{UQ&tF{Fg%Qk`y<@MvuTO;`Tq zl^A29zza9@-3iQnDjqI1e-&j5AvXc#E?W#FeYTrdoLQO^6|sS%aN+5x5Q7*i_0xTGH0uX?VOIxfOfBBu zG@|(GCooydbKdDg;Muw2q^q*7!Ndf}Fr$sM;xg;-95q^Mv9v|~)f_Z%cjoyiz6XlT z9_e2*Ps+|ljg3^-G>&vWQa zeWP|y?cH$Nz()m(VM7gOz^8mRJ^Ab)4+_zo{P@MZM}9h>e|X;4?dCo-QNVd@$-pFF zC7DO9ofs6TC-iC;<#m&Qz}wIbMo<#8ZELEx%+#at_KXDA%lKTCwB<~K$4-5) zXfbG4Z?H_>QMu_AV!g`|J~YQJ@PYO5upjf&G7kA=6Nl>@@k4j4-kLwoltu#rYWcG| z=P1`Ko%a%YJZQ5BNA0?34>dd6WtTLOQ)qyJInyL`?;-*I%vXu>g|GYVMycBidZ}Hz zhO0KG&_hH-glh%{25XTvE_<)b!~#ZSbUePkvYZRwGM`llb8N6tep^MixM4)IWVrcJ zw^&w4#^6A5tF3rM%}|Sm<-_Kou-V><5n0cy=|XR$(yeoP*m-yH(rWGpY+5YPqHLyE zs@Ykv$WHmLKis?L;i7InP*x&-_P&@#ini-Zo(I#htp4K>wZn5^4DUtU6GSXplAof1 zf=MxN*Fuhf+PCW$lt$#EDb!w{gI)IJ+B2~TfAxy%CR2M7LHajGIrWOXJ778m=x_#hMkv{B`8 z;+&ecF4KztnVhvtA1?9~EMETP77?vU%KIAZ@J+J8{o&iG2}$Fc-kd{ck|KB~t;!{* z3*oes4~-@uvpsAcRdywB?Hxws59rx{ zNHpuSBMbht^jcPJ^&P%F5lv5fib_f6&W(oNJUS@w#;%d(aJEe2FwF+r?>*LWcG|9w zVH|(BkQ?f#>5lwz0yF-O$a-7W=-Skwv2b~_7*#8cy;V2qRM$54arTv4Pg!Zx7*dX6 zgREwvS<2a8P&{E16kHte`a**SEUp|&kt)REcRkH7ekO+l9QH5Lvrr3ju+44Am3+!f zOqTqbM@A<+kN;u=XCOPsf&C`G!ki4@?!Cl>1fdkoybQm+wY{&jn>N%_qciYl3o3QF z6~gcJbTiSz_zxqo{qr12bv;VyBQFQinHo|it}h4M7fNJ5o?h4?Df%*l{V@EorBT7s z=<;s(i*P5Xkh`IR#S&JKV}pt?t*N<^t0HzvOGx{$-c3}6y2A_C4cZI)=39oJfC4uYZ!kw;8BulfpxnpL0ycRM#eU$ zxu*)#;^kR92Mw<$Os2&~yzjX7?XM$mr{1YE+m6weeNjjb^{Q?Sc+Revig3)*pa}gq z&1mgRyGYquQZ=S><@8N<76wkdovhlH#ZRQtLv@SGqDu41j}%XRlt}!*YrX~s8*Yvotdb56+cP4F`9N}kbNYiIK(1*&?~()_g0%U{@r)ZR@-t+nTIt! zA(L8DadMbL9?)*&DLwCf%Gq!R4e^JjDwA@jc3@k`s+o<8aL;?_Rat2y&#&5zP18 z4#AeyK7W|8ft$-mdan`L>qawtRj5(Y5ePXQUY!1RNXK6nucvX-T*7jCI{rnk_xih@ zyje8x)R*cu|K{p=%}Y;M&Fi~6nF)7TSC?bt-$&`1TTPj5b%fi6+wk^>+z)vhlq`;S zP=z~_`1REjl1w(69H%|k#$xTlZc(FE7l+v{Zkk)WSg6CGMVMGWCxh<8!{UK~dt)q_ z(*KXGw~mUk?b?S?L{bo>Tbco+OJeA57&@do6#;=60qO1(q+{rA5EvSj?v#)a>1Oy{ z-uLso>;2aIt@(Fm&CEV`9Q!zry)R^%n#b%$5kA!9muA3Gp!_xey)FGuMQT=g=`Aq= za`%rqUU{)oT$I7FWO7Wg#ViZ>ms#QQ^7y(Y;(d6B&+ia0Q@LSwIJ+ioUS7!&iUqv- zWzlX#$>98Qw~qQgw%0VOH|tZNH_?i?>k*|Z-x?cFjfL|hUks0}BNUOO1l0c5mbr2(`qQ3~@wdwmCN=qzfJaO@ z`@-NOVdJM`i6ZUE#PKCZsD9-F9dA$GN(D~zpPIHyr7{IR{&`@eoyrLO#{wHBAA@2+ zRdPz%ZKyfHtG1Gxnh&pLaew3AXWPcnxQ~{2;4&cd0?C-z^G`M&fwRs&(bcD?1tC?O zJhBERjNJSs&()I;P`O*pYn^gLr@yJ`Dl(_O7LWI$P1znMv!-HXL482^iY53nj(|Qf zrnG4H;)9_wb>{O1#ib#ToGRIO-KEdp)Dfv4a3r^n|9m$SGg=V-QJ*e3Z5Pf|h zqdM_Q`hKAoDO+S^|3$HGC^cLvsJkFKU#7t7H?u@%mOr*&hP9#fMQv-j5=(BP5B6q7^# zayg?Cw=o3e`$Ol6V+q<{;z^JwkCHcU3ZIH{Z%qb!;K`21co)h6dJSSEMT?Y}7J17BzKLp|IG1>h z;5W-5sk<^?i)((TwZBrWh*XBDfj=Q<_eX^EkC_Zj(?&`bg(=u0JPx?dpO#OYr5Kk< zlfNHJESKrSCVzCO#wsUQTm{2{5K+>8^!u>JQXh0mF%>#Q-X1@jDMfGSJ-BXvwP`(+ zC7jPVNk1W)a1q9OuF4-b=^7@b_<$19JIFEbx9Y;tH#721X`!zF6&dtLME(^0X2U2n zMq;P!*EPq%SlL3~I^W1I0sw3PuoePylRPZ%I$GVgLAf{Y5UD;e$b0~ zzEow&B0)BL7h23ex@4vtkh#Z-MgGyx!`bQk$<6XX`{dUCHF(8$z92^M_b4iv8R9Js zceVUmsL(ii$9ZKWMx^Q|+@JB+S<{1u^SrHZcsT6M(kev1`dZ9n@NXJACHnE~;T9Rt zOV5r=%5K9x$Mz)jho-*;>XlaDzqp!LWP=lt~30 zk@3%&F9Y9WTJs3O^Pk^Up6I1`nm}3F`xqM=U?H>XAg1O`l&Ct^+uC&|A6dC>YhV+; zsZ`U6c$Vn&=I*L&dx$1wyd*tFkwIC~*$~^1Z*1KFgG36VFKXpw#hz}{ELTTHQbXVh zDZTE#j#*UBdBH1>IV_xT?JkchXLP$b?(0VV=TRq1(4vx0_sQ_4LD#6{Y^3R8&2-<% z7;GcyP8JsPXs9QZC#r~;lr$&3 z(dil!pfUcj)kK$D7?8PHM^7^y&z?W_Vmo;&*P*w6;RCE&fFSJDum4?S-+0A&h@ruE z-i5vuPI9)U{US{@)x)!@;T%3$-(tlr6P0jkM$0#2w{D(x@Vld&aPSb&qj0~Kihcg} z-DypamipM|*B4Z#J$vgZ`rDCvyKVxuXAAjLG~W?j^HxXrGTc*AVeD_mUTf`|TDI59 z{={HoM@6zFOJn)-kGy1yRMU4G&W_%s!u0$@>#v`qw7qbm=;VUF5Mwu7D>wlqen4U7 z_Q*&~j1bi*9;Y^Iy;+I0c9W&rpe_S$k%DZ^a`!W?u{b=o)8D*V0rhlo9X3=b&0QOf z)U-EUeu2g}OZSNQT27mqhE2XJUOYP)efKPhh=vKNc@2})Y3`7j@+2xIu`b}oN8U=$ z-g^zHbF)(LaA->?kLjtjn+3DW3~FGZFkx#ypkNNXB-41AWv#UEEx@|W-&B#@$ajQ^ z)6(B%CF@5Dp{Tl?+Isb%eyCxwwebfKp!A6h8InFoOM;BInhAY!!3B`uvv8pBe5PkqXpwx|E zOcU5WeU30*eJQ8qTdT#5&4t}pi6rdV8XG*8w8iZ+Xf?^x@H_s8;gVem^7Za1Y$ z(B7JE3}_r-xJdMVE;qlE$RRBkyOi9%$rj0)h@|t-ya|+k{8pV=^$$0aEDhSId6O3W zek61CVO)n>V6FNKA?>!KzP>T_7Z0S9vk}p+MLbG2CB0nPHvA=x+l^$TuI3F_&UUu; zB|k5*-%_)Ox`s>sy=9!u9xe-b2q{#Cr#lH#)aU;a*RvT;ANT&5t zsGun=SY_67E}}V6*~r~lNKMQKC%jLQdc87l_^Kdjf1hRr$oOa!`0?v!jqV?^*&Kb| z+Pf2N6;wRylM&^~&DBntZVHrJkK6C`YC9#4Cd$rt=_=qTGN?Gry@LE=+1s6u0GdTT zNP?V zjYsk=Ndl~wE-NH|&oXG&_gi@PZVeHNZo%Y0%P8ilxww6ZY!E#78C~9Ee5nx8v`0#b zOSc;#N3}}7D{VVwZM?0_i|v2Cc_ZG}q$UYF|AZm*fYLATy46!!iDtJ^MFwQhz|$`= zV}7~Tv;^M*_YLA)ca3tl$oWMESBb#WNT<;WX(&C?5tHP51Tuj)I+~?nUw03Bun(GEI`%lqszhl)aIrIUsYr|c)Mz=JgHIz^U@Fh|RI{X1;0Cc&43Ep64#4BNW^Mc%mNBSo#k}Uns z>E}5&)}8QM--ihk1v}smBml|s)lM1G3QLy5lxpfG|GzWIe?ho9#GWy}(``*Qz zZJwGN<8AhqmiW!AAVuv>5B6EEW&f14vMsZfN2m7&Hm{t8TNrQp6P?SXei&nMtzd>O zNdHc4UYkIbovEzfM@)DY<qf6yNUb^5Ib1RDK z!58sy4z5^K5%v2+WYUD}7@HlkzOjBftn&*-fRfwZrJXj|JMUbaA#pkFPQ_iRkx040 z_cqfz1skL9rVyb!!E}rLldr%(&2n$``vnP(R44RqXVTfP$?<7SLgsH*tbj>Rd@GRlMt{4XZb8uj z+W?iGtGFyr=2E&E96}i4zBTfeDt~ab=>j%QvzSgQi!I5SFIsG2-8Err-Vl>YrGD-4 zgY%9>I8@xa($>MInLM)_u0ZbxnMN3q!r>8ZM4sHbVMU;iGZ%oq;|^$v;LNdmSk$oh z_M5qXc(>o&%**eYH{37#pIlr%On&{932+Pz!3rPkKGH>NtEaHOWqG7{D^Dc7#}2o< zbH|E2=`M=31yozUFVYIfVi~4fLHEMM%8Mn}7DQS+Vusnn9;3z!Z%^#I8K{?QFUh1% z73!zn`1&SoMvsRs$Q_IXOBN8PmaSYvfAfvmkEW)kcY8iuk%^d_ z$;-rVrrp$s2N+|OV&w7zq8nd}s+=ytGrH9@FE*!oL0w1a8P!H~R47t$%VT>PwQg)P zH#+v3`P|BgM)ub;9gF z$<%AZHI7~>wQnGCOO`z+twdGc|hT)a|{usOM9!ZIHE_~X>d>d z;vTG>jn8tJ*WNsfWYg?)@&@rw)nghsYD|1Wnma06-A}i>8&#msE5tpujN@+67W!Nv z+89kBAVVl)$Z~SD}>?dU+1XN z`-{xH;qrbE&RHZC?$rYdf+KO@91TyrYjH@^cX;P`bo{(FcB&VC3or?P9;O_CLH|;= zM!-$H6)m3o2tUlN1;5HVCJVmX*+v{UddB<`u_G(P@rFx$pH+B~O?#1kG z_mI!6_hS;~MKH*^IfJ+P!0yBQk)?M!AiVDbkMRYG1wI7l8!q)T1c&x@3^a>{^-o~Q z+k5$MIffnlNn5h>XrgfJtiS}ylJdK45?V>KIZLoFbtof@GJAjl~ROTW~q$8SCAX5mfRURxKmI^h@WHk<6TjX{UFOyh^@|u0)#~==}KTJ=QM|ow9i~filZNF41cM`kD>=M>nN<7y ziZZxy5?|AQi!Gbu+s;U>!2M>UjW{*UG3R;h*H+N|LC-h4;%MeT*%UH#mMv`!$-#ys zP1Ie4mO7V1D+G~U_+_AEaiDArRr=g39+En1N}Dlxq3Xtf9*gv_7ueli<+N{9>I|=L ztPjxsQ0{SKS=^{67WAHDOiWUPgYccS?}^7Vis2BOu6zUQ-22X(Ma8dIhsYy z>2;d=90&0Hl{?%~L=1g+p`Ij#g+AF@$s*BAqjjhJG?DlS} zSmkXUbu}0+1sfCO(pZ5fgDaS%SD73kyi9fcIr%Q0a_HLHPqPJ8S@@MF-DcUl9FbgA zU+?bfz{DuR%_lh?p8V}^jVRvggoi%Wxq{+m$%+paE!s#M;h(n36DRU%vM7v0=w;_X z(I3g;gFj`<9ETE=itzln7fvyd&G0FdF_o)}!a|E-M4fwuacYTIx}7qlAs=3((!yEv z&fDbOuh_6s8ZKUaWu5+CJ;lV&9{qKdIe2MABVm?q>IYl2qRg`+L;D)i{+Wa>0Y7o0 zF7UD5F`1~DhF+HA6FjB`-@(=LZ9iz?U+^#gkDR}4WX!9D5_QY&YjuDeLJTQs~5lv?3PC;HZQVEKJ%m39t|(1m>9~slj&(V zV8!*6bt6Y`e`2t_{50lV;-j>6=oEj*CrsY-9%jGBa1T7vk$Dw~%}(*<<G#ls~vB zlbDVRoVpIhR>_Km6I%CWw2JdpZk1W;M{COF2DVI%2@YMQQzxD**CU>-Cf{f zhF~}bBZui~uSobNJGQ{5OL^+00bK$sCQ7X|DE-k9H@KMdj?G52`uQrAvAS4drthur z9J@Aa95DX0xCXl-&K*`!*xrP9YV|LLYzb8VWb?l zn4+oo*OxY$w#2qOuA##Mj=xDCP(FR7cJ{t*pP4A^KDNHMWMpPNC(dYhve2Hl�Yc z^vI`pQ(gJDo$IzpUYEm$e3j@2kDtJdv`;2&k z@ZI&{PuJ3w$0z*_%Gnc~T|rixkCwPe2H`8;Z6Bk0@#&u5GU@366FpY49*-DAnNLG5 zRjQ-(f29tZPp5U}+q&!>qlE<)uQSIA-e>Wo3`Gvj*W%2~5;?g@91B6jHj0u_;*}^d zRGiK$4CjbK4kgMlSazmN5U;`PPYmV0TbwYpxmWl=Mc~1ZY%=oYE8Wn^$I%^Lw0|=0 zYSxoQM0q!&YXt+bgE8F+RD#@ULCxrMT*5}?s^*QK&vvyKUsih0FMJ`SEP7KMMl+lh zgAp0`jI2=d*K-6VcL6sFUAUASx*CXu*KQ9owFc3@*(iybBMQ1c?)t%aXO<@z&Y zCY)-zg%Yw918Q^9*o)F?ro?o8Yyu$c_n-uy@sB5nd*8f(v(~M&&M#HMr%zWjtEt%s zj)ik@?Lw#e@{oIG=ir~7BNRCgKRz2p7$HpCNzQGg^uKj=mH|%@Ww~QZkx#^YE79NQ z^ugj2-1y~YfT&dzUSYo+Owl%S52xJa&p}re*V09S15J`t4)mplGu%EUi9|0>Vs(Te zqWF**)6#L)XdLIM*@Qql=B;V{yL+Gb$Tu4{OJ833oo`|DZwbJ$UDdc>(EAVLstocU zC1E4ouEk#{ENpwccKh@ZnnI6Gs{TmI80xdT$Ld(9${djLS3`w8f=({;eDVS1o3ziT z#B+bp1ovX5!p;#}T;s4(RhO9Py<1G&h_el)1|L`8zS)*7N2fr2_a9eR&SKtGV`VQ9 z0+qTpg=sM_3;VM-O4JePJt)^W5PR1z>$>n@z25c`@Gwmkk-8fw&$GMA@h=y>ZunfZUC={*KIHg{>uN>)=Y zMz`)t#4A7#52P1yavz7E%lR}%KRJ5O*}k_AsUKx${u#O2b`q`$okGwOMf_ZN4LoO9 zhRj@~sq0}pyAS*>XD@a-9W_BeyGeI?=K+Nw;1ZY~9QxGqB_TA78G4n=HU;HS8^^o7 zW)TahIvTXPG2*&cDWveh3mcW%5#2du`%ZGUVW*Gt9e0h|N$Wcds1ShYXXDaHHpiYr!?0 zJt4b0HjEMjbdGxhJ_-iybSnhx^+8;{8m7yiHvFZy*~R zztb#PWFL6v-Y*n`H2owamCS z1@T}^_h!b5=XKcXuP?CFJ6=v~gYDC_e&BJsY*$f(?7g77Q3w0R$U_(!D*aO-pK3Es z8S80w`ol~7zo+k)m2hK$B1U*gbUP$mX~%Y~+l??8AabMFfFH5F*+@BJoP*cs3SS3) z^=shp9RjLV$cWp$0w?%Xn;oh*F&!;%@4IdFj}KIskh9g|%>`DR@XCN=6h8L?#8CEP z4VR2UE=y64oE5I3g<%c4c8l0`##T_Gam$wy$bK-U=K#q}`R;-QbjzuVb7DDYPu;3D zW?^^(P)e;uZ^04()oR`ImZ}`rs+}oL7kpFjz zE!~l!lh1*BuLKUB@aVBj<0(2##u^cxd@IOEUQKh|^EZk%bQ|_%cxe&&Ya`tyn;(UQ zWf`1uT*2qBYxjWCm9V&%vLaqFiII}?3NoVLSOByJ7!A?#dw+&kSSMysz&0ZKTF<*A zwZkX?H5=hbsZVd5Xx?N+H*-^o{M~X={GLiz(1F1b`QI?7?aGt*#C z+_8z`SH`n3=wa2Bet^~hgn3mUMo(XRMpiqb5Os22lcoh8#7wtIGJdg-jHS70`8c6> zjL`dwda?E_Qg$PnaUktj2U-V^D5xcDSfIBb_{j#sE;OZRJ4mm^kyfospjP$0+^XZ!S~MJp1@JiRUqwvO5Q=vQ);+9 z>^=uSqP(fI=>v*4&6abGE^Kpk)X|xIL}ju;#NKc~RnV1krdt7LHi4DrwbN=_v^TD3 z^?*famGO0~)U;pK*1hhxbH;g}A7dI;%Z>j_89)E)|6gsYQnmQav^Pi9SnT~XTDf{luY z9eh%^**?;t-{q&L8IGXU5M|^4qytVO#Mt1SdKcf~dK2|1jPkiLyX)Z4$Y?9Tw55Im zzrUs|wpcQg>t=mod6#@|@Novht%n0?je<;*5&`oBgl&W(gl$9?tLaa(O;P*b-OB^% zolXVyyAC;Z0(gk#7(YFJua`!Ezo_blxXh138<}U(?GtkOF!c-HsT5gqZxAQU_=%s~ z3wDxup4C!bi6i}cymjMK7|W4(ofMmv6^PF_WP4 zSo3>!MF|mXJ?Tp08)Kp}=)Nic!i%v`LF!s->@C=+(3iK;`+y=eTS>R<@WFZVX>FUG zb#p+s-C{;sT5C03GImhNjABD8wu$4o%o%;8$<*(ZIj5R_NCzL}J}D0l7&SRb`u2NJ z0;~;F@3Y^4*H#yw{mpbsf-}EA1qW1|KZG%Uu z2@sQk$3S*>1rEJlSZC_45%Fvz)uLSelx0#v-DmP#z$kRjk_m0+cl~D;SX@_$jj<20 zP)p4{7p(c-5^0`Cb9PE|HkfVR@i3iJe5vI3;>t#0GX)nE^$q%!`B>Od+mmo#)1*3= zZ8EDXZT_}^^QxLGx@2?9evW2)>}%o}ey_=whA8ds7LH`;L>p5lmd%Cb|D1kU$k0}J zcDqD{*lqx3bVa+ST%oMNN5)u_V~8K^CyV>aeVK|tdpj2#CdY@ukt!%^KQhF_2&Jmiirf7}-^LA zJDD#0e6we_ZEUU;rh5spPc$ECc#_5;D7vnBB$f(XuL^5hqzawma|%NAu9I`^Rj-vR z?T%%vnj1fK^p@apY=Y`Ue{PGT0loBkpNnD8rbbWTXA!G;9yms-THPe(%U6dRzNKMc z5=@#X5Nz({2Uv1|Y3`=_sI#(S3r^J@{l~8kzYR;7eiU zKMB`2Q;{Zxe&a>H!e9^X;W~eg@3|I+azS6^_ePnpcOxiBiKYQ8_n%k;7!JIAO5jx2=8fRLEDZ3b zRNw`?k(B6}m-8N@4kXn*SmXKdvErbU??zQ#7qj0_B;9O#6WSOxvR^sTUG*BR-W>-( zKfy47)t>3MwbCBH`_8kZ>Sak=uIeSofBcNl{sD#G5+!tCmRzORG*#}CuKD{Jch0WT zuP_|;#K^`N<(6O{xk@eiwfH+s^$WI-AU5?*Z)=_8MiGY3k1oJl=DLo>%VK>J{p&6| z8XmW=&=0_O4y$z`Jlp~V77S#1$(shA6y%SwzD4|6h6F584ilie{Z!*)rMk|Wp883R z&$%xo;tudileIPT-)|7B$0cwaR0KE zm0ZSGwh1!KrCO_a>+xap;Q|^hjDK_R91(tTF41rB|U$ZuFyoyz35eocJ z!%9}5qyS;M9$DMvF;Q#~^9^1ef+zZRpK#u@ zZ8@zclaoyPp@-iW&9=np7qL1}PaMY_?aLJNO~(44N#Mbs zf-zduK6-yBJpyhwTUe5aI7NGZ?Pr|je!M{zmFal0I%3sSHT^B0wZ`ZfH4$r&UsFO_ zF^!2upy7AQ+j6KW%e9P2$~?sQ4m0b?9U}E+0c~6~wX4Uag99%EPMqj^VAqZg``aZJ zpUH&@SW)|XK0)kLH`BPQCuuL8`tASmKDc+`f6NU8Mb+pjGW?CGHS8)3hzZMAD$J+2 zot+t-_(AE?iIiem%VO%kOpLZ%&8|s3>P7{Dwlv+5IVKiJPmExFAR<&+xJxK9GCZj~ zW|D=6&Q^+R5T=?tZ5QI7!@$@IE(|n#RcQCNEJNqQ&&4w=$eybGW8&sFIwU?8Sc+kIkmsbu-jg87#Z&{917!E!GNgZSQDehzwk!rP*^<6gxyos=LePAal8M zg>wXd;p`k>_rlW;t)6{ejiVZU8-OxvBzF_6OUUy_VDH7UdU5$4+>Je9?|}2J-n6DU zp-Y+;Atf83huR4W3qC6IEFS5=lMav;K0)S!*yPmzJdRaT8`D<5dYP;s(ANC8wq?H$rLqPeS<@_x)>9^t&J6mdUQ!#Pe4sp_ybJ=3Qx- ztM80e1`Dj^fpHa>H-X%G71Jcxz{E%-4S&5=+UDq$m6S-D&&kt(~@ zRmc^b|HmuzQfEM4@qRS&($B1yEz!z!eT&(^6aIwRdo9Hjy#JcfqXcba=-0eu)c=I` ze~V@i)RwA#>j4D>L?QmjQJ!&{?Ka>|9*x-RL~oh%DOo5$(4eW*WCI!52MqByGM z)bdgp%Ot=Mh)_eJG9MS#C$POJP-ipItJcifoN;Lxx)@~d+X!M+UX_t2bn#dqJes!= zMO=M!(VD)V;>?6)8X@%mrWQ*}sV3>ki_sq%dJXPM z^=cKZ)#5@B?mCg!Y|vJs@5?Z(2);ndiD39e&!0I|c z8WBlZxKBz>^$%nDzf4;V8(kB!Z*$!fe?XDix_S+K_uU})Q0`kMK8f*gEQ7i7yXxOt z(azxv`3pa?^U6P1TVX%@{xBunIhAs&62)_zz$(RciEX&;9<5EyhCyf<5TUn&-Bspe ztI`g=y#5 zVjqiI`|r%AaxaJJdOO}E#@^yc7Ag+MuN0Ruw+InQz3uC}PyTAThCxqQRuZEg=6SGZ z2R)9+cN&eauKM$$g~raG>R8uv%Lm_95M_qNe3PPvVfM<}!zps6iwT=b_k7hyjC6#? zD=slrMMqj^WhklPZ?*kj#%v>cvzi{dF)`aO50p8NJ1YI5Pf)8rWs7)MxiZTluIvH5ntcX0ra~9+aDxla z{gDE2w@w7~w^Vp4toqtSh89|m<6UV^ZlKo#3D5OsLcUBAS-(c>^;cP}5E9*zr1?|r zBe>!I$wlQbXc5L3?0U|0NdM8Fa*_S}c$xZ}(f7Fjl*RvLC4J^?#ft5u>_g~8Ek z?Q|bs`G9Ry?2BD#BF0wFl>rFiEdqlw7954Q>e93vZN05%w&W1%d);wAgtW@aDgrcT z1P-hS5eB%icx1YeTb^_jsfxn;*eX_XlVba?8uUgvhrEJ4mY2{aIiQPYPW*f z-una-fl?j0*`JGOaMYeWNfIE0%UuyG9P{|lsPXlG5XgUn@9|yFs^P>y)7|LbE9h&k*ilq7ZsvOFa~p}xEaTMO zZdl;C`O$wrTrpWdwCy$AV$$nGfG79r1{uD0XS+{9=>?`MwPAQa;%;tc?Sx^OQ z1xN-BO)sH|0Y;Ue6(XIc)QM!X>irWjH_*FhUZiD!90IUeh1Y-F?60GlMCcksgUL!3u)}`ce1Cq@Z9>m>bA9Ps~d5q$h5OZ*I3_36CsxgDusZ zI%(+lYNEo*=UvSSt8M=dCZw>gixa~+dtuOj`j-D1s74oc=l$u4QePYIor9P%ne_iLk; zRBdt3wtteqZr1Kv`=yS?ywl7@U*C%pE{IhtasMT+!KvaD}HFl&C6u}IT#f@BS-f(@u;g0_%sKU9zWl3tfwC6EX z1q9Ls)qrHpxi#nF831f?Gy;2)_XD&$o=<4F6{Z=<59quB+b4IPja1*WrV2J8RVvsU zP#0&+u09TXoH`~>@D#oJKiLO82fW2R37%HJe*KmnkLkr`kKb`u2Hu?|4V(v$VPmt( z0=Aw&W)0IqXyi|V2Gc!5;iUNnC?gSQ) zcvdSJ9#eT*o|oVEarqH!rO9AJAeR^xp?Q3+(ariTIrTfD5e-e0TlW}{39nBQ={4kx zCkY;W&e@76CjHxO0`$ONya5jZt*`)m8Row#kwQL8Wyeewa&(zj`rqbO}o(R7Q=$QsnUmr&U7y|x5T;#eL0VRE+{ z`5Vw6!r5>UpODVW7=A%zf26r$h_2g%Zmc$XnVHANQiMiuiHuf>fUNPj{wWB4t~gfH zfqGBH_?){Ena^t8bdyhL_?cU|8eYv7D2y|Vi3OTE5OvpkHqZ!4-@T;#d6sr(Ke+_6 z0Y&~r`T_s;-v9b=O)$p2RFLxckO&4d#jTq9arY;V>B8lLe(Yw3rYulP1cYVD*h4q> zpw~V4WkGk+qRN6~n6AHtun8b~ZPdQx2KI`TCN2W&jCG=k*Dh{)VSRdRLt~XHw`>;w zC-3fLdy2Mi0V_bcVST{y;|%o<{mm*u4StJ4N0N6uyB^k|2?C=uM}<3~2(uf7reQpR zm8yrSU1d-`cWs~EHtI1;WslJP zH-T0YAq7jWa+@m;8QN>Y-Qn zk`UOv{O9buTJ2(N5L`~gH`WRAh%lBiVt?8TpOrT35m@7aZJ&rov!c0m5Fw0HH>s^1$_;DB=t;gYQ%adn>Is#*$9ut z;dy-tGaoA%eSF0zvpKRXF^Sr_q3vN>i;Vx-YrWU1UxSs&7lw|zS0$HWbDQ6C-dGs@ zED?=L5%clCF44BzPdL-V(-aYJA>Y{)Ywy-VF2H#Gy6;xXe7a!YA_Vfk{MeN_M| zVpVx}s`wN{9hr}nX}Rvwdl&~ZP9h^I^Wpq%Xc}I?__>c)wCseNI~e5CAg{%x^dzO0 zL(Fw7TJVCM*)@~)>w5CKw(FR;!WG{v(C>g^*JDH4u{f_wJ)r&BLHG7}N2EubkEtF| zc+ZQ#&pK*xSDm}Udb?kA=dGrTn~RB8b}=xYH;O*;mWuRwKp7+OPoILppCgyNrH+CH zPg66^T+0W+)6w#Gjv15xjo1d_R0S&NgM!e>CTc#{TRyz=+cy)_loY-`JtJpq$MVi7+rM_>(ef z#vrE?we>ss%BfxcVJ6N;IsSdQ6`$M?FPD(VmD@{XT&@#B zr8DJE3a3?kgmMLhk<=HVvgolaLF{8c&iMhe;>TYscn!J=!Iv_31h_#&a_j%)6WbpD z1KgMCZBDEbprfy=X*jj!U}HixO72SM2$oya+piI!1=l{Pj4f5SxuJJSWTKk2b;(cV zsoMP)c|^G;Hwc}GXEqNpZ`?@Hjhsu<_xi*TjB@NocOZxwhpYf zz|!piGQxR1;)|aJ4&b>cZO4zmGlftW3EABm{se1$L&GH`#F@sJqL_6`v(UO8;vacT z;4JrRF~7y|6H4`UR-96TI^}UVooIa5w@?NEz2H5}W;>FPHAa3h-b;PfFCy}m>3)s_ zU%rk1sr@=N9cnF8aHnGYik=U{tw){6WHB>i?8aL!HG6@aM(s^dDEs~}gQDV)VBES~9TujQc2tzK z_^ozwy^eYs_KSPnP}5a-CGluMPTXmLny7&Hx(PyWmq#OsYyp`*4^ACjsDpL(-=|_7 zeWJ`*Dcdegt$1&^UhftxGQXXpoMKQq7WNd_^tqlGZfR5~FsY7D$ILoXA+kAaPfVl3 zRlmN)&AAZgAKxJeR+A3rqj~tToo#yxODi1LmTc<~)b(f`xgFblOn(&P?>*ZnCq#$$ zoT4tq@}+F(i&REy!OagBq;Mw*ij9h)q{v2W@29-F*lI36On!ReA>yp%1L3CcT}FMYRela%-oRTN3;3mYNPO|7$xsIoDV z=363E1JbF@BkIOlE1;-JhM#P5AA}aSfh}NIO~zQw0-&}O7FWv%T|$IzGH`^zy(NGU zN^a4?`3>G}e9uSD5U*pWU$L;D2J4k}Ct0Uo4SXlEX_U*G2B#2L-I0!Pzg67)F4}VK zT(Pf<>FeArbuauJ?`L9)1Szq!>os>J*Hh&*i(}K`BQiWvy73yQvgz;d8d2VN3~R@M z93(WG!?8^zdYkoMe{$q$pLnU$xcvS;Xt_}|J$n)=huzUT+n7mA%&9YM>!Y z{vK@~gkZBvzNzC59JHT5rOMan>e~v4d9P@^G)lNwf_`I0p&Q_jdHX`v`FGZgM`D>FMpT%Ep#5>*FPLrW!Cemb7N&e=B4)pF zHgDPP@8Uf{Vikv%9{8<+p`PF)=2zi0&IE+^PdyYIiHu`3dt=HRBZ|YmPQ5-e*NkWi zHi-a^d)ZyLmlBv_F{wcq{)}i)fy|ZJe}RwipJ52|E%+}4Y-oWsU_I*Cl)YA^u2Ex^e+{1JK(-{31 zWBOFqO5XLyB}&9s?wH^II38^m&G2a78GX-wlTup37f#i>M4HbqU6}OaC&{@@Jk#MarK;iYPQxv!K1ux5JyK_VSTZ17-19=X@8u>}@z z)v@M%y8A04yS7H~Ap!w`BnRsRiZvlHi<5V_t`n8{HxiZ#2y(6}VasB$xlTgbS58~C ztZJ~}9nLI(mTGPHzsRA#n8-dIqRjnBqLld!3c?h1ha&9H-OsnB1}4hq65R~tOZSE> zIQaVR3SG&alQwePwJ8QNh=UL?Xs2W;J08(LR_ zCbQi0eV=a3t9iRi)D3_*-S3uD{J}%y4ZkyPw91(T;|1uaUZO&Uql?Da);lsiETYZy zMns7uP@ACF)pnk8tVR)ym{0JhEJ_el+cb7h@3v-?5;I6w!WgQk&|?8rvfJm%&<`yT<{iXZuor#cTdv7>i^B!u;{)3tz1IR%(fG^=4o;MDd{N zf0c70D@jCtXY|%Pc-$s zf&5VYrT!xV6Gm8WU@A>f#>_f{*pG3F87{B+q2_Hv$oIZp)l7G4>l8m(BaF%w!B(i* z!vWth#sDQ@mx^kO0ArabSxO4xmkQ#o;;UMxU}^7)xGDZ)imO}N&oTHu$m+*oilPpg zH}kE2oK<6K_bbsue2yxnZEgoxo9@L{7^EFhhtP3VrxkV;bucTjR=_Q=74{gab8~NT zsMuLa2=y;5VK(!?c95iGnB779V}at_ek>>qqeb#hlr@b8)vYh?A@d&w`t7u=r4~gy zagKqEM1IN=&gj`Gr4cB_2$v^6%yclV|eQuAF0J()9q-Y0TaVemMUC z=b1ZylZBHMVTCJjtFSAutFc!M3W>D3Fh2Xne$f6S0ui^C{=7Vp)xfHFFzZ8#DJtuQ zD_HG{Tf(hiR=eV>${%{@g7Rr!;OuS-2WdP24L75#Xsut-3ns2?FrRo;|svH6c#fl{RJP4c4J3ZSSs61*HxyOHUV zLy^R46$cewiaHD`s3#Sv8;*y*DNc01I{BMSpt03%U_t)t5*APR7O2GrAhOLb^Xtv_ zax7P34M9k#^&|An2l;W(f5PON&LGRQzxl{*9zv_CX>;3G?MVYH%l94)g@MD|kMker zkCUSE{L|@o-1Qj;2w-G%bg$Zwh5>#B+;8@TNBs^AF-5rs~7eZB+ zz>HhLv1%u-DRwICD(qF*tE+)gwijGaqUYg1V4lar6g8+@lyfqVfxh3d@x@R_wkdBF zb}G?Y;;jmfzkVv7c`|(>A2n%{YYHDuj$qQE`z3%rn1Av;PCW309!%f!Tg~gOTBeT` z(%szp>omeW;(#b10K?$~*P#8JoXF%D#4u>qD|nR|!iCzT(<@}CBty7$BiM{pa=L#o z`^GAUxRN>UZSB#6Cq7bBf3whHshdg%OjSs}D%U(J->L74slDyIe`-JvfZXD!{{S!R z-%`JAQr(D?Oom&C+LWZFOmTn7M;H{Wu+(kJs;r@y4a;mv?sxGxrIhIR#aU=@7D1WW z`DuLBf2Ug8O&z7|#o}q*Nmk;8)G%G^@X$6>AkT`C+K1$4pDj5UV79(h=wO?PBmG$d zWOz!9(PG+C>G3IH zBNHI63aY7g9KUCm+2#IL9FyUVwZax@bY4-oy4S{^ZqmaXY?Dng5a!t)UrIsC{n_bD z@GE}SRC4-R3|477(SI&H`)jD$$2&*$eL3fAIVULaIi*lAPu>NXkBgf8Ia$d9J?(=O z!S^zKFUnUo*1FY$K_9PuG&-8-oY30QB}Wm|iYLb#uHOSDRA;zt5ZJ%}*Xuu-O)}fq zylzx1A!JU>8kGH5hGF9$nGDBKu#JscJ2kJ(q-M(li=Ug#HSILWrtTH2s6Tq6_LO)3 z09kQdIV)nv7*ql}V&%AuQq~oAD(qF*tFS6*XFAOhj!oPOF!3HZp$s(X46PV&IPSHr zO8EU4p?T8e0;W|TLB%RdN}u?~`B`LnKA*** z*s52l`CrSLq7>9L+k23IY2#jBLjlY2!ATM!ifUhy9z?t3V1jEGKV;j=+(G{URr!o* zn95k5qyGRn@p3A3?PXkcOQ>jn;G;kBt_~JsH+vP;za_l&WmZc#?@)f#tbvdG1MqBV zn93NAr{#Yz>C)EwPr9{?Eec5kfnVn3Od*&crJkCfvO)2t6sb#Y9T^-|TVgy$6shRC z#F`(OBGe&L;@(yDU|qS#zzGxn1nvG-GKUmthZhX3>%L!u%lFplsA==9;0YzauA_^3 zQc3H2QZMsH$1o*hV&%q;;W3)eROMS+^+Z3hJR)ECU{K_3l3Ny+XD+WKV)!<#1*2WI zp;Ruj8RCIg)2|gkj`4`UmPh@j!)ztYKmX9|-g@%n`o*Q8ibjY=i&jq%1uN}{W(&iA zGwtTL^BA|3Qb=u~Q@Ay%lU=@fFyiL=m}4ofNu^87KbMyl{#T35T3WpNcy1cRH2(m3 zUD*0^Ejqy`*(d$h`5SX_n+z+BDi3a$TNaUuR^qP0uEkt1Dx^-)xOM6=RMm&pAP*7a zAl^3cJ;A_)u11xK^$9FCAfAU6Q^hXAsLN~ev`L98*}IRPC`>^F0yhVt7*ON5p%otZ z6+!H+HwW2;KM{(dWVV_=wuBE6xco6yG$l_YG(Om+d(A8TrzhB) zRb_EjhAQ3_XqpQ6U{u>&2^4x|l7Gjwl02XBlHrW4_!YuX66L^@UAs_>Rq9`oy4IVf z`Rh!%)UFcR%^FWqc~2BVVr5=OwOG?2Qh7eTv($9^*u<81FN_A&8R9(p_Yo&GI$d|Tv3(c!eLyIcp K$=R%p-~ZV-ocL(~ literal 0 HcmV?d00001 diff --git a/mode/guozhan.js b/mode/guozhan.js index eac2abc6c..3c8f987bc 100644 --- a/mode/guozhan.js +++ b/mode/guozhan.js @@ -833,7 +833,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ subSkill:{ use:{ trigger:{ - player:"useCard", + global:"useCard", }, filter:function (event,player){ return get.type(event.card)=='equip'&&event.player.isAlive()&& @@ -6856,11 +6856,12 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ }, checkResult:function(){ _status.overing=true; + var me=game.me._trueMe||game.me; for(var i=0;i=side2.length+2){ - game.me.showGiveup(); + me.showGiveup(); } } } @@ -6491,19 +6493,19 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ delete friend.replacetwo; } else{ - game.over(this.side!=game.me.side); + game.over(this.side!=me.side); } } else{ if(!friend){ - game.over(this.side!=game.me.side); + game.over(this.side!=me.side); } } return; } else if(_status.mode=='siguo'){ if(game.players.length==1||(game.players.length==2&&game.players[0].side==game.players[1].side)){ - game.over(game.me.side==game.players[0].side); + game.over(me.side==game.players[0].side); } var assignzhibao=function(){ var list=game.players.slice(0); @@ -6563,10 +6565,10 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ } else if(_status.mode=='jiange'){ if(get.population('wei')==0){ - game.over(game.me.identity=='shu'); + game.over(me.identity=='shu'); } else if(get.population('shu')==0){ - game.over(game.me.identity=='wei'); + game.over(me.identity=='wei'); } return; } @@ -6580,7 +6582,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ } } else{ - if(this==game.me){ + if(this==me){ game.modeSwapPlayer(game.friendZhu); } game.friend.remove(this); @@ -6588,7 +6590,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ } return; } - if(this.side==game.me.side){ + if(this.side==me.side){ _status.friendDied.push(this.name); _status.friendCount.innerHTML='阵亡: '+get.cnNumber(_status.friendDied.length,true); } @@ -6597,7 +6599,7 @@ game.import('mode',function(lib,game,ui,get,ai,_status){ _status.enemyCount.innerHTML='杀敌: '+get.cnNumber(_status.enemyDied.length,true); } - var list=(this.side==game.me.side)?_status.friend:_status.enemy; + var list=(this.side==me.side)?_status.friend:_status.enemy; if((list.length==0&&lib.storage.noreplace_end)|| (lib.storage.zhu&&lib.storage.main_zhu&&this.identity=='zhu'&&game.players.length>2)){ if(game.friend.contains(this)){