From 918cc34a90240729c7b3b28940b9effe2850fefd Mon Sep 17 00:00:00 2001 From: riccardo Date: Wed, 1 Jul 2015 11:52:42 +0200 Subject: [PATCH 01/61] primo commit in git --- file.cc | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 file.cc diff --git a/file.cc b/file.cc new file mode 100644 index 0000000..e69de29 From 412dcb70c2c98bc484efcba85ee1e0b8ae9543c2 Mon Sep 17 00:00:00 2001 From: riccardo Date: Wed, 1 Jul 2015 12:05:51 +0200 Subject: [PATCH 02/61] cancellato file.cc --- file.cc | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 file.cc diff --git a/file.cc b/file.cc deleted file mode 100644 index e69de29..0000000 From c606f0603c8734ebefc2dbac1c9df820ab0bccc5 Mon Sep 17 00:00:00 2001 From: riccardo Date: Wed, 1 Jul 2015 15:09:55 +0200 Subject: [PATCH 03/61] Ambiente di lavoro settato, SI PARTE --- Biopool/APPS/Makefile | 6 +++--- Biopool/APPS/mobi | Bin 0 -> 750654 bytes Biopool/APPS/mobi.cc | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 38 insertions(+), 3 deletions(-) create mode 100755 Biopool/APPS/mobi create mode 100644 Biopool/APPS/mobi.cc diff --git a/Biopool/APPS/Makefile b/Biopool/APPS/Makefile index cb26b82..31ca59b 100644 --- a/Biopool/APPS/Makefile +++ b/Biopool/APPS/Makefile @@ -27,13 +27,13 @@ INC_PATH = -I. -I../../tools/ -I../../Biopool/Sources -I../../Energy/Sources -I. # SOURCES = PdbCorrector.cc PdbSecondary.cc PdbEditor.cc Pdb2Seq.cc pdb2secondary.cc pdbshifter.cc \ - pdbMover.cc + pdbMover.cc mobi.cc OBJECTS = PdbCorrector.o PdbSecondary.o PdbEditor.o Pdb2Seq.o pdb2secondary.o pdbshifter.o \ - pdbMover.o + pdbMover.o mobi.o TARGETS = PdbCorrector PdbSecondary PdbEditor Pdb2Seq pdb2secondary pdbshifter \ - pdbMover + pdbMover mobi EXECS = PdbCorrector PdbSecondary PdbEditor Pdb2Seq pdb2secondary pdbshifter \ pdbMover diff --git a/Biopool/APPS/mobi b/Biopool/APPS/mobi new file mode 100755 index 0000000000000000000000000000000000000000..14e24b2d5b87a1e858ad4c4acf70a175ed1b6758 GIT binary patch literal 750654 zcmeEvdw3K@y8Z+LMwX?6i;BqV=#DNI#RNeCSxq2;2}F$$6cI^62p0{IO(qD+C72nO zag4<4;&rp$b=8fEh!Mvi2hW~OH5q@yI!VT`P8s6HzV?-Dlx`)ZeuW#eDI zlIM5I07W{37f+V>j$f(EPu^#N8N46);L(B}`CyLY+Wj|z^w?KB-6cq;iXavKi*MV` z2`ayi{IXTqZ(r?tIIDEd^mB%sRXXF$(mC@g7oNFr*g0pOGh|T3{6T|7xl@rpb;n*b zNmye0(F=+;_rf1zfb#7bo6cN&>6w@9zVoCbE8buI{PhdpKB*^UQ}M@iN8vB@S+xfsA+H#q2}_-ha6%?|8*vID=J*?~RtJMhCT z9q^ZRz(2VIdoJ#ve&=@Jhm9TZH+4|&V=!E`=bwfS{1E7X|7{2P?(KkoLI-|$qyu|W zI%r2@JFsU(2l<}T0sdnh)bAG^`0e`+>T3?-&5J+x=gSWCkM6+EAsyJcpaVbrgbdrO z$GIK&=i?6YeZPbDII08tAIIR?UcL`>&`+-EAm1Y$_&=osKm54^{`wB`UE6_w{@FqM z8rMO&?(D!nf9;@N?(U$x(>jR%-5vO0QU~ST*MXg%b&&7&4&r%f2lczY1Drt}Nvu8gbt{uzoRFQ38>J)z&I z@KaIW{EUPD1^!GY{!#F!z*qdqQr$Bh^(gqWo%!xi=E1zYA~2(P;6TpB&+!x# z%$hrYUO`2ms60?m;3*ilpkPADtT`2dlJe1|MHLk#6`q2e{0j?al$0xW{)MAU=g%w2 zFPdIjB4zDM3d#br%S(!86kJ`hsGt~k0jN*8Xkx_>7Sd*%QW3EXpa) zhB3tpiwepr%S#Ft%qb647L_8!yrQ`xT_FAJ=|vTDiVJ4WDJ_{^IWwntVjw-ecy>{F zL7=>7PM`t^*;(n?3xxLk;lQ6WucD+pkW-qSJz?Vfe3Wj=#K6#*rIi)4+f6(HfGUsq zFs!6#Zcctdep*5H#B-STqVY&w99UFVf}GON2L3g3W|YiBE^`7Z*FgGEX(N))nK!Eg zD@9?mv(i+eiqYxWdE<-c#=HP0>E_SX%}+nKpa6cIe@(%3xVEUYbbhfc@P8|7+e>;~ z%&91wUr`dT3s^B{XhliM)w8lo;h4b%IrA$DCW4+Zr(C*Nx>A$^3g_sC6&Fi8ojO$Bu}z$F_Nz;^kOjPqNac$s>d$Tf5UNe&Mm79OfM?FI$K#1^VaCWc00FWJ8;y{;?k0$@@!Zo zn+=*y!0!KIq4{$K0{|N%+YaJ1&5oS;m4Sl!GYiU#=FKXx9W_UEr6mi|2^I%(X0V>; zOc0$N8gO|<_Jldo>*t_1pEFB%ON7;>7a<`!+=WHc=PXEPzf#N&zknSa+QZEGDs1B| zV9q>r<8w>q1<;1tZ5hJa@^)iKwrZ_mvLDcT*mKdQrsqr?QZR97L4GWh{+n?h3puAx zW@gB@$>!f{Tlk~o$atfpgBoL5j>6eykzZP8YLVUJ*sgs9z#1toLK0*lb~ zlwl;EUtTn;M75<~(g@I5AWjNqEnHYoR#ILue_m1P9DprIll6`eys!Y_cy$4W${8wv z?Vf#NV8~2#`#I_91qE}biy$osFmKU#;;sC@8qAOaP{oMP#I&&pH?I;>dxDxa>YSE~z1lGY}5+vKG%quPJ&=z29Y3{h|R&G$s@!)|4g&+V4p8!QIt|oKuj8 zv0cQ_kYWt4xXX9;a_mVf=KPl(-HZ~uqx+eD!5*YV=_}4HFTq@M0jf>pAMdhDOXkfA z%+^MG4w11DMU20)0m~-$3+A{YLwl4}X%Qy&C@U+7xuE59kXKV?Oj=b8&M1vd%6@qZ zKNpc%v1nd#c3!cZmSFPpUyOnXlNpOJeTM-eOz`M2S3Y%Apy!=m!Do?K#l-~`WTtxx zCe6EM4kBPeNk!${5(?L!cm@MWAaX($CW${>2JIF4m{x> z?KuTz}bg*2QzKqQlF$a^Bf9M$v)(x8Mo6 zlP4cEKdlAwIT@KE*Z9YNZU?y77qTVx^Evrf+e}>T=Xvraq7>Gt=XvtE|73p}HGZMZ z#MNFmp+5Jj?2o-3LHF(|w#G-;$3A5mUxlWSE!6lu zV%qSh#y2$nN{!FNWncHWSx%8vi(r z->C7A*Z5mCes7K6r14MC_&YRyAC2Fv@lVwFrpE89@egSH5{=)g@lVqDo}zf%a!=F# zq-cDv&BQfTfDGc^8ejen-bFVpygH2y-3&wYFQQ>F3GvYEK9)c71v>`$%6Pq&%4 zuGaX2HGZAO=U%7%c~s*Mv6;BmYy6=af1SoZN8>kY{Bt$_R*gSQ<2Pyi;TnI3#vh^a zn>GG<8sF6Tf6({`H2(P-zg6R3pz%G^!dm5u+jwm3TaL?EU%y&NOOu|r3(5P(wtgY9zj1&no|nvz!5M`yPq_t5>~UI?;_19 zgw-VITS#;2U^NQ*2GX1|SoMOwo;0TlR-K@)CCw>2jHcJL$8%8=x0cC$hACzew;LiRO`TDQU9bllv>S#zKb-6P^(GMw~*%0X*CM^2GSfd zt$IOUPntueRVV0cNppy_Y6V?RnnR;iCFrY2b4awx1U;QJheE4R&{Ifr2(I8l09MBxPtXe^TLz+XDRVC;zNpq;O$^^Ze zG>0gwP|!O`b7->i1ig(kha@XQ(65u`P-LYE`W4a~f-J9~8%T5Lu~G&73~3HImPgQ! zljcxk9XKTFpEQROt69)@k>(I$H3|9_(i}RhMnT^|nnQ+FFX-z@bEvTD1br=O4iQ$Z zpvy^fXt1gTeHCdA309e)r<3MTU=<2_3TX}jRvzd)f8;2C=Y?kE8gKQRN#LiX%_XSPP-6qTTO&9Ty>@hlknA#xrGy=?5#%Yr=xim)krH;nM(|`xN|od+ zDPd=91iMgDrXyGfB6w?csfZ*=K2*7g>Ec%#`@XzaHU{o$|t;axUl8v>?f zhHcc>L)$ZI;LjTM5)j-*JqBLPsKY;y*eL8m&cZbFPtcg+5AV3*%8jmgeF^4H*;wo1 zJ|el8tMrpD34iY2lI+`zX7AsUWzn&5i~Qj)Xw249Wy~$}lrii>%^N?_ zj9I3#V7$eQxk@ovzcFJbDdr!PF(ol$#wQxHlI}z!Px~W__oKNQiDQlYAX-55Y$4fY zE|n75$Umaw93`0{C9;vfLdkF?87C#Okv~ewACx3bN@OFyiIPkuIZjGsBM(sWyBV}? zm&tg5ZL*P1q2y8}*)1iqk!Mhnt#agp_2blz4??7$qZ>M;oQ& z6d^f@lCVniu#|AtX#|rgsZo*}rG)cOBlso4E_$<)luHR`qDHWZlG~MJvXpR6Y6RC( za<`J4FD0Cv8o_%gxl>7eQo?zv5xky~dzGY{lyJss1o=p!Eu!QLrJzt31`YiFpZM!s@1QP63&^8;Bl0Epd|N631`nn@Gv^2=uJuzloHOP zjo@xd-cXwwter<%UyFlWiRWyjlrCjR1t3>Y#5j^x8#n@=;ibp9g zbw5y|M{V8Sit%S#S3G8Yho_zB$4a!=*8QzwTy5)$N3gBb9jHWkLe#)#F|>b5PF0d~ zq=ZjpX#bR)r6hf&gwJPa|CF4rB%Oo=B^sa@Uw@@aFCN}5qVA_k^qvqwcaUPdYU@s+ zS5Kv`sYH+4x@RlKown{3)IFFC-Qh~KREQd;3hO?iWR#N3kdiBfN-1_)6@DFjAvB_-D=Nve%WCQ5EllF3r?M z9#xW2QnFY`>L~e}lJt|3B|@@-lBblUhm&fjMZBX1gaK$3b@>hb8a2+PT@>MO9pyx!GI##~sNC`$1 zNE|C)7fT7oTu2-%Uqht?GY?1{D_rN@@0iL$sMdty!8v= z({}26k(9Jk-vv_APJL%fNjvpDP)gdV@19c9PJRFIc}MmAFDYrKzBfuqJN5mTl(_2q zR>^hM_Y%o<)%PsPb=CJJlIyDP^T5^XyEfj$yfQ&MF7GNO?YMmJXTlZjxO|(GwBz!1 zQqqpg?~{^tTppB?cAD5#Qqqpg^Q5F5m!BggE|+^H*X8nVlIwE$cY8#+T`vDva$PRp z3a;*Qu7j#o$8&2jDd7_6op;Kc)S(yw%uDg}#n=+)(MZk(&96}j(M%=)@!hAA`4O4+ z66h|)+yW+*_QQ0!1iF29!V>5)P)caoKOsc|(`=9Vj$qbu|M}&2@nb>r8D!Bg`-&Vq z1Au(Fu3v`Ohqk)GsF{O|li8(vJeiZCWzfmYpES|GeD9-}4EbxG@YSNw{+h+U)ZCgG zKEogW(tMCbi3EJ94GbWEc)vLT8A>q}z0p!QA~(F-ypD?CO!n6Vd|vu8Ew7k9D)kN9 zoaM{#;43o;U!!<8nqOJ`%I4P?evPHn&#xSk(Ps6uFqk zk&I*^znXh|buE>>B` zywL^w3n&T`BippLyo~7m@Y~Bg?`ZxY)Uf`I$VflP1g|!A@rZSNfB18uvohIdHq%Ok z!8#E@yUaQ)tP3=A3|caMI!%=$RXPvmn0GfL(eh2Kne@ghuFRa8dF4iI0MMG$T&&wu z=NjrD*S`ZeC;TdIbHgoWW(@udbRmRqgPko9Z*2L3YJfm3DTlFOfI5Rv!jp6pN}P)4 zexM1V0b$EpCRM3g-X++B@o>?JDS($Mi`Gee+H5wse_#$^a1{{w-ZDSGS^| zpo`+7F}O`Z%BTll5S_2+m-8ZHWJ|09nkat;^XnALk7V4wDd4;8%cB0akL~i4jO!0b z)b~^W{+K?=xc(vVUHG}wFOTVyjO)LisGmpuQ89gzas9gz_4BEJOiZ6-T>q*>{mInd z{V%(`B;)!c67{E2|CyLR$+&*EMEyeQUmw#a8Q0$lzRN!W>Q9L2lZ@*>o~XZ&`lrV9 zNyhcBP1IjZ{ck?9%S$q@KhB}Qt_ni`nYH)lcvg0~;N$_Gjd5FfzDUGZka+jU@JPn- z4uKy}BlK5NzdWW-GOqtR^=s4j<%Hj!<`3`oSMNEHm!GqxF$3M9f6IoZDZFec%g*qa z7eMv9nYD5BnYHWwTzr*h5)8)0U)|cnAO7r`PFHSR#|Fg%Q{P?rGDU68#>rLWts`aY zZ)oideSi2B|AsFw@Fz9--)^l$Vm?+O@irv(hd0agyH)zCKP>t!T5Dy`Nl0lfZEI`0 za&woNU?qLKQTpc(3wuH#a8k^KUXxxvfVXNvzpd#?>pCPcPWD(8^6KAm6njLZmE-5P zE`R_3rjb6mU_j;7lfB8KRfhSy4>2~p z6B)$c(6TAYWFRh#aQ1_yZCSl^!&%6&E>BdX%(+il& z*o-I0z*J=q!YMMYwdRj);qun->n%?+Ia9VYX>4(Xv3BOncn>oXe)dKR`Y!*GGe#rG zn;fF04-m;i*Km_MNU zW0U+t!s0FFZZN6T4OcnIKkyzn)tkImXnjQHr1XQBY`;YJidbL1*W_edi;SZQ6uC}D zMy_yBg(EVI5KA@FI5`UmIUD6PywLnQNd^fT^phw?1+5(i9mRk4EvFQ z_p71E5AW;5oxFckyRTRG=8FshJUGFv$Tv6q2~$-;T91JZw~e^v2VS4-k6db+Q{JVm z(Dg^w__jil{#yDrrI;cWQ_V_IAS%_Ar6Osexsmyxi^vd_%|d1@6a~XWlYLXj8}oA3 z3^el?t+|Tul6dPKJksHr0=Gj%^=0`ABUAZQrA5RFEC(}A@*Lb36&KlSy6*^XP!!{5 z{Z3~%Qhvgeu^N*eW9671iU3Av#H(63D^}ldl^s|>EHn?PlAr?OmIX)t)YhhV@<#9@ z#Lzm`$6;JER-FJ9`l-wuiz>0Yft*>3qi6n_@>C-@4+g%V)O&ca0u>rKUUEf*a;9M zH2!4z*WCNI%n#9Fvp!HPgoe%9OcpyO^CK4c3JGORlvmN{tTW^IWrAay6h>mJAEbKy z1=1WIy+YO9$!3HF$OWkv_O}=iG`i&t2h>FlsMBLm8H73>q(l2mhjx#c_A%6MLsjY- zJ*5+GIdGf>;8|(mFY|R4_iN((v9)GtTX<1x_-iWyu@3cy-Tz{2@rS?XBE= zcKSZF-O%k&%?|FX^fUIoTFVbSq&wXRK9cP5#HXn%{WWWRRY+^*151Q>EMMoy7Q;nm8q54u)o^G4mx>lM%dt(I1KFW+>eZab&~n zDs(Ha&50!Y(EL-!APu7hD?(rRBUN;HTNCQxas_v?=&{iNwI1+aXamkNWMQn2`2rmp z6k_GbdJE-v9Gt{*SC*GLg$XX4Cvs59S7SaiD{-gp!F(iw^Q z7OH#;qdzj=Z=e~=ce33cn17+8+*c*!--51OD|e2be=hSsx83~9RQ_erBh0^C zrH|Q`>Dh+DsFUh%lVpWhCCtOFUfHn3h=mSzl01V+ns+Z-c8B z<5}kbVDX5wOqEa<*6li?R!P=k=Kq=w%b#YnJg;+JK}IbbEJk<7)ol%Snb#fTNXuI~ z&LL=MD>j*z#d_?Y@VxRZ9ZTWGveEWt08=-}Lv#n#_^T{tbsZ`)fuH z#v+3e%-|G`PmdS!rY5@|{08s&F*!gJG988 zev$Il(7}br_#=ybDP}4f1eyNGg~N=s*?mS0OFp$SnzLa~=W#X3r({Lavd$|@UfQeW zZ&SkWTyRsrLa-SXN@L9s4IOGO9JyX#3}YXuXrt;Geu-;GewzhJRi? zHo-sJ;4Icb&_(c1-p~7|dQ)%tNSQe;vtT10pL-*dIL8`4klAjq zUJ-FxTea*rp30*)kL{JTdF=5?(2s59#h&sT?Wg=tVSxDzI>p#i{`p(kTDF*{qw|Qa zmcQ~a`zvNoGVQIrUW$46b(zA4t9;7uw#Bu6+E3VIR4wZzEIXd-XZ^5eBYxHpv+6P1 zDjp;;`|4Ib3Pf5}i#(!D%Boux^ExtZtClL}Ol8$guh~`wHZ$fjJhApG8t?MGt)ddT z`osCYlw7pLVgBlcW*1|{3he&ogfZ^Q$M>A@n+;rLdZ7!g8%ua4F~>ca;z2@0nS9L9 zMkOP3CN_lqkx4aP&?fVm>_u?coH8=J?8f?)Rvg752Sc9xjNJiU{)OP1Y<=r z9)Rs+fO&x-)zF6~K1e_X5GiA)ajdOq?$Bh$+7!*;mASrijZiDilt%y7Sg}~k;|1J% z8ctG1XXr*(uT4QBY4JBkPcC6;v#Zb>M3I=M87ulFV4kip_cE?**Pi9Z?Crp;joW#q zvEp6q@!Kh-or4tSY8~^#=UjGr9hmFmc4iuXIu0|jnZ{-NGS>sjgJPBXup)e$c%0;v zHBW5wzQkRB^OjfJ+Aa+3!BiC+`snO}Ou{lp{H>wa7XAv&)|^I5BAu&7_VWg^{O8R! zjX#YSW@G18R35gL84jN_jxmKO6q%S~MKagKEwm2->Bmsvul}iL<)3x4%7j^_M_Tj} z4*?j#<7MPvYzu9Z)-*8}WzB{D;jrfVpNI+fS0RaR&?I4yd={WhW#+RYv7C!JJa{cV zD9!3sd6V>#52wn_qD`ETR$kb^$d7t4rIWua`v81DR)q58Z?CxKvl%S;v#&C7&Tfmj zhD!9fWQ*sULX_`i6JX}UXx$Q4bgJ^FY0Jy-TvyDNd0v-&$yj0wkIpb^zUAP8K!kTO zds{CSviy*V!6*)C@j^3uBYk6peu8zGRm+aY8sroj z8vZyp{DXP!{armdSPF;DWwf~-V8Z4>%4Ra4C~X!}-R3{4BBM}wSU7dh#OI(-QHfs^)9S{SigOl-Z~2=zhZ zMTvv=VxGqOKo5DIvBE%X*Z^@{Hi>sc0I0>(>Gr; zSe*uVtRxJR_C7*c^gNpQ+6LkK;0F*Xhi|TPI=qf0Wstno$O5kMkr8vakZKMOt^yLe z0zWo~jNqpzXzWqMSXIGXROpyT0B03}6YnqBxMcH9mv)8vit0nCL`T!yK8ig+08#q_ zvOB9%+yKj}7W>Zi8bK~dBba)l@&AN*Z3FwmsJFmArBQ?wS>dnbk&WA;c8fa+Xc%q% z;aANIpb_CxE!H+F+EX|Q3dY(j-?_CitG(qlH>?>pJUSvlUdrXXd20;Rf&7UyKEYBkQO2zISV-F^K zjAAFn*h9%aOR>M?Lz1w27}>oQ`yH^Y-S7bB_qlM?uviDt2uHEQV90iZYZ-9l#X^>Z zqt`x&k&c}}9D}Vpx2C>KL|>J>0PaOpgdM*zIMEYmEg&=qaH#uZJb^xu(UbqcvCs%E zguT_~sOnaX)}<_xusOUlH{53OygHsK%KYdPhq1knzPGE#8UwADlUe2<>%R>j?6`3R zGgc-2J8p>i9K_cCR$Kd08YvG2p_32zE@oNH!u90tGFKyVV&k*yVYlCd+;$wY(;pX4 zj}BLi!$|K%`j)?`bvrR5U<(&xeous^W8E|L2WcH0Z5~hSjvVBAd8}L555GE6EJE(K zW6jTyl{E{TnEt8g86Elsy8d(2zYrYR?ZxaG=T7C-?OMiEJ-~_Y7rN5FhI(}5y61bX zTo*9?HgGyjztf#Q7hbTV(QJDW=||8nvHf9J{+GMc|NT2H{mV>$FF5h^4UQNIsM0b% z&6}w`9USo-;HO}D;`VE*K!yP=2DdD(OhK}po%rRXPda%Q}C zyr7xG;# zI$Z}^)or6Fi56J>o`)9?pmWg^{GI6WgDcj_F2LsnAkSW!Th|i1#d;DDDvw%s9-E+J z-3SHiMZ{#RLOilQPJdDGM15q)=ceBf3}d3>x#_6}GGot8hDhdoZi-by&&oTkE#KIM za96_&l(}WQHHgN@kgs=}+><7M@NayjKuh;UFVsY>8Yd>@gulP3Qk-wVS>9ByeIVu-#D0!_AZ8Ns%E1X0>;!2?V(?32B)0f}G{(j= zghGa6WM2v?7Mk()0Okj=mvil2#)`KgptHPjH#Qs#9dkBv<^h>PxtfOcZMfOI-{u-? zJ836pFxg8rLazcV2g7+v&Ux5%F@mph*1)ySCvd|VV(QASImkQ3U)`9L!xc|yi9ToG ze|f|*I!YM2f=DpHYo3DDj+nh^VkHKLeqLn10(n}rkn@DY&q>?UG!u;wt&pdHs((x} z{+GnUbI%_|6shcVI74iP?_Wdq0gPFtE*ktUTbS(RB(EC zs}I<6wsVe|}9B$2QAG!)BVzurfj4r6t?(M9hj9Y648B{Th~)*63X zcwDR4#j^T<)l#dQu_#M&xcq3Q?7W#$oEB@i%l;b=JH?y&g>$Mk$`!%b@;j~<6nr*1D*phVwW^-}4 z0?`&-h^I>u3lwu2nfBsvkz(e6Nu@uc{^XMNW%Vp=6|m7)9kp_FAM;pnuuPqC1?mz3 zgAqU+8a?uNCf#LT3JBG|JNAQ?@9oFFA&fqde!&_^Gos!60fU4;vc|^;a{qa21hX=~ zYDsTTpl<_zZytR#_E`K6T50PJU*kJ~G&ll=S7>|S&hvW#A#^bCtIb_8P$)!f!1%-J z9@|Rk+r;`oR%9;T^@QhmbhhSD1}3&tluYr{%-;(BZ33R=HqsbRA-cbf@W9Jgvm=~C zi?~#?sxLCf>L*W~*^4wdU~I0Yv()^B`~v_nZ>6iiBw~!Yl>!qVc3>oYXH=zsah6sfo9Q}G0!g&}r_;QB7XH;JU z3>?6&T5^IXuu;_L_)*5%zJsIJz;zA$p_N=;`A)dQUL=t}ftiYBl8?Y|z{3ZA9gGAF z%h#!i6|-iP98k%F<*C?}*=SVqsB9}8#hJmj^n>P!PobXD=)b?p_(rgrpZ~k7=Veh1 zH`+{26)y$JeHRgRPq=bK#!*uc{B9L|% z`di{?&|YJO#|51igFXfL=EovB*89jdKUv8|-`fP?nB8>|4ZIQ$29^G-@PndS!a*N@ zr*8z`Lo|pUlR1kD3wQNbZ%*-tkw7!%7-Pk=E@KL54E{U~zo9Xgs0tuE%UFvo|LlJL zNS>KnGd(Hyyut(593?i|mLBVmV6m3R9d|v(DwA4SD@UUGasLOlHf*x7Ge!PH)4deD z1p};e4tLb?jyasMYQC6*$oMlG9>=(SrI?0f5lZ&IvJHI&8MhUFPzgk(Dh=}z)VSCQ zvHRooJ}->PjTB~>+i5wfoD2+jnQiaVRzYb~_TcAu$g?iSoB@r*o-fL9jo!ncny2!= zgD{%2u@}1dL>e0psxqj=_e9M-G!B-MZGM55{-~fLt-C99n%?arUJ+C&WNFY8Us=|bz8s2eG;n1?9@$7SzvzEr-Pc@#ye`6(JqX{e( zRM<&&1QoXrWl-_Zs(HgBOpz_LR8XbaL3IN&Q)s%Ef_%@P^)R9!D?GQabrxr7a=sJm z1jOD#^idfvpJPOFmE!?yRqIZzbCzR>DhJu}=|}80lQd^*GFpXldhLgw(A{`)Vph%2 z95cd~W`u6WlRf%k(FF&NW|tgV3YKmU;^%Uv(<-^1_J~f2d+O$ch&+~!Z1a&|EPhDq zo(Z)=J!`nn7by2f7W;6P=cu+?DzVw*vzo#6YTQ8IswKV9udEfD&wMU@;a6R79L5Me z2#y>Qk7wp`>ebu4;aPh~^u*a-^EX~;zegB^;g*I@dzel zi!_*9@ru2f-|uQ`3n$}{o%}_BqkJLO8w4^7JI1T692J zJYl~pH?q#p(q4i8$rzJL(doP&sTPNl&;iv1l9S9;I9S6Bj1V6QGpjdYI=0Ik4$w>< zk}5=c31%Kk6pXj30-P5_HK$nq$SvYT=r+_^@H+HfDp50bzg40-nTQvRA_={H4oS96FjQoS4wLG0VD>0$x)N($=)~f)EKku@Q&|0w}ZAKrI69>MT z**Y3a*tMIp`~1%0%Li3|A>IEzYP)L5ai|DB-^rhN-;ei!@uwNFv(I1OO?Ot)@i=F; z5*K-f&pur}(8?DK!zeVH)1WeEcw77+3TLdmCbIl}p zTb#=qKv4K%@a?Ce4#1nAjN_&`x*=|#8 z8ga7{Tb@{J#F6i22$@+b7aaZJ<&x$b9MIdakEeCSXYe~Z%*Xje2f+a%Xp^1LZY5}P z3$EfrdCXM#fN8z?HQS7IKyWjs+e)K>?<9>jqe+TpI>uP*OEb6sl^s8pV#FT05M-^K zfrYyD5IFa}9|y;(6!Z5b*sYZhRputl5v?=OPT6I{!(7(2izzk|Ww7j11y)5wKNDP}!jqh>hPPVqod9olMk8Fd0m7S}l5MEQyzvv~X(4(MilWb88Cy zTrI4ulO4&67-XUkpo=22P%$4S^AW`yFPWi#vL4Z!U%gih5upmuks%1CUDaPDnI#9< zOgpn&JpU-G&$<#oxsewcOt}MJWH5=DdUURBV$O!P&gLTI5bG2_qCZjPcrT;@}T`T8}aGSzY$+8Pxra)YXQeP3F8Y^ny^WB98+uO7b@up5R;Q?$1<uS5JNrtg;0ycQT>;T`N=EWDB+lfvg0%x?D#NsPNhDU7wFCER}VBn5Xm;qZ8cH<;q5MaY0~f9(kFm>AqVC)`^I zC0h4BQ{ws-u5t%p5`E@!bta^4SDy)9^z@jkm;MhanJ0ct~!ns^M1er-!_Yj4Nxw?}oOgCodc6CUgwd3lqVXSoZgSgXN{Vb~*K6#Or zxm|ru2XG<&M8}+cM?78`1ij%EL`{_Iu%O%W(yZ&CN6}AEb%}Zk(SCEc5M_H*vi(fP z6$>WYoR}=TjiUYL-`YvGlU8lJ9nU$n=09*TH}h))zG}@E@h#5F{Y*di#ix#b?%6}J ze(u-5a`ba|LK5remZRA0=Vp>=_j9F+c?p?zKX;j8jwI9W=SC^!@4;k0_sCtUpBsaE z7yVol`Z;%y-h))`AYBQb7Nj5C1{HUZ&R{x6kWL^+Q`==`kmCr_LEyC4ADqk&CD9rzKozwuTiakcOQ zq;NZLJa}4XdJmInUJ)()_e|$--m&CpYP-zNqF6<8%1EV$&EKCb&NVJ~p?&pRs-8iL?{mI1kQ^des7nC?A-olWFf8_g9)d!DNcz zaFzAyze$L>fIU|bcHn{0Y`qz>*b}5$F`!_V5;U=6#9SbjVlxERdp`)smQAiXMrW{0QUZ#{L5xbHDXEZI(71Yd#9_lIDB%ChvHpD!gQ7Td zn+k_J=eLg{zjdfA^{yjh6<^wGqnK&Xx6;Uwj;V8Jv8z^QaR;){4_XBJHz-hX$YR;A zW03!%QR>0j@_nZrfoOT3MZ?43Msv1;y&z`!rAVfS$|ZnTMsfOX!}Iap9H&wzAvLBI z4D;g!tHnxuDtOZEfCoN7Dpi%{S;*G9862nAHoFr|(i0s*X4YtOq}Nj220pfmvK?08 z_fFuz*^a9CqFJ-#A%boPNB2T5yr9u7ujyvG&@9ooWQdxV5$%0&wA9wwZZy`1m-VsZ zCTTFw>RONU>mhvUnHj+ZpG>wi^FK$Ctuf?CpESCCayzoH&P1=EqXy1#IOJS?hJPCo zPa`M1k)!JnW#g|HQ}JVrEt?&HP7k;70l}{8(FEKFj+VL|pQtW^T@+Hv;6u=Duc0M7 ztQ)_z8`}dg$dUJ0M`1SY*7Dv0U5oECRqn}fyJvxdKNIkpeJ#()hJ7y5%eym$8$>te zb%UfU5dQZe)~ER5IVWo;ZuIlBue<057yY=4=6@fuC8HHh0&7Br=BUldUXS&yEQ_@l zLX^q+2d-9`B-s25-L~C+qx4@cbYw}2VQrMC{u=d?u3JFZ{R&>vWvtqvH9MS&8EGy< z8a#@Rw4(9mm*>uEfXeEVuVenMb?bChIxj&-n)5C=3B@ehgZ#8JU9-@H9Ce=WsPlV1 zMviv8y#qk&25=k+oG(ea22b&^1otyR2{?KHJgO6KsPIX17w6oF^zK&&0Ab-P*0g`R z0i0g+gx&eJkkd)}#`=W1GUUtLpu3^SkiQc;dPM~;c2v?zEzm_J?SwI+lIFz&zRC?A zQs5&2u6elSNm(0XfZ_1lM2Dl-Yk^^21zqcLa5Pt0KkjqV4f~yR>Q@fB%C5u$N6jU3c@X&#jBiB*%+%6-Ys~1>~#Dx{7-#+k;N92w&hjLzLrma zVSXp+`PGRAzRT??=-xa`M%`HH}*D!@3oSq_|F@g8p!23+y%y3f7{9w@jkbj zu~>;8onox*gWspL`TKtv_?5r^`*{0{c@V%WujCKIQ|*O1^*h7#ww5j8_j(b7??b3= z#fucSvXuk-y4;#G@FVSmIsME zIMuow8PFbND_>ZF%v)--{iX0*x#4eErc*^oZpaNEXn8y?hmgZh7YHe-dU+g{cFeAS z5=SVquvf&l0V!8v!}nsi^5WFMG`?faRAFa)&oo?#l`vmleJ!8O~O37C`rZ zK~DIMoc@Qg*w-09I50xH>0%sQ=g*-%{{BDtH~iEYb_>7y!$W-L5Oxuf@u=AIa%(bh z!BRb4jF%zj)MV`w^#e~I;}56$haWM5^}xvqx8{bwROhMideW{JM&Q(LIn|9g7XC^~ z?(of(roUz^O7soipMe$L4QA(@n$lMR@n&Es*g0WS?L%IO`tO<>>2_gQq!k#$Uq^Z# z?SVTse2Jg?3H#a;mR*^qp@-V(8*@xF_EI1KG&DpZ46?Lo1Y8fJs zUTq2Gh@Jw}$#C8^?@@EZo@AxQW09dfK+0T4N8xQA))7$g>aInbZaO2Og%IS6GjPc&1kD!%s}#hU2t2*SE0ZiQHx7r&^m})4qarOAzAxy+fT84lC=jcuVV3+w4QV-^;Vo-g2Vh$6{ox4 z(C`$+Nmf^nx*i4y^AvL!T)$H^mov%VtFETH?orofb^Sw0xvr><+%l}(K4xh2o*qw30qKGJpSdXKuUR@d9qwN_nkRM(a28dTRRan15A z=8NYS@+-ivGJcivYc{`T@T-ttQ~5QSU-|sX<5w=f{QMFxxzFI;NPZ3D*ARZC@#_qJ z_2ZY1UtWIob24IA)my~D(MyQvhL{l(A5Br3sXbwhbn50CbFhZ~YPRK;N zFhWx$C0d6O`s!366Ai=&RY^)T6C-qtq(n=>A*EAErs)J0lEF&~o zQlfnsp)dOinP_ErqpPG2Gvb}_ya2BuSd7ZMT;49k?LnLi12=%%TjgyTZqwv#DQ^GST`0`P?N#!225yg% zw}rTU5c|78n2Os>c{>@mA7iTl+ zH_F?Qxa}`*u^koKe3Vcag4<$wn}%DDygdWA_jVNu{ct-%-uiGWjz?iJ1h;`MLZL5i zd&=A1xP3TTaB+?>be_CT#qACpdB_g78KG;$%|Y}(;$|Q0??lm_nYFMVxBNX{=<6hO zW*_3bB(5l1cOVRsw<);&2kHUbWKU&j)kvQQPa4ZNad5Zi*LazfoLAqbmI7m&=z;C} zXjc-;ob?O3m|^;;|>$*YZH@e396chg3gHE6&(CF(1(}ja5@P z^RjW#mz$q00WfZ?3`lG{o7}j4A#~yvIB|c(WK6?NF>54liuDO3Hg2;U_XP-@xW_wj zS37aLn?ogTcWbGJd%%s$H|aTX-&&{n)>t*viJNNvYq9V{s&%4L9^<@MPVtw6- z`+Fzub|`3mNHs$?E`M!n`$7J$QNz7G0e9E)4toP`+%s+5DH^U95$lMD!3nstoVY#R zxZAH&e)!>V+}<=d?%NPL{jki5TMq??AC}m-cWAg7Zrrj2T$g_@cH^FA;||qu^W3;b z0DnImh;+|nnlDKDBhKAeZ#{B|M&`x`Ab>eP@g64-b^QUWsy=m4Hkl21` zcH;&UaK}4wi=DVb%!efI5GzN+J>bSYB>}gy6W8O!9cErAafex-V<*kFm*>j;HCp?K zLg@6vi)$SIy%!3aA4ZzrFA#nhX;o{usczgW5^yV=xFejn8RoqbH^bt4Uu=85ZroOE zeL3wN=)`@Wdt>qV%`&qkZkF{DBsOlE8~64E+)tl%_#xoL^_%-Dg&+LZ6b(1SjXO92 z_jvply6k>b{PuL>=9;%l++6DiY@*rr=DBg-a_z7g!MC1v;64Qf%@29zA0%#`b(@A; z=*BHg!2OdGcf1of-~22f{E%;@Yq(`@+@lk4FL2_T*xl0Xoov=f+{xCPkl22xa^pS> zp)($SsCW1w%btasM>B z@%caAJN2f#o80)F6Y$S>;_q&8*k4clyCgpEtydtA+u!WQ zza3(y{a-ozpMVp84e>`veBN964*Uad{NE?w-{-{d>cr=D_#5 z@&APrPfq)va^kP&ktlmS4Ei<^zu_w3AKqK{KpwB(G&lbI1pH}E{EM9UTZunK;`81b ziQlYFm5KEXxzlAHnj`FggZPb*$L-H^U6!~f+@{3hCe zm&E72HNk;j=*B-S0e_woKiP@@F7Zc5eBN7ozR>M2bK^e`vD5yOocMP@L95>##NRnv z_=oq_0tbGT8$Txj|INo7{^{q$|A_e4N_^g1DGvNvH~xp8yX{}<#BYFtW`8sB`$&A= zTX#VouirX1{@euoK~DT!C;lGdH_Q_L;k|W+1Hayl-}af?{*UqhNNdlHA45U2-z5GN ziO+j03VGcAMmPS=3HUcT@ynd}dx?K&rm&y)7XL^1IDV5G|91)a=R5H`Iq?q=|1OEo zduulipvCc<-T2Qz?2ON^9&z~RHYjNR`HuJ_BtGx0fCK-48-Hv9{(VmT)1COO#NSyW z{KI>zs{`MI9T!Lc{{jB5b*KFoIq}y)L9_ob@voKmyth_E9`{eG8~^GA{38!L{4>sp z&%I2ukHqJ_HNb)Ib>shp6K+oXpK{`Vqz=ca{*ybWX2T5OAKqK*A&=Xi=Eh%@fIrQN zFOJy7#~1F?no}e`@2!g*_!(~eQxfodJmBz;2MU`1xhrfQDi-$h-fG6NySV*%Zv1B< zcKRoJzXSgkb&yZ_hkMZGT@s)7R=ESe(2bv+fIrWP?{ngF$J-ns@p*40JMhcg`0wLD zw$uKTocL?i8E$1i_t(vx(}jO{Z`}cT+&@)r{5c8uZ~oQcAHNfyyZPp|5})^0KL>uT z8~?{$Zu^%y@pnQ&t6wki`$&A=TMdxM?XPp=*CgN%a^jad@p)3gY$y``;k}jXz^`}X zpPYdIG1ii_{{P6w4*Pj7!ki-Ud2f9TdEEX+H~!NQJL~r*Cw{FHpQkX)LxsYA-dkl3 z{3bX4=mh-po%p9Z@zaQZm&E72)yaY1?8e{zFSq?){l(#*HBiv%mnTfj5fY#G)@_i- z{d2&LKPv(MJ}3SdCqB=!m^%xEe|T@5?!f0hyrcjB_eXB~FLL7VfP!W}PtTawN_^g1 z>mZNYpX$bsB;X&p&*7h|ocI~U?<4VfZ;f-{d)@fIO~8N3iGTP*hy7W^Zx$*xFu`@oWIq`3D;`@m|MdI_`n&-gJaN}nt;NNtQ!#`dpelGD3T`BD6z2$M> z=ehCU+3B|bd?)@hP|)f(kN9^0spJJ9rkBA@$-p4LgMq@@;UI! z-1t9y;I{uhC;od-(CnW~{GC&Ue|T@Lg*z)PY~` z#=jr|f0`5jBq#oC;!lzIytj_LuiM|~#(x`Pr~Mb*>F`fI6twy+CH|o)!hYUcwGR9y zH-2#f{*l!V{83K)GUDGQ@p*5Z>cDSy&}5 zv-XUFJz1y-YW}=ki-2vPH>Z7RZu>5VLN1PEO=y%2VA;%Jc^EUxJuZJVo zY;?S`asQt`G`~(2Hbq^N)zzb}e8Q$P_$1FOR}6UN$^@@m0pZnDSFY%gZdO;WP?6?J z7_VG$bhQC*Qx6ob*)#|C)D*(b$w7>>(uogbzQBlx2bEb zy56X+E7diqu2tgtKlt?e`7*wr{!e`S{uAE_Y_zZc z;qje>--RSupZ=3$qaE8#@z~~V^e|(4!zKTT?f>-MGN%9M_uWbS&6AAnqyC}Cc5^(o zc^mcce<}RzqW{G9e`5Q8L2NUuQ?%F~xK)qs1M%4AZ8Vv&eRQsj?KS`B=Oizp%p7r3 z)wMgX|Cx46r~I#&cDutn_fqZPh2cFQM~3(F|Hs1nB^AWI)wLI||A}xk z@Bh^gmhK3@>J>f0Q{xfN+vv@Bou}y^BO|;EeoKqum#KjG-?eBW-)#@`y~_N)y#6Q1 z>)-{}>i?kP@_TQmA8mQS+yLJUXL;=c?4 z%h555w`QcOblrIsZ|V5YoEn~hul@%)^O!^lln2d zEU=FE%^$>mO`;!yuLXu`Fmjhn!AOUR@;<}#4hO=2ztFZ!)-~`sK z+(OiJra}kr7?4uAfvHK)7t(`LS}(TmG^tle_ep7;TiQuT_eg22Te@dtTN~b5Af;7q z>1Id~mBQpQx9~9t@tTQJgpfz76uMPbNR`=fl{~jfu~ZTLutdplt7J%(!Z=ErTjjS> zMReT~#p_l%be=F*bm>wh)vfZrR1v+sRPne~)<~7SxGnNDjaD5uOO@QXiagMxsmzlq z{3YkmnvdVk+#TVO`1wSsge;#sTU`EG?gw=MGQm|rOvIgdxY?d7@?#}ty|?~ zsUik1sZ!-uxksv`#ce5bt1OZ#XT((s-71$#m40!RJh#f(Qbi1r(v}RjN~%=x#!=GT zD*J|uLidfUc-<O`y zDk*Ulc?MZiIZ>)4$5rGpXicScm?*R-u2L^f0&6PUrOIJ6Y1O9d+$zsV6|q~W;>E49 zN~(MpN2zkFlu8w`$0$+C+$uRzMQlGxl|r}5=~BgvXO!nw=`2h-i@Pp+$#A}MeLnQ6!~i%t&Y;Air7|_D)I+I zno19;vNfKO{LPZ4(sGU{^rpCq{MnSIvQ?@y##QQ*IoHrs9+E2S<0^G-mFuO7*xi-p z*1A;+q{^B&N|jq>q*M`m!V;y-t#X1?5!=O5rO>T%aHuHsqw$RL+$!%#l?UT08E%z& zsZtkLNpq{zNEPvLC2jG#Rj!gMV%J)#q`FncN)@s0AXPkW6`xcQd)-n+{+d^-qa>*! zw!x)}{2{TX^6?Pi7qL_)Rpf7&HI)~oN-$pNM)9*@O=Y!Isfw%MSEkN*siX>DKP7X) zDOsm{l9Vr0@>;iisFVkkyvi*3#u32Q-)_WqodXDNB3TYkHgXDE5STV5&UBbB_)EuSRi!<4+%Egvf7LzKMA zEk9Pu)0Di-E&o1Ul>ZDRFLcYdOL;#f&vVP4lX9PuXSn6JOSxCc)7MCX@pv4pfS254PRZJ#u6*C50#k2s|O)6cZx{6U8d@)qxD#l}6#h{C; z7+G-@!zZo}s&sYgDn>i-#gK-p7`Jd0gA=Y|1j1DeGq{Se1lKB&{(sIvto9aXtZDp- ze(azM8?M?B;%)R-+!5-1mRv7CAw^V68KVFHv3KnOR!#f=?3x&qGYBCX9BvV2$W?@y z+ldKbVK5QGWag-28jUNj>+zc?a)m)CvYV71o+IxYHLkF?DGho|dYs?) zv)0;Y@4e1c(=?BB&aCstUf=aN-?jF4eZSxRS&zLJx`z#rqw~wW{8QP~MmFN2kPWNU zlsWIXc-M3GpJ7+xPY!~scD`w_;1T7Um2Ylk-wdVf+7Kjh#@9+)mA1CBwgN;nNL%qC40}-{ z$3_w$^+SLp`W>Q>1XF0XKWmPd_Fy})sF&GxD+<+QaWqU8L+|++gmBgJ{%Z5qDato1 z-`sk>8A_SlU?j2j6Q!+6TU$?C;Y=H@t>?PF|DUJ_#&rsMQT_-IFMYs;|dD`FFJ|=&@TAl2AyZ1(5`lvL`N$K@#3K zm9{EvZ9#3tOhlu#^{UxUBvED~36T1+KoUo6P)LF)wAv>@S{;qAI>S{rXjjmMbTYVl zF`s%-jq-qloAnh?C}qkXA&K{1QrfDJL<=H`J<`@gXE~8Xxs4=1>c;~~e7Z&<356u0 zbaeyD-|$^Q9q0^lg(MV`@D&n}Xg(wXrR;^vo*{`lo>khakVMNMi9OfWkDhTNi3%G@ zfYj555t5j=S|JIAB%%*VK>2rbSJ2zTly6qPxjB6^l(IK2O@Jg)pHkYYw6!_46=1rl zw6*AQCz7bNkpxKnd(26k{jEY03Q0s2l7Opj%*ykPLzHh;zPXuvGnBG#QzD6Ew$8Z6i6m-mBmq)C8A#&Fg$hY1B+Wmo-4zr%QTb-&oA=B&Ln&JZNsJw%v{h;Ao@r~#;oc?JIFUrMjU+(oy)Y*+;XevV zC?wIsa}w~^O}{JX^<$N9R=&B>z8Ok6xaE+G5;XccWWbDT&b$3_w$^&4{uNj&p_LJ|r|G&hoft8Vr^Y+voGe6#Y+4foAZ%Dh%X z5(6$!+N!j*;o1ri(R$kYe|{&D$g`0INIea65|;%Pl2AyZ8Ic5Bb<6BwD{ZHIv+~Ui z^371n5v_|P+V@l1s$}zY^1CqGmRD~pzw(dk*F%uCr+PdHrCz2?$kpxJ+ zKaj*7`3gxWB+-;e0gGfe6*iIpsrR{wki^edDkPzh#GWGwxawBk6?DWm3P~v6?DWl0%5hPOBpx_S zAql0ePHhEUrMd*NPABvEZ636S~_Ac=kYDwl@uor&ZO%6XK}-?|BBp%vHFZi`+nlxnLByoCzP-VTBs>WoPben| zpaP_x3nVf2uL?;hB++0b0T28z-Kukc2`K4M7r7zm|99bILczy>AABfVRdwlKA3hrLA$Vtw0cQ zp{;-U(TOCIZ6pCwpE-<>#P`Q3B%zSR&X5Frb|LfKQNA1g;Qv#;Ic|M3v~a3G5OLv~ zOI9gujazL6f`}_^{q9>Ql1Q$Xs!(i`ZO z$htLOBWorxjX{{1x}3;SB54FqT1H8EA}NN5r~|(8p5eiCD4-yCSrTb`go45xy-VNh0is zaE^#1iZDTh9uaP(G7wLl2-l0SR)lLrXozsN2&+Z-tq8vs;pZZ(65)p;Tq?pvBCHhQ zJQ2R_D-Z;7FuZxIS@E&aC>NmSTK0;GN$kVO9#3Q5E# zl7P>iE_`>JKoWNhR=zpvd^5BVyLuFoAh(?8@XfzXRoWVL+6n}rv^B%m5sK>6)_(tT zB8f^HNr2Sv1d`acTp@}0LK5)VZE{yoYPRytQRADTh1eggkc2M@ZaKm?KQ~!vYt(2f z5QNg!&QR3)wRLmQi6p9QBmq*N03`9+`wB_K2a`%JY+F zDc{^`z8PA$NFWI1n;YPp4;rtuwbis02tsMAFB$luD=xc25?9~mL=v?&k^rd(fh4-U zrI18yA_@3zwJQi_Aa(@}I!*cJ7Wd82!leR1DBrvrzIoZrN?Ti8TY(^yw!&xnaA`P_ zIO0YplJIm0e@_CWUJ4}f#VZO)#1@i(?^e5l>REZ-=S1b3Tg*2@3qKSHLiy%K_~yGu zD{XBtZ3Ti*+M40(2}SMR2yOjzloLrL*+>GU{s53f$@26G>34C+S-<7sDo3;W$C~YO5*&Fzw3AFX> zp-v=`Vj~HV`eQ&6n;un2B07--e79P8-i@`q6Ax6rxygMqwD42<4lb!8c!ezS7nv(^en|rLFLp8Mrh(l6bzq6G`OQNCKoj4M<}6B!wiR z14+PltCiIKoW-)DkRamNCLiFtvoluTHb)o+d}?eu`i#FfG3%b!AbD^?D|pSQ1}r% z2`Aj=iKJYfw2YF5ilo6jsgja%L{c`wR21@ylnj;vPH7^gFH6C{dW)1^2s2Ydl$0Wp zdh(==l+;}$`FPS=N=g<mUhOfm(Scr`=R* zdF_8wNMg5rGqlhU2tpx=!2l60gCuTCRY+pDwG|@-rLCl+L!qcGsI4EI>_ifUHj)6T z&jOMN+@O#|%OVN*Zng5<3~PCF4TU5c?3+Pl4!8D0zoKkrHNEh z)LdLz8c9qz-iaj2Y$O3vuKz@iqv<#Af?^Y|%FoR~=6?8+jLK3_5&CtSHfgqG` zZbjexW3oaLyVO=72&Jv?nImv%JtT3)QBEXLZX*eh`fMPH->y(dqIr=7e0R0*-3m!G zBa%4oYlS3s=$oO1>xC97-y8+L`SC6aN$gNtfgqH&X3$_ie3Hj)6T zUvf1eiRUg+NTPX=1bnwzd2YeAycM4)BoX18p@nqB!wg*v=sV?^Y|%WCkt0miNFCg(Skh8CtkiAPD7~ zqtG|+ov4sRSX+T0l(v%390&Xmh1z;q2PcxKvXKNxeIAg+LFXwX(KJW`zFVz4x8hn} z|M?0@u(vqz7N|lJ8NTsw%hBqa-w7#g4I>Gqtx>M6-fg6#k!Aqn_wwelQ= zYkAi^+h%+-bP(UTR7e7nh)LhP>ZdlNt(bvO+B#Vvh?vyY)YVQTkz^wYkot!}5;Z=B zBpQY!;Iq`OpeSB>?)Fri`(`ctwQPkXAc2_n%@3`Nb8WT1?XI*n=C$?b6;33PY$FMf zdKHkww5|$C>>Noz3)ISU46HnV@lc%lW@sSJ-B3t^uPm2|(OpaJ@ZV}z5cl1M%qpUMS5Qf5Jo#oVGu1l5 zOCbrag>mJZwU6UTTj`)WrL9~`9~B59uC#T~2TmlBW+MrZ`qw}bojNKc5k?Z)92)rn zQ{!|+g(PBZ4_kU59(*&@4rhTXB;k8P_~f|s&2PRJ584W6skD_nE8<#P_gUyf5;-=K z0I7cqB(bo)LJ~|7*p?uLBshYK$z4I4#>cF0CfHz|Dz1=(uUsIAxc1H0y%V$AN)r%D zTYb}ombM9Po&S~-N#xl`0;FCIByro8t)W1rH_$DS4aW1upnMF%%+%!sIY)`45j<%b zCFO~vT%J@(Nkc`_V1%hClp|8ISqeD$MM?(3O!i7pnn>!4Fnzv=^%h|-ma2G>r8s0v^i}Z`>GR3wy7LtGtC?pY=^Tor*#D;Gs z*szhb5D-`)2}qz#`sQzD#fG-hkWXnVv~-q05N%RhPyCM)Nfg>h0;FyLN&NUr+#?Ci zIVYiz1SAlbNaC;&(e0Zdc+96MBq4lqoA%99rboB7Vgf>GD+!@OX{%;_Kh23G%4{S7 zQeOik@%aDZ7D>Q!V|7Cz317LehPYmN{^ar~^vwhtLZpXSnNvtYXrc1WKF!R0A_}#Y zCLoly3N4+jw3R*{l%Oq6AZ>l*F(;BJw~+)$y%tE~qW{JblF-tf`y>>SXj?1Kfk9E^ zo1uKz=A)2Av2Tv@&9n`R+;So=!Z&YuFp9Jl6A(&UIoMa)nh~k310HZ9i3%G@fYjFm zN$kBm4v+-gHrooMkOa4eHo2B})&;HZo3&KzKE{S&g(Ql7^8|uWzPTRX{7OlyYpX|T zD_Lu$&{CzXodI-{aEZXZ?SoDvQE4Lykov~!Uo!NuK}h1rJ6c#< zJxW`doh}s!LTT%6XzLB*oJgYDMiLK&7q4zAAwrl(z1HwyyZ66G?dX_IN@$N&eD#K9G95s|iUwG&5?Dgy#Cjr9u(} zrPK`EZjADl9o;Ox8H$+AW+3q8R^^+OZ_c104&jFsTpEoe&izNTXe(wQl(xcVKNko> zA&Dl?)(5V1B8em$Nr2S%0+P6(yw#Bex}9wRQb2nGtR)J>3#DH7wx&W zVgf>Gt3VJ+Tbof^w+(b6i4+@2fYdtzNxV6wWswA2HQWEAkOWCWjq;ihH`gRK(l--q zz`_L%p;JhL1W~PgGp!JiX8N1aH(!<2NNuGF2&Jv0rK^RODs9bZer4Mst~F+bBovZp+8MZMp564#fDO5P0z&y_<(mmQ3NFv8Z5+L=1fFzE+yE%~rd^O+yW1T9l<|H5iwU*Zm z^Tn6eZ4LQ@#lCz32PES$6wvq$YiOfDQaFOc2IyiQND7s2R=znG&|xSpE$Ev+>b;vt zLTM|vScN27L0h~1)rlnXY$O3vKNLvfn_HS5N$~gO+`H8jl7J^rYkBb3&9w5|sdi^b z0^(Olf}y8cF{)c5LgkxV!8aGBGz3Y|!kfaq96=~;rQr`LYOCPhFHUkIiF_MLfYgrw zl9+OR(;*2sYqkN1E#xUAq1N(Rbd;LLmv?dVw4il7L4ZflKT8=04qb zh9s1>Ds3h890MI46$RQ_a-0)M6xv7vq<$2TMCM42B#udB^S_uGc1#Te4?CxZ#cm%= z4Lg?YDyfufyP850!e^_sycV1)^U10TntTRCt2VIZYCHsaS-CEX?qYhiZ<)B?>+C6Nk1vJfRdeh84D^vlCL3 z+mHgJejFghj3FFSoZKKtA>N&nwyr5ip&&&RK#FfZjw?tJKI68F01%xKDpWy3nW+Lb zl!qRH1Y>-gNd~9i70U!Uh%~^&S8g*#kJR=(ST|;aJhbt8@xj2v4Tw zk)vp4u5fYe0*mmex5)xUbVaDJg|A##+7lvtRD^MbEq>W6uCRqt+qR*$rzJSyMWqcd zKNMAvANA2xp40O=<4OTS#+D+WUhmaROMC4KhIL zDF7Lh`f`wwW`hif5AXFWkl|B%;kdsqWY!bqYuEE$k48To{+fJ>KomV0qR{Dz{m;r< zD{q~kEl%)hX7a{p)Zfh15UHtB-eTW80U_pyaJC2))F9;@{)ZE4RNGJkq}~fq_@oIJ+?ToF`N9SF7OA~hs^ys78gC5%-R^px;NTh-T18!J+Exo(JLTqx zzbA?YD6|nnXk*}ut?#WZ1#)Y!rPpo^w)EPq!IrYRG+50+`^trHkL!tzm)Eww3bV7v zl>ROi`nE`fl_FG_qcgVMCE?N$mqc6yU|#o&6LZwsm;z$kMqxkE?0^0LlG*Shc5eYNyeosE?schiOzpDy`_D&rQ0s>tdNJ&;ypPd z@5h$bV)k7wrNZoMILZkLBRw z@}>kIa|P7M5l|x=q2;3${-C+aZw0>iT7(LJkajoKS-zJ((Y&79Qg4?gTk5U+xANaj zrO2;-+q{a*K47G@Sh?e7J#=r)H%=6iWTOy}`Z+)$&mPWE$cRRxkaTObH&kE__N`CL zQ!5~12%xcAgw-NcKm@ot1D7;h`r^`5{`=zxo6vuUHQc4lmWC@YuDp1&dhz2wZ$e$p zWJ@Yak(EfG$u=ATsiy;u9C{#!BiA(yj-*>oI8R^?_KmNwzgCEZjRHdmoNVZm9>Cq+1ivqXY;UfiUc~6*Qq$m#xA_tM_jU06C)T z!@JY&X^<}u>$zK_EeNjAi2~cu?Pxfc;*WP5q|x=9#};Qdu~ z=>9zXopU3VIx}?zb(_*?_26L-nqptE2n$&l-47n~g*Wi1;Ln@jl1WpU_b)lGt~4hU zyreF;*!u=g3f7rVZw@)Wrjlc0G?4lLV6-zgZ3zV`y@AaNqp3HZ$t%Xwmo{M~(Da?6 zvpyR`5;|KLfzA%5GEIZd?)amz=~_#2IHFiy%4!<`Ib zkH1kAf1zCbg%VM>nfr1iKn%YJt1zO%h_Q$fC(ddxM(pash`X( zuDwNKFZO@yL69O+d$LsP(<0qPs*j~wpB70Lsa;vB^=XkVBDFJ1ok!P*r;b%LQ50oU zcUB8LB2g_c($dQ~Ojy^yzzBQ>Eu#W?D3yzga}SggxKUQNCg#?N_M>d`Y}7`rcrc(Qk!DLtF-M@2ZP)N>T7xOM_wuC|)L-J)V{>0-?IQB$iPcUmVH-{L~WPkmb z*Io?ZAXeaB{*6vr0${D-P&WJ}@G-;?4{G*!4xcqLLZs#)41X{ySELR_Xc-TCOcMk4 zfVQ4$>?uu&uIDqw(*y_hXr_2?5ob?jio2f26n8y|DV{9Kvu7~HyNEb@`cm9w$rN`z zaw+Z+<=gbr)=$G3@hGkTv{sCn=!qEx8zGGT-){+t(U&zA<0CU`pk@!;tbrW24YQW) z$~*#q)jbj7v1jyw)S&5oQNLg|qNrT3(w5Y!$i z9a#z%ETH&ENf03vA8{x?LhNHhxL$RTemo!}Z;?f(JUbv*- z(i4~NxcG2M#-%GRU2y4)OZ{K`+V)h$^a6Fcwf=-7j*-^QHJ4DPBFmUB3H3cRXK;&ynJu3*F`YQoKxxe~q|9{`JcD#=4Bs^FkTH z^g44m$tQ!}9Lg;9Q^G*%*Tv>blFYVA@r*2YnKvGYh2ADbUgnp1tA zAL)*7mf~6ebmu=N#jhFe&YvsA_Zi{Nzf6ihFU2=Y@vN)e|9?!1o4M}%KEvGcpcMZ` ziubs}UH&#HzD$ZAcBQ-gHBx-86yGP$UH&pD{=5|5EXA{~a{vD^DQ-&U(nm7ypcMZ` ziuaJr`!*@QOo|^Sxsz+8_*^NzkK~>%lj6@y@y${^Yp`_xQrwi{eTKNp2c`HoQoP3{ z?((-u@nur{uuI+LuaV+&rT9KW-Q_Qn;?GO*%~Cw;GWY)6fNo zl0GDT@Q^|N;1>UcHQhVVHr|rGLuD28I4i2tyu~MUWq8E3_l55pa&3R%`-Upn4itXQ zF5frg+5^LOAh~wI@J&gsjWB#ONV(v|_QLSJM6T^Hd@qq}M@%N$Cgj=_!}k&uGG15> zqY~krF|_9-yf=onFSYpY7{1DoS-i{}*z0iG_EbzSoen$9<3YlET_{}c?dI_Y&LlFE z=)i(QL9Flwh7wUYkMBnE27Wn&#n_%CZ(ux+v99q3_UAFSKgk;?KbV!QgfzT?Q+bT- zRq_TFb!K_2x4eN%c#Q2^@&=59SRU&)Z{T(wV|$pqfsQ=JI?x+<>OfYK?Pu}^Qh2PK z*Z1xLERXf4H!zsTSeJSOKP9m|w$I5M7{_C*Z@qzid5rCO@&=ypvXZQmy@8W?jH$9W zP`N+LE9CWEjM#YUb8q11PK+E!*XQgex%!pWgT`Zzh5$hq|5FjbsG`r7dCw)Y|p1=wu6L~%-yArvI_UO~! zx)52w$<9O`z{w;cUuwq+bR_ZuA~TCaq+jF+GK)8Q13^Zt^#-tCHM4lNH?V{xomRYd z?6t)!#vbCIun5lM@?q(@>BG{mNWXHSw_6(dlBsOtp1<^V!#^Q}?|>A1p`(ZVr5Dn- zKQ?-c-#tR}6uplRe;g24e)k;g@AXm*LE4RD44X?kBZ;V)=IvI<{zd$-ThPJJTYP6I z6ms*t<6s9*@046B;Nsgs@HPKNIaWJUWWLD}eE;d@8`>`MeQ^$NulXb8SbWoDzVj*5 z-QE;8-=}20LoB|<4!+o=>5{`05quw{?UP~IdZ(N%^WFBQXz#HOzIig=ZQJDbp6KTL zEfsLdcZS9HUCOcKkT3InB7$$Wo9`Vm-vJiitHOLIvmM|5(%UTk@)q}@%yj0;{H3=h z4WPIAi`#?oGAP;pfo0w)hq@Uj8SCF*f=DvAZAF9GcWla7d+)OOeo1-hbD@UWrTvNT zGH>xa2N7TTYE8O#K?*)w^BNU#NTRdxIA`41q^&ujk!5&!rd;NGb0pts5??}IPQG1? zew=R?^RM6=ex8GWh0H%OlK)8({~u{1v7_BxjUQfT0_kdgKsj#yl`{V)vAf?bmw^Y` za!C)?W>Ozaxy4;avT--BBiYPF9pUc>RmuEMjpYB3gFoc%b@TQa$8z32bHkr<`>SRC zOQ?v{{%a4g+YkQJsfa^9-HnB_nS8pN_eJopmHFpJ^4})$@8jm*(-_YA_cXgj@b{2w z_Ln;J@;BN5F17y^iT}sgBW`=v6r(-opJL9Y9C!aF$^7q)i(f`5+8|G%3e+JCyl|4l05=-&+ESk6Dge3Ek9 z^2w9=-w?^akHkOQ&EIb#KVRmb5Xt{Zdc-^Z=J)uZgsq?1#&FI*+gw69 z?)DeT{2!wtQvY5g@xR5*KgVd#`RACq5&X+!{wGKB?;!Et&&_|Z@k|Ai&tUU6dR5BZ z{&JcBLMkG)|F%wU`IO^DMq55ZjeeZ}Q1jjh{uMI+p^^Nr+uzOqbT|K8stO#=Ied zzlQ+3%m1fG^8bzAl5yJCQEvYEMtjab-%N<$pCt4Dl3w(a+CM|${~F!}wDq&Vc;-bW zp91qS%5lplS>``FlK*8Af4`gmIHMouKh8Wkf`5w4-xJBdlf?hK-(2k;7B>(UBb@T7; z=8w_7k;nOiHWMBE3uXS_t&3>?0}}tYsEDKem|HMBoIhyu-;{63zf9(TLnQx9iGQ}6 zKV~wF^8YaTfHr$N_?OH4wMhQYOY&d&tE>H(H!;#Uf6%5*`BwWYWd09QrqsVLO8oQP z{4q;oR6oz!58BLe@UN8l9~a60Dv5tPH~(_*FXa3|oBvyDx4%l}|0ZQh?LS!JKb49& z`gc0`Cv*Ow%>oDiYMFmlB>&*vZv8yo&3`8NSI%Ve0d4N(;9o2AU$G{l{ddy4i%$PM zhl)7bKMVZxIDgRQqm*y;uO~tB|JOzGPnGze@8(|t{vOUBw0VMqf0E2UR1?wuA0_#G zOGO;*$IPKo{v4AJXmcLrTkTJl`9BcJfAd~$`CRYjkHNi>#`%Lb2Ritt$o!9uz!Og^B^hbiCc-+Y<>=t%xY zO6~W%`F{xhd7M9Jv%7aUdRKPIyN&62)_ zezNPQ>esO9>u*LMY6i^;vmzAM*P2&|n`3@SZqI#`Ey-i9)SiDj+cVi$OYPZ3vz~sM zn#D`*qILTbZ)-gc^LN#9`@a7%6w0RQ@@)Fn1$vjamCZkHAU({cYLG1SB^C2kFVSD@ z{^PH})4v1+aTd}#W{4JSm$fu7w`GfqFMd}I;Id} z^Osotl1xn!{Q^?oiVvD)mh*nOCZ76*f4n8U-Wye2)8T()pW!}9vHJw1o;ZT~#_7K_mC z4eF98_)-XWSp3UOTxFP+Fq36I)cky%EiB!cB|0swko=c7x8Q6cnF@xS`a7QmB6a_V3CAX@lmWwp=u1Pazr~vBw-$e zKyD?Kst`%D5Hi?1Q>091Dd1EtQl4Nb_?Jta`Ib1BM)NIkE}z1;#1%4Dc=lpHT-f2W z&2Zx5P;4_?Gon;{_Ms~-U2y4)i}*YgZD}jGSqx?I(KbH%;d_8E@?1}i$M>#lS;#-$ zMNxyI?6cQX*|^teKa~$gS#dFL!7yeGm7^$%(=e6r) zk#Z_H%-p{f^uo+8qZCUbKj&~(n{9kWI6NS zlu5fUnH%6mlH?+{@*+z~S3JCkM=mm$7g=N%;j_jL`K9tAm39$6aqTFwKQF?Z4X=pL zojZ!ul(FVAC&Y{J>3c_!rMw99PrOJ)duX|%$P8YD`7K_gTrP4CFTz|JFH$BKxsn%| zY2Q(yT%<2AGTkncFBdtC7b&-kl=Q#`*wap6?g=9y$Lgo}VG|YYF+e%yj!?cK>N2zgo^;$@BY){3$HkJioKZPm%NQ;`vD;KUvPdg6DS>`AKsAIh2oMb*jjQ zjT_0H?eP|5A*Ss>>c<1{-%s+uT*NZk8cqNae{(?8mYq(O0V>6rTcnWrJ_?zGqmX$q z3JY0#qvtDSnz=8w5fP|?B&mVyAvP4G=Yo`Uo$_%`&CMlcT5R?J;k5OQ#9)E56%2kIf>mH-N7~VY`By7bhUC4F!|j(sHWla zy^;3I*-oO;b`l`<4H$iNy^TAG4a!OEu9MKrFO`32uz!HortGGFcm=!H6o_cJf7ng= zUbM>TAF6Es08;M-5V5s@`-fWPA9lk(Xyyv#8XDpnps>9f;~F0RR=I|TLWjo4_pd9Q zuA$m?4IuU2a1Gz*bJtL#TtmZLgJxDMudoZR0A20fXs=NCwekuL@CuEVZ}L}8uTX1y z1(14Qc!dwfaIf%_@(R233Yz(&atJ$i2vF0$d*%>s_*^-JojZg*ldtzPr$fO0F0rQv zq}~Y*;jK~JA$+eK!pHj@&!Be1x+B|_MbR?0rrAguS>%h zWWX1^G=lqrZT?54CEu;@JKX@bj9YK#!wvL@ z8+a~{yMeEi8;EoRnz>$i0EY*FUizEV1N?od@&J+tXj1w9x!CCe@KTBJ03h`~H<1UJ zL0?G5M*ro?1GqeZW^Pu-&y61{nceipKWvdQe%tt)UcTGjbsB$~ZTukhA$a`H9LkOV zBW3)S@oVOGW%q-jjXBL^_g7acyJvRaO!Dn8-)Z+bw%vo&pT$GJVlcP+rONIxo;BO! z42-tBy#M9`*0!aFbuy)=geBacE83w00Q! z&}O&x;yG2gm!&SJm&^Gp=dO2^ z=-nmPE9ew=y?;(|*N3JkULoF3XP;!D_)HO>F2ZsVvd^SYzU%u^6fYC`&HDPjW_D_e zh7R-2Z5cy6P(C4;IL)Xj$+n9|*^YU8I#^0=H zgEroR^1bwBr;V4{HV#t15jNf~liT?0HfQ6Sd1%`)Zz$b}mNxINXSFT!ZfW_Bd%9}Z_Vu51}t0SAHQuC%icb-%~*D;$oHw|oR(c-TQ*4jHduDn z+1#@K(?%>?GmnmMqlTi5X-%W=~y~SK3AmQoj>MUC@Uc^^Ev8YRx=8 zPVHIaU#M?&d%kR1T-$T2%XjntIqkX1wr7y~1laTR)44sD$F)6c=85rV%22O@Xffsc zpNvmaju!cz{Djk#t8G&TsRv-n-=uO=emq`HSu<1O$BH#^WK2|9@zTfQ&WfW-zM~#> zT5+vy#US+{toWdlxfMSghgPhar^kf>L#M_^r2+5#aNHPhRLb|csZImNX)@M(=0xhH zFyM<%;0F9ad>OE2o*BEgOS-g{Hr^D{#+&H1-3$H|54Ib<@~tUz+Aa=@vfc}a?LG$E zefW58yOZO_b~W?d*fU#=Y!zqO#Dv*Sy+3BnHYViTtJG<>I0nvoj~izDB+PczG2Cn? z#)H{vW=4!yEUC{%vQ(Tt6;l@bzx!g&Vq;3a_XM35i?bcA_pV{F(_pbDb>kL$PmEiv zW@bgXu|jjO(L7d-_4J9cVXUz#-!B4AV@_6cRd@zil-pKI@q zLi>y(`Ig@0w9h=-K0)fUV4uA^bNjq5cI;C#FK>Oj)KV+S9`P1s9NOiO@lj-#aVXyn zw>#}J-?mGT`fS)`c@nqFtE1m8HFJ3D*(0ZHHRwa<>Eo^^nOuobNo%UC5+aE}M9_%l1FK&MWqR0L; z^N!}VJ1un?*&Dv7(?;zs^ZFLDyEZD{AICWDuEMrEkoqFnU0FMBcbTnkcbZw$Jobj( z$M>t+yuE#KZL`{2o0sp{Yn=90Y1aQsXK$KW(u8(K)7qG^#CPJ9 zonb?0N6ozMpUq-tO1?tAoklwCtje}Ckot$PvpHM1ot@tDcBYvRHi3PivuDGolzpMs zJL8gM_5X;bvo9szE)nv5@gGk6s!g;mFU@?sv35nBjG-1jZmR5x z45=%+JhI&9VxLqCB{C1_8&+M)}p>yZ)hmx`< zpAS})jLQz}>FQyPv?t}SAk|&Uw?nSeo;(TR&DS9HuVGIWzj1pyvia;uGhb+s9Z{!Z zRjX1wgp?go7k6(^KOgz`-Lxa+r!ss!A=-w?_no0mJ4&+c2&Dck>}b@l+>Q=zdOOn0 z*LG?@=*&g@p`+}l7kV`Xm)+>!?=ESG{V4xLQf-uc?;PT^pJdy9KemXUs z{b=Ufk#<9!xPt5j$2=&z@%4qF^v0!8{W@dN&g@3XcTeS;d9l-OQf#{csjr6J)c(xv zCUMX0Ml%<-1$%j0Bikp99|g5<@vn^EloMex$|d3CIqHlwT=vi<9eAPBWYTPt0jV1> znRixmli92BCZm~4`*aibqUju`g{5?0A zgxxn7&3r$O3?+S@FphCBjsh*JY^BTjacV13CFNKBPIJk#%>|@h3v(H^lABArhMS9K zei*}MlFoa``Aw~;wv=DbiyupgYC#7woyL-H8w*H%J&Yw~1veJYu8l=AKaLe6N!Qtf zLi!#~tl7!pez9vOu_o)k|IKMCg|?}H)azg>9lqwKvYoyUyMvQVHM1%zO(cE3um{)I zE#kvU%F|-RO5#J@spmQkrOY-Ika`G)^6lr`P(reyq_d%x`AHPm$Q)r1t~c4^*-UOb zI~vU-o+Z9_U#F#%+m-@S-v@8kzWQl>LzVQmpq#CMwphKiI#VuIXV{CaZO&3IJhSyJ zrOgTbzrCHtQehhlNWCMBCGasfmJW`g3b&LGn)!h;S3E3Sufi!~!K(zvoYB(8qT~*_ z|L1h4y;R!v0#ZK*_A=xHZZG?U?S<)a(=MH)Tb|1Gf{ikm9qzgO?X>1K7$y20ivE^U zoi;Cd$UQ5DtYLUDXbLLT#kho$c60c%#- zJ&R_ozDyGBDrWbfvec=*H7tC>XCS$lwZKS!_s>v9 ziTGy;|0hN9&l2%Z3fVtP_&=#oHRYOjSb>DE@=%$@I?xX&c9rvkw%Z~fc%}wRFC(UcD8QN+BdFzH>q9@z+5&ieq5SrBPVqLp7(xwoC37jPw^+%(>sHn+jt1$sm`C@ z#q25UFCAx45_^PC<&W@zbD;_1Z}hNcf1_tO`x~*x!<(Y`3*}ZL;B}jeeM%FkOIv#r z=()$LZis?zm~(VwH`MbojdF_ASIy)U&0fjW2Q;vOmufhkdb$q(vWCM+Hl6~huOCi$ z>iO6I#Ni`&=3x-R9(n8(k8FpPol4BGGD z9taP2mEDtpaPQX|i>Fp?i1Zubo^+{KxYsLLpNUT?G>?W^%LZ-*vsB5gV3sPm70jA; zDP)ah3KqrN!yR~vA@%UA$Zq4Q?JqYLPjx44G^ed^j0-zuTPVbphARnI3O*&rrr_9= zn+4lh=Vk=!zcm|5a_lGIBA;?2SXoW|DWnzNF~$6$=4)nrO zlG#j2#Ao2F!Ne?)I8%hvMOZFEw*7%Pxpb7`F72eaOD`#2$o>zFBo`x`9Z|x~5j9E! zt`?rF{#W1tq^YEEbVSwf;3%UpZ;l#sU;Hy9V73LiIRwuTh#Zq{wR9gDVZ_dR(>#qd z!JM@v!l%%dNbAL34BOB*lw`dSk0d;=uyK+|^bL~GEtG_(T7^hLr+C62o<$*aizocS zb)=wUJmG^#kb>tEF|rQuLJ}TMlw_TXiKJqlWF0?^$G~_hvYNtih!l9}Xlm*x&|^Gw zKh#yAN8pl&OD--$aT$zD4ldca_;Ja=B@LIpxb()Q7cMEd^u(n*E3PH> zy)O8h`8%uHW}6XQY@V?uvN?DB?yer?mauZ}{|>4r?MiB?e0wi!jZE8APq}_12Km2J z>PcHsPugGBMgI5ZdeY|CleXW+$p2ni8=3Y@J!$LeNqf7VIwt-W$?vmz(z-F(yL)zY zUF3h?tfyT2KO)OrSWnvH^`!k=PugjuQF4FWT~FEt^~mqg4UzvHUQgP~^`vd7=YIRw zQ^$k#q^+ta?S(CoZMk(*WZJ@d(!BMw<%rFZ|9!5WayS1OS?=6={=21~_I*`PxuW{` z)$`x8$lk2^7aHnf#)O8pYDkX9KqH3a_*-XOl5pwhG5aLCUH<8-mAoOECK{qk^482{ zw1+G!_*=;>bzhLwGwz-9DrHt=e8{`je_ZO{6@t5rFFCFhoX1i4= z)GxwTm4Q$ENvkh|eaW<`cWR}-^maom0*u|uU$iLY@`XA~#b0_M?Pl9paCXuA*v581 zVENtO`%4Ra-GbEn##@imbQuvfANhj|{X`|RJWSFV*Z-UN2Ui)-K1F40Oi=SqnYSC8 zaPp*IN)1fEBz;Kw;33r3E&d5>x+Gw2otit3t@()kHC5CQeJj?39-|7e3HgA7J>lss zvTDpcl2v0?jZJS+h{;Dv!mJvrjlx2nR7t%v9&#Or`83RK(Ip=$nCxPI7t>wVc97*A~K6Z-oW!oAXaz-X+#vx!eV zBY2ES%p2IaKg(ls^9CmI7!#d0a5#@K0eSR%y+6EIjnv*$1CUP>H$Qg;O zfS<^}aWaF*RkVqR{+34Mcuw{u@-R;JCi0EFSb<(d4&r1Ak+rmJMt|!`WGN@R6L|tB zeMBxH4W$CfMCNj`E0LSqv(zp`KFrC^M4raUBqFP54UGQQk;v;fnMmZmL}nImr2e9v zpqa&My#YTXR(k_Kld`5E;$bcabA*F$vds6K2)7|Z!4ncq^5)!sar?`+C+%b}~AFFU-&=G)mglJo6s-sa$&FY~=9g74>-yV{#V z1sv_|V!St%$)SsRh=XsT%=cGX3Uar1vYYQmSSzyI+ts*^^X+QBMmd%o%4EJJ5quZf ze1o3`mU*X)a&t~L4&t1X&4H9N@?`7z3%e_q`6oy4pZa%~Jm?@SXS;pI>kl${_{<+E z$7*+l%=aD2l;q*&OK`-=x4SWn^X+clu&Ft*pF%VUyAYKznC0S%z2b!$)Q^2J2isuk#_&l1A5BMZoa*YA)Ie7 z^D+nDTA6QZ1m7>*?M-s??QLv(fVH=`xsmqaSnc&-uZE2Uy~Q6>rdtlBZoV&K7mqE6 zzQzpBx3Br2gKv_|cXR~bOgG>2-F(xG0i17|nd0D^Eb~o_;JeMO4?k~mwKv1qP{!nt zVSYq8mK;)KzB4G(Er-|Le2d+D{l=4=uiw1Z!8c9j`?mw5h?}-s9YSb?m{h`z^;m>erU~7lU1VtABU3cbsu2=R3|^OgUD+;d^r~|N9hWy5&&n=6k1`?|9=l&Ud^y+`%_V z=6hBI-%K~(!<~GKeT4-4jrU7P6r48y{Ee`Lct38cFIndQ5oNpEy|3BRPF=jW;=lnsNe{=EAlldPU!GFU=F8Qxt=W0K8 z3K_oyS^GhopHsfw{(PDLbCm7w-x+TH_qzE%3jX(T{-Di~F8+lw|8pYv4{`H9(!n2l z>dJ{J?T=&i97FZs-3p|UzOwq({_4D+GP%C@DBFEM8**Ionob3*{+8=|by8$~1&;bA z`^s5;w^?&+-r{V^PM<^VBXhqsX#h=X6`zC(mtmT1f57+?92L_3znN52uJ=r;mq0wr zl5Tg+S~!(LRsqcoRR;w9uDp=yr?*wpy$e$Cy6QA4V%;(A zMw~@uchHVkCsI3ji5)a&2zXIDD&=;ZhIYKg+i@YaW4X8Z0J|NjXh)Kx9e7Q)0u9+| zdyb*@V8DHk~ysfOASNKVIbiYUzayu36 zy_Ei9$qg?8&8GZ@wfow8(QfgN2DQJY#@T*rFMT!DDCSN<>O(N$JB*lP?sNmC&}=A- z9AO#4Xq`K?HoNcH^r<=T7qa~_`(1-tx@93Bkh%w-=Q}&V<+F`aqFFwC?{0W6WfO_$ zG1K8MEIsnjC{xG@q@Dmd9bC-iv^o0Z6n=F=Ov5*isIE8Q%Pbis*)jsDCqhQQ(VPWr zZEIA>h}ICqA_Y-GG(_#*X54xgCitFnE_Nntrj2Zs!|eaFQ%uRWm_X_ejWQC_ z>U5q9X`Kkgu}8Rx#-O_iUXUow16(SVX3G$yei@!}w^CVH-Z$~7QkwauOOJAF8GzIe zhaTO07ni}Iv`9uzcIQW#=_^jy``~)`Qye1}s2oN{2pJ%vu#m;W>!qY01yJgIT*O)_ zQDUK#s9a<;`Fj9h%GX3SleVR>{Tu*YbT6*kORc1ZTUw!|by-@COh}V_1DVL$l#}mK6+g)WZiWRz39re#XBe<6j@j5A&@o=;z?e z2Vr7~(=~u#{N~*zk75L$;$;P=JJ^)5F@j*jWy}6Q9{=ZY>yOI|{^Iy!q2rJ2ALrvA zT-L>v1&5(;^W`$fQyE&*=ec=uZX(Ow$a8b#++W7wziWAJnw#2D3=zX zd2X_tTSmF0m8{80a^}sHX>B^-MLcqm9A1PCK6nv6qsFDmgmV%v!dw$C!YA__MfT-I znAhS(_&lPc$j`U3wlIgri|{E-N0CLmNFiywhZm_}vwMyr(@+Fk9(aDaoIio*j}!T2 za{g63zd+;{%K7O$KVRhM%lSw1{4pXwPtMnP{wR^3Bj`(_wN(=X>$Goo}Vo8Q{?<{WT0n_{qt8C#>73@azB}n~P^ySsm z_vp(<;-oJ%^OU&2z?#{M?!z2|eMaFPEVO$Nq`nQiKA*Xf_h4!4_n>C>iS^FYOzd?t z?{M{7ncZ(7^^;+FH8=2nD~joU)69M`++~{SM{nKd>aB9Sw?OKt=&iG_=e>1XtoD{> z4v5W;(#(s|M~}JssKV|ekopF;|9uSaqZ?wdk2LernCl+R%tg=4boET7-7_HdUa+3f zwY+Dpj;)^2%&TIlQ#5lV`r}Pke^lB10aEXT{FNPMM{tqtQ9?>RU&3rPt1gn`(L#79~ zWQw_SAybh0WsvFjd0eL5qDZEi`CQb9Q!{5llF2SfrrDANsSm^Y{v%g%Ngf;>lGMys zqCtq7`3B_2CI-XSony-nq&{;P$?wuDxcv5Ob@^%L+pR1*&8&pfFr8)l#5`MSAoWqO z-=l|dscEe#HO<7Et*tbFubJ;dR&0hPtYP`KtU&6|;_1BMaxSY)vRe4#mRQ8T+V<=tuKk+`dmU3XP$-xWxG8ai$-aaT_@@m*==aZPbU znt1|lgt_>z24Xv!HG4y(J{vc3_8{Ip4>aA4Xy&PVau1q$2HH+vQ*%5ku-nd>5kcE8 z!IN{s#k}p<=C2z0{((E>Y)axLz z@*F0y;SFz-X8yBbZQ*Zkm}AhAbXQAq?3RGkuZDCE;Vl`u>y~KdjSXl4e}%-n1=SC9 zRi9^94^j_75RY8Q1abb3tJlo&yQ-GIl2KD^Ug@eZ->wj(J_`4HJg@Lvxk7&IL(P3V zes=Ps8*2V#=DTVsv}*yW?}b__2eRAhe;((b z>fq0grl@(me&#&$shVQjR?2O@AoUx-H<9x_Da@ChdQtOCeO!6gjG9uLXNAoZq<%Aa z&K|&I(S!5khiTM27r{|vJYVym&9Bnt2U6b${6-Kz;zbT8nV-*5^Mae1NPUTf5%ybE zHYbq!5#V$u{p*Q9N;2Vy9)SpzPr=fHj4Km=21z!7s20;;KyoEw1Sc; z7wR##%em0e*P#2Pcx)tgltjC%{p&s=&R-snnyJJG3tbPukPsN-F zr84&sb|%b;P%3jD;q$2qNlRg^bkdk*uHx_=%ae!`cq~sM4jQux=i$$}wqqHJ_+TyU zNW@t@VMiiP zz*v@v?h$|6omZpGQSaN`!@I>yq#moOF*oA#Yov+gB==pIdl}O+>rG-$LKuvK)X%|F z57Z*{4J&>JH&8h!T#1DB&ZB65fF*;TMP!9)T#~3y2b403KY} zv~UEJ=kx(^*_7n;0~8hZZ|s*Aetpt}{+5dM)+=}Q=JV7&W~t)|8xOA% z(>JFU+D;@c?ua@&*<-GJ*S;-MRQB>Ze~%qF2q+j2Lri=LrGoI@zd8NfUX|%_ewI) zZWs%>pNP~Qc=s-TdL11u4%Z?oQ8N#~owGHQ{eTVQ{PtlNNw{>xg>L`A`EBl|J?4=* z^*J_?nb*@ddhPEso2kGXZAJw+s5iauxDOQhWiAPZ4zh6`B4J)Q%^e>;gW@;Ul@1IA z&#w#qZnl5coxkE4cl_At?)YfL9seHAx)S8TvOXvu!^Vtzt8Nn~jA85WQqa?j9y)-{W$A4r57nn<4Mw0uuq+V3ad1LKf za>p;0;!jKQcEr>9|Ns8S9Y5v;cl=r@{;CvjH_KiAVk!Q#6#rd{|5p;tF;d50E5%=x z;(to9F?@RFmpSQp7$If%1V^Vf_ zq{|(D6-T-_z92jH2+VvJbiz?ACI1eEg6|gnuHk@}VAYO~c=^y@Y8~$wAl5 zi9F(^q!&NpWnphBV_QqjJA8iEJmLV&Q)c@!f1m9*=B1#6(T+0w!LKi0XlHu6(Wh171d9xslZ%XxlJcea#A-rD{u3vDjo_`*-@WO=V|#AuSSZV$~2t-9P_Qdmwc2~`Jc{nu0)XmERWhw}aGDu0l_XtAF< zz_|G|^qVApYJbt1M3Q-8aAWGSw~~WdbVGe>^|ae*7V0YWG^tSs(wxMF#yu3J?^b(g=`S-w90n!Efl&hqu~{}gv%x94|?jw~Cbm(w;293)h1>iR$X>+jy74n9W`AG><84|YaU>3rORkT+`vMa6eshxkihMkbZ}g-cQDaQI^#_KFXLS*Mz=Tg@?j1gDr5YM z)+FPws3c<`p$~uQ9e%iiB%>UHBtJlM9cO(+mK_w8eECB56P=Gky=228lHg5A>F!h}JXGl!3tkV4tkP82b`w6bf z4*qKNJB2c77SN;Lbp;e=2{q36nB}iCzGTh%Rq&a^|7Djpo<#~-0aS_|xkJth6R)IK zB`0T>j3gMV=0LOVFhv1$I*l{BCm9}m8qeBYw5I<0bFBK) zQT#Y({eHnU1yxmu`cD&yM>y+0N+j+j>OVPLf9GA*pJvsc$?l&9R`&ff!PET{H{G!A zUnD+`#PI!##Cs``-9PoNxc`&tzyH@P`Ty0b|5kSY&ieg=YYM7*hq2>1WY+SMR}d9l~0(&bXec8;M`|yq+DkfAtBh{l=`%SPhq(pHV{D$g=cH z#o>B%AGn3y{*sB9I`Nl0f*D|XJat-jLwkhBA~l;@fDG!GeIs0wFg~6 zbY>t#7QT3345U_0>^FoJcyvd}O-! zlmwr5;xh0qT9}xHUMt$trQpP!Rp>4H3;As$nJgCmaX_DK-r{u;jm#=~Ps=VDL7z8W zL7tJ};GNvVE8%;9wz=dqkLf{ua$@)Jd%E`kk`{XbK;Y{g*WlbSB-D!AEI&*1v% zv1NsN5`5+tbTa}s7cJ`TIGv6X`SUV$qdA!u3dg%poRa%c-KiUEo|N=oJkYl=12oot zN_`PwdiC3#ZFH9}44*$aggw>$!3{dFfIvTq#zQt=rxi1suBL+cIjk5qyBvQZl^{Ij zFM0cG6d+?}&ZYlfxN&-`khsoxgcMDj&uKnRe{+nFGD@bPPuXHndY|9!9+6$bM=~W- zswq9Y#{&O?&FuiPj!Zu*rGVzLYxad+rJvQStl-q5N-g-Vzt8(O)mmnL;zVW&H2Tq& zrfUl_`h4ttveE(gSVe!>@^FmLa6cFzlsWy6U_3jXzxAUh*P#4!(?X=h`ewS+w5>EzZ)mXZ87R0BvDHOxSm6zXX5qzjXUW|MU8LEcP$>rJaAl zukHMs{!2qJt>}O4{e8al2Y>T>&->C}w0$q{#C_mAi#BV)6K^?-!gj&Y3I5W4iMO0g zk@msSi4^I0%h41`2#)SZk)&HXQ=~(1G~wxfoo}H7Q~PxZj_&O5^IO4hh7^>&Y>X^yV+1I^U(qfCWh-y?3YAX7#DM^;dtNP5#n^ zIRz*9OLG!}-Lv|9QP7RZ#Nem|&<6!aCD!cE?K+)q8r@HtFLfHXXX{=2TJ%ju`e)li z6Sn!nv44gJXxj%+KO;R$C?Pr%%3~f&Ziu@6uhf3g^6Wkvz4t<_C4f~`7+7}KQ$jF^eOxg4&D8Otk~}_(hJd=vBTI5#5O!)lS5^Y0VCPC z+Bnijo(u;DJ7$->0TjY^w11;8#J$e={6iv3GU4t*Ws}J2NJ0E?jWqO27I2i-^?n}3 zMhK!rvq*pKr zJLXUNKnT|SN#T5YhLM*1W${E18iD9S3h|uljIn7+Av!x$Z9U)ra6D`38y~(U6dxP_{)@1JU6_b-%V|8V{5j}-UM z$31>N3L;CgM+g2si*G%araOO!G9M}i9t`xFBdId}yi2WIm}3kgs|}y4#KuvApWsHj z%=Z@a#lpQN`%BIQTfdX7;pO*0!;AK?o#0P2qDt^lv>(mE7LFoAqJ#_|CZhXcZjq+m zLRDmnG~bpQs#(hP*>yj=S^pF+t{v2$*A(^hW8LwD$q^#x>k>gn)`a)?qk^6sKWCSe z=TpVTX(lFTF=Lq?`kd}L2as@K>e`ym?ZGe`C+%GRyQ+UO=>>2)dsK<~$D#h$jE2=u z^BZC;y(68Xe6CYRxbFNw)LgWvJ74D@9RIs>qGqw>7t<`em7D~bs$$wV= zq=IZV*GuwJ{{vMnB3qtL(f^`>^COnH)CX^f)#ESw0OMMLd7VMWD{2!oZCy1=%g2W3; zGmcN74LklGW*9SOm-=kX_$&RvSVdwZ%;+yUYk;;0=G(y-e;DB6hV0;J*}>t7*#y4L zqo|SL@oZLbefm4Vfuh;$bvXZgDuUm+G`#XoOeTu%FT1oSZrdu!kn$mvH6U0`bJ-lV zu@@Je{lj`?$=>-l&{NPkf3>;`x}D~)URdB7Plo$b%wic^NCFWvSkJyo;_p*KBWcEX zSL5e`uGu9s7>X`=v6}86wQ@j@AIJLq!6L-a{RC~^1y5^!JpBsM@6?UPIBEjJrAuhq zoBGeVm6XsLGcze4LU%)bd2)8}HHLbFY`(1KDKR~^=}_G4I^#lOgwbi_{8)s17O}sq zGA37|RV1g^D1qk3hP<^eHCbOeCdO4Dzo!aUlZ{x9YZ z7FtUP#{Kx;eqeaR^?)g>n7-Hx2S~XVWxAjY2e_+@p_BrgR+47;OJ=pNr98IE(UtsA z;hnu{KuLY-@xGDS&#Tvh#YADwQ^3lL;=zUbXLJj&xqWxQ4QnKv+Y~pqK7w01xY21b zjGN^-=0UIOXQa7k8yP5E4x`&9pPhP2)iEbj3WcP6LVik+AhJ+| zX}}3~@}=#O0${(?f0CI$p$!z zK-Yv^Vt{8#KWSFipz_)(T)4;9R&^qZlkUGXzmTa|eI4?&3*V0%S$5*lkweN8EybJM zc;CWy*y>QSXzZSSPwdz}+JbsyJFjD|jgay83XuXY?)+Qww62?uig_}%rmd$)jJtMO zK(51Ci)2Fs6ZB|cHuyXp>bADKx|f~IahHQyZ#5Ecg4-r@2TJ@f=B32xUx>s#e*u2q zTKe($eGuMnK>8D0>0g9w>L8px@La!ckQ^!h0^xbm&oV$opey}U7oGA0wmNeBgtBPq zf0+a6zse@)2Fst;zkgr;H@oux>t>()K~EyV@K;u_{)O*FdK5R6^(;nvM)q^tQ%A11 zj?L-Yvtt+Cp7V;E8d96o`5@-S>pk6=Mp}CQhR)E*da2{l^Q7}+2yvJz#0f~RKF8)t zPl!t(0E%Q5MB)i?jsZSIpew|`8sJTANaT14Qqw}b*ODQ~^PtPmg^TA}Lpp1bi^9q4 zS=Mm!DXrCd)iIf5)T|;gzoKxpUAQGw^7go~cG5UdaA^@y{^9EKa661E8^VR(S#h{i zS>ePR2#s3t`}y1sKH{7ec!F($&*d6MCxpEio_=9_L}ZybziU+vRDqsl2QiVUxzs!E znoy_>(rs%$Z{D5uv)7@X8#ae!PEB|1CtT{aYBpu#SzX#snU_LJGl5C-lY{*Y%rRYZ z=&I_B;bdG_gcY|tyhuSg7RG*zFPZW@?{~|yPo_M_UBcZWap}CS=)_muYZj#_Lv;BN z`l?=gQa+0yHzS|2bWJfCxUzGb@_C4HZMWf~Lv*7>k3)l{rt7Al4qXS$Nj+nlCW;rI zsD`5IdVFBYsvxplBV&*eHDaym3A|g?-;ig7@@%V%l(}8xB@k4z@ktf0i#&-MvIw`M z$r`^l9_F0}SSvuYHKfh}N3(H}V+IPPyT~=W!MeEPCA);`{{qDA1txXC(AXcrH$S&s z{I>CG#1*jRZrgbE4=Am=oTW;J8LvJQKGN1pK?pZB&>TL@qMG5St4*u0rq9 z5;|{JKp1b|4%bJ>^&mgjZidz`pwXC((xs;B1CI4$IPZ=0_kBZr541aD-`(xR#|ea_ zRW>q9Y+5dr*(Nsq$}TM5aUkY+k_AN=UT)Fk_mm<0^nS>) z%y{yS@B*!zUA;JqiuW|LiLiGQ8U+X?8 zvVi_Wj~cT~>)vUAwFJ7YTW5fyO+T0cAshYwgA_*hS6~10_1V^z%Q$Q0+!m zMTUQ_0cQF6cQC+|(TqJk{#&wl!2ffX|2a~B|JuuwD7*B3P-`6K*53eY3H0i3fTIon z8E67i{~huFhs*zbslT895r!)Dy>Yr*e*?_&^Y37QDQXXT*Pb5#Ej#a^{xeSgU|=epZi+-riPuHM@T z+>)It?R*|yn+Ys}V!-h?*|{8GyE!IFi!j&2`ZV6|WGeh2!-J9mXGNOuZZnzy{G$fX z=VyG+vwY7@?sMYCjyi9rxBF{mi$IEh+>EH!v5xhIK1%|`oujbVkk6<<6QAqH=ctuz z3^!qY4Hl?pWwC-!`3TI;CRwZ&GDA1W2p)2}wwkyV`v~C;@-E(_rh@1uET@7{CoBHb z?m!q8kc43{L>Oz46)#1mi4dogy=!jcw=u~rSN4Gbw>z5TFOd{bw*U!MO!d|uyV+2(%nrt#SG3L~$U zv5&7dDc~*7AYz?2Y{U$ZZ9WRqLo8z0t@2N9B;AXU5Iy{#Y5S*=4 zcKrqI?9!^1aXTmN&GE&P_mX--vTAup%}A1!O+OsJ%ySYeW5sVltVfDbUN^s8-^ACT zp{%;$C_{4m=6I`H+CTZ3meu}}XT>k(h?1O`Z`-94^DC{`E}cLLqt4M3PL9g$q}gIk zxd~fjAy3Vh;xAr|#zLXh2OZ%4)HYz=^9je5(9~bDFTFG?vP*f%kUZ5 zo&_AWtdMlBZ~HueE1Eno*FSqEE0OwP2u8 ze*vl@87-YD+QMwaRp(bZ+PNV84keB!&7N*kP#p60}OoNMn<4Wv_HI)sG*qZlUI3 zc*$m8b5mEt%wd_-Ak(SCSg&jEEjLl4ffP6Vv)`$IX@5C zrt~j=O>%Ywxn+rhjk=1r}(6TkA{2?jkhqZ)l0rm{aH9);y6XB;&KG7=H6 zczB+UU;YVo0$f{`vSgn9k)1pXMGA-wq}&f7r>1`NMR7oJ8jJ59gDYT|cRS0pz{=;2Glx z8!~OdvCX#~*q3wfo6jGpNYaiURZ+6micLeCF(46}hJ>CS?+3y@ccMRVC<{xj{lNr$NvcwoXCNvQ0>td`eCz|R$b>YMA8sta4tp^%zg!fIRCmMifT>k!Ol^? z-vXAFlfMtq0kIL!ITo5*+~h=|xMGd*JQkqFhwvQ%_PE{9P&B_cF*f`+1N;$ED*lw< zi3C4xz$*ZbH$C6Zij5@rX#-xY!R@Ws=>$J-z|U!L2P<|0!7m%|JsRB6(&iUM*vz0@ zvfH0e&dfPCSLV? zwYhAwZh|Vcuw!nPGYHX`VAjJ()C^bZB5bg>~s{ z{0Ve!2Lz+7U;m;*UEN#hOp)5nV?^xwQmQ;WSk^(GL z{ecRKBHaSj(PzHmOL6LJ%I#ihE=Flm*NcKeVsvV)o6lpLy2U+}#qB4MS8*XBRd$}5 zOS+K3Hse`OFhY;ma-xi9TlwRP>R%bp%1yaHfk@Q|{1cSt9nz%QjZlxE!cL5kz(5~8 z$sOcZIad;kiRu7Q3Y9F6>>t7wAX7nfZS1kYjO&Okf{cExhU3XEt(V-issy}Jf1?Cm zM+vphX~l*>=hVBKQH+6j%5V>(hr6!fN@oS)N*Sg6lk35*a!P>pvu*a+zJUUzX8Cc8 zwMPG)h}S6MN5z=TQ|FbSh45aBcQpVn&g)v2oUoM5KO{u=a?SB7XSMXNRSq19R?Kbc zuWF4iPSk9k@;Mn5sWLLcnyJUgwajW|PcnqnR-fU?34t5!UQf^o4gk^J)7+pX0WRNq zRs9%ZO#LIMkNuHa7vmKQxhGx`cPCqY2C{sX>F_uOY2CaLK?RT8bY}RP5FLBN{L%G3 z(c~xo2gDJev7adlr46C^ty zBhVYW$}241B7phlY(yic7SRm9@m?lsLU)ss|_scUp-=4?>_Oxt8k`z>goc_?Xb3t(;mIb zrbqHiDT^{1;AAb2lAs~@)*CEam&BT|A8hJ;X7Nn`q$V%q7eU3KZs~jkoNDq#7co_0 zd27R?q-{(`Vqtk=zWP%U_OVRF6-!opTs9eZt3E#8c+c>Q_edSB*PlGU+3H*J=e$X4 z;YN$&yxw)3cj;R)5}}5P!r?YkpmeB#_23^J3ETHvX`cHg9@cq)?}@T|X?@RS=2;zA zMW5k`d;;hrG6Oa<$!V~?_o3UGp5Axf%kMo$yVEz!$}r$oyaaI9h^OcGpKs89AqYnw zr{64$WHZDYKv79q7rOJTU$|t26}x3`mSu2$cDaNb;Pqin9Zq6*Tk@ESk{_&Cq#ONI z#2X%$vedGsK{IN_FO%ZXkN+Y1H8#v?clmVktecmM@r`j0@L-ulU!+V&N}0|n3Mb)T z&3gPX{YQzfAQSxYS?Nc4ZZXfH#D^7yKVxHHhmiF&_U6ISy#xNeoxsG4`}#2B$(8)@ zQgTD>=7&oVeB$(V1)%&T(J-2j1hMj|&yq6!gPrV?WB2HT-G=&13T2Yz(?~izQX0T>+-H=G1zWVI*IRx< zGqNk`p7(_+Ze^Ko(-JXfrR-O{Mlc(rt*7U*hOw2DF2V<7jB}lkK#uT4crTahok`rx z2^2Mp$DlGp|z-$d>i*g&^nb7>W@{3N5L0ljkydKa>3P z?Ij=PCeLH?y-f1Gpantd=V3$y^%|3We75?og(Y#>Tk(SsSwks{d}Rj3`I5?tpM{W~ zP=tvqFKQnQ|I{d#{8Q?*e^s>FS{UOweGP{^ZJt?8z2lx)XH>%$tv7_GDcR z;Nkk`^$+v|6TL9Le%ipnDh9RwS;jM+Eb%L_tqn_rlrd9@h3c+Rx*!yjdi6oR=rIqe z)qdDk$!;+d^JkuRh6!+{qexzS6CI2=ug*|v7{Ob~1XhT(Ze1$DBy<#PhaAsBL9?@P zf;Oigip%X9Hb)CE%|j*}1BmGdCa9Lz0>b%PBdypr!7`_@@>40L<|vgX)LGjQdmF z)uU+lbON}NA-Dkt3%M6`R0>jJSFivJbOrUx8qJhN_cM)siHV2bGr};4Vg$USMkH~i zu0F(EM7~ey#tl)wS`baw?^du1GOq>18O&+kY%{X$VwWtjrgg{26q@@@2hOA~W51vc z#jaRA4B{on>4)irjx%CDPQ_>-GiMbhGG9r}dDl+oQQkGrp&~oW;}B_WWgbG(AzC^OK^TF1^LpZ+(n>O*lffhZp^;ir6 zNLmKkYQybpVly~&L+s5ROjspqczSHBgNWPpg|6n9&6T(rYHkQ!|_mkD#$+!IB891DaN-@gOOwK@ZeuxBx((1hiMA8R*1` zH=IJiMl}TMae!p9Vvli;SfCyqfzkDtL0q67Y87j5>JcG2P>;nLt?O|P(SdqArqQ|{ z#}gf>M^dA8J^l!^SC6+a8lWB>086jO2kUdXWVT{|AlX2Djs-^7X9M?L1?rQlS)vm| zbRQ5MsLz&_Qe9o27l;nj=bsv_>vKENf%?qRXkDMHf%fY26NVGi=g)wp>*H#t&zr2T zhPhm)#t0!R_7qtJw6V%yZX+g8>yv@ewVp&=pw+4jQd%eG1WmT7UDc z2u0UAkLWEIH(vH2t5D@vyB=)x&S# z-F0(ZAH(&5mXeZ-Y|96N)wg1YQEQ+}m7+_!y|(dxpw<6^F0lXjlegvnaJ+#FbKGC{ zV_0)J^d{ozLM!bTBVXJPk#^WH$4J-bx0Ux*bRbm3M?!;L}-P-*o65O!>{&IUK0j2xVn8CZH7BlfU9CjFAH}^4yiqbCj27jF;y` z=GlvR7y@;>m)q1i(9skMXw3*in-HwlW%#o>aZJE7Ei+7tobN%s))g8ifQq)eHN&olEJ)`GAKJm>@7v zugIrH#eS{p1FCWL~0&f&YGKDM?OzK{tF^nUb%ikb_QwQgbnsWV-29uR*+^AV`0e-m_5SW zRbq+VjZQ99GrkiPn~lXq0xT8KNF&He0RM0qf~hRWi}h!-pk_AM6)gQt9>G2gY2EFR z>ut!nTS9d~&_Tei2{;&#EcF2NM&`)Sd>wfR6zdtJK>=AT?hcYfGx1Jq|H59<#-aMQW zFL@}8+I2&_ET{DWlv#4Ix80}ijCC2!P>Mt6j zy$ad9fL^c)T?`Jzok*zTBHqT7v69@1t-xZbw=rd?0lr0`yDcSTfG-i~Zb~`U03Rgq zc|Gk?-3{cwlg??^ap#G{U~> zpAdE}AbS0(*;%%deSe+POMX{5Nv6j8FSr~=)XUo@6s>XR?5muQiA6WiOHA|hH1i{_ z@wk0s5ns%dos(Z~G?>2(og4P@XEbH7jFW|)DdRhzpp2IR;$LyBb32-Pis-B0$C8&` zXPBo7SNnK}V`<&gMZ0tzZI%ur=|~vXildmhlg0{Yh{{EIozp;db{DGf9JGdB(e4h3 z>5yCcnEtMSH69Ah*GUF{j3m@E_l&-cwdGYP=4=Ehvl^SsqW4FH_>wJG^9YgnfqP8< zSwJZEWX3W5=aEkztgpwD?>PJlXa*O)6-gaOc9p|qy&UF24Hs%y3=wkoc4`4$4ypGc zxd}Y=e}Itdqfh;>Q@0p$caa=Icv1P~?E9Co*3^)Rz+CONRRo2nmS#R6yDi^(s); zqQ*&Zzo?^Vbyi{$No9(9Gju>McnOL+GM;jYT;P+*k%r9iB$FxPXWJ%Y#qWdBQ(u4R z?$6N+`}?h7XT^Q{kP50|EN?r(1_ZlrwJ-&fnk;~asz612oO;Kgfko4@cc~wf|8^# z(9Uya0>id%heivRL>NjRoSz%%!m$}^&#DkxWx^%jN7t$DAfz6nMc`c9+l=?(3SCAS zFH>ap5Fi;V?$M*URLkA;E1h~~fE_tQG(uY`9St4w0r!Vuoyoapt6N^ZyKOG3Bpedp zka{k|fbW?$;MZfkRUJXvZ(~<5dl~wg8o=!DOTfU}9Cw|mfwWa2YfvLK@NcZL;x{6@ z-tL4odgnY{38#YQIuY2v!eUA-WN7&NQnZUZcHB5w8)i10dfL(Mrm*e35||{GY@L%) zb+*o%{AVft5n8zZJ!5ZS4|m;nrPJXnT?jJ{Xyy`Y#~xI~@dC0~h&%NP8^0rL zmR$n>S#}vj_80LQ9b!0}dbHwwrb%Hl-CnE`a_!Dsy6$w|NOy_+BK31f?R1220@{6Y zK)d^Wi(;Eh>RAwVjv+)-q!g*$X9)A*AeXwsufdJJEp67#+#^a-BFj-EbtWLb^iDNM z2g(xMVzz`L1Od^pLr9>}2o-%w*D8{Kx|HSPCBW_)B%hiSpj{TI=ktEriz%1~HEk7! zvU$q{7lJNtth^$_K)jlcSK{0ou8f`fYaC*>roDw@4>(GS4=d(x%#C1d#2#Bq$F=5x z3-?RZ&Bp>gPG-;3xY_*t@!u#*>~mt`m*soN1bnCgFAxwXz+}1ODgYt`Jf~AU%M{Wc z4{E?u1f0bb4I1z`0p$Sb&&Ug-M+rNEFy67L(>+4i-h`d)!Tv&6C&J1+*aL*Er_>Mk zVD}RCIbpdT>@LC<6Gp|;JnkUuMZ#J{MOf(>ggr>uXCAD9uzJE4d9Z1OT|?Ll9;}|Q zk%Z0kU^ftUCSkmcS@Z4AP~J&|jrU;t5>`mq2oLs0!nzSw>A}X4UOU2id9aCut$7cy z0uQza^L|2DR}a>iumyx=d9ZB4o+WHGMlM~xp`>>oVaq(&6@(=SoA1FoF>jQxXFOOt z!Y(50UJv#&^HvZx-Glu|SP5Yf54M4@LkJt@!A>Qt3t?do){C%T-UY0u2U|m!Ls-5C z3lsJcVL2YGH(_%L`x#wH*SCbQCkay?Oc8b$VIO+1uL+A2*5ttsCG0A~p73Bt5jKRd zJ3ZJzgoOx;d9WUY9YgPL4_3n{`j>?5 z=fQ4e-ggMg_FyB);}ybw;Fu~hVBAJMLf8rq_964$LfG3L?0v!}5jM+%UC-G6C4@cf z!QPkk0KytP*q6*(PS`{b_Bmlk5LWHMCNuBegq`id78BNqurd$!3G=Rh3$VjI*t>*% zP8hClGIhI&c^4Cg6L<#p31Kf1*20w%k-D3dq$b&5+>>9#e@L&rF z8%fwq4>p&uGYPxVgS|%BNra8}V6PBXNZ1Gu_99{32&?p9&l1*-uwEYQNy65=30Q## z`#WKu5Z2X$Jwn(5!m>QrgM>Xx*y_!0eeWaeKEjrHu)7FL5H{a~-9uQEuxC8j?Sx%K z*u5U?7Q!kBo9@Bt2`eEi;=vMx9YWYJ57vu|MqLOCd$2gu{jwOao*rx}VGd#W9&9pU z9}$-0!6pzkm$08@{=hMB9AQrqraahK!tNsMLl1T(VR6EmJlJT$t|IIS4|XwOLkPRm zgAFGvM3|i25M8^Fu;U1;@zM<@>_Ea~dyk|mqYOF|W_#(Xm~IR7(K*(GolV%cgyng# zO2XbJY&Q=UChRrBHp_wuWndHbcf!8$V283V+)mgM57v+ArV{q52RoPPE+_0!4|XtN z=M#3D2P4XI0 z8CL_+Ry^Z$Oc8WEgIoA~p`%BjN1UKMNm4yb8JbXf0t>c7Ez6^p5gj?tP`i-S7}j8o z++!O5T-bKma0ic+Ei%YgF6uXn(2YgFZ)g1KpwW!^pq(M)DIlFGj4=;q3^2Ism_sa0f+C{YL;k zo$&Vom-&Xoe}#UG@K*>Qf%!lhUQ76cgogw0iG(KzKQ;g#Pxw`Y?-zha2tS{2&NtHZ zYX~nVd^Kd6hF?Z_A>khe;MIh8A^g<@31k=nmR0{9!IM zJ<~4ShBUJeK$^xC#x7h(NWd=C5E8HpLjh^aF8tZ+$-RPhp&mNLes?=bG0w@JY@*64 zXFJrodepd)z}K5kG1U5#TBcoiF!0kLGpGV4Pp;SCh9XZ$K%jLcF`pY3+_%4*}m9JxgXM#G+iQIgR z4|}aksaH@ah8=mLb;>)84OxovN#PEH0J&W~a;c~NQ9z~h^k<&Wba`=KcPR0TTziW$ z;*Itz6gmn zJ0OhvPLlm|DiUi$g&G%TF*)|1JH zRwRCL^$%bBSx2d;2O)KyhPLb0w2Q7fqrTUV;gVkYkz-u3TCrkuccUM2nAg(}D;@(! zp6X>5p5yPBKcK#2O9&xO(3_8Y1XlQt$jLdOCVZ#|YO}z)sf0G5I~LCHhiiRs(p<{Z zMaqMN!cv}45~M=OuKB#~4!fi0$!Byv2q!N=g0DB*9rng2io%Isz;;7q8Y*Y#@jR0G zX3MbG*rW)S%5farmm*OuEeE*^=1~@47L^!(-Q{~Tag+_87~06PsRvjh93Lx5fl=f@ zvFkqiS()@h*n*8R@0X802K9*?l@{fE(3AYZj#2H?Pq&{rbGGoZ@Ear#uS&{fz>?01D zz-IBP5A`6zE?DEq)%}Uoa_st!Wfk?kpwT}?&X@ERFtDNIQ8=w;#Trn7w8nnkvCZ>s zrSLl4b&m8o&EsC7E%EMQA}i^(^rbG$L5Di zkIly(Z;<49$TgA6LP;EF?6H%%{HY(r2sLc(mu-G?_-l?rM$g5SPZfzt*taqXM<9pb z2;?Ye*iWJ4k-Yb5fB$_?EwgBEeD^&ey*dB505_W)n;)I(tdK5QhQk}sMgCzt#&sq4 zu)TfPl^g=~hUH0J$30Vbu~+l%st2fHv(jg8pePqh#$F$>$Z8$5TDBZO4&lh9T)ko^8tAE-lqOTQU3)v z|H-SuP@Z@cH8u)SjYca7m*9-qy2wb+ev?NiIRp%FLD^#{eOe(8M1dMI?GN2p+8?C% z-?#I~OVme7eGTuEk&e_;yD>KaMF=$X?0l@Pa&$qruoGSIgPvNR_3oMV0^)O8>);eANd%kx(0m}R@kn; z3>oib$Hi?OxirIYFWiedVlN6js?=;eseVW%dZbGIxrc5i_o-g)iFl%U{Q-R=?QHEN z&}AG8_63PB7CLhyf0Wf$HGmNhoM_5L;{hCXR8K?W8KGgWpqqyXC=4S>EMvceypW*< zywWS>t=Q_RSIRd^>UrvNCdFX!tz^M&6`#+Gu~;A5UFqb*bfzBWciQA5$WbmV#6DFX zwqB*q5FEd}IAk-dC`O$%_S|1^;(N{H{awAQAKPNrr7-3!SGDXZbjJ8y0eFq-O4D_U zd}6cWe-RbqRm0_j={e(4G-_dCGd^Mi+O1Z6SERszDWR!Q;e4KQx9hdd;sN(;bv$Z} zZUnDq6(%JzFw%>|XDQaIyPxN=u!G@&@yvO?TTb7(^YKU#ICmaSjzt~&Wmn)(Ca{Pk}gGNtAqibxGO_wVRs}Hb(m+v-7o>4~Wwo z#W+fqyVbK=Kl0cdzH#KuakJ#QC|L(}kMz@TWUwNz8h)ZUy>JKRGM7_46>UVZ<@=26 zR#Tyqbg2GBhw5zbR8Qj{t-Sg+4Oq*0Y9HyH%hj#;)k;Ux#VY}lJ?*-6xvB)YKqopY z)fhBi3k=^Pbt?J3gx3u5M#s6LU8z@h#ZeV5>MJNSoX7}FI5r-y^!(H}pMg}cD?+I( zkyEoy{=Dcum7zq@NMvT4A=y4hw#9hzby4f)@y5&+sry0Exx{qS14$9xKmB=IT_(e5%5Y9zOpAP9htk=4sji z?SFCL*X3cRs&H~xcKSk&Q2pS16{=fZ6z(wsP9)4x*m`;euCANBuU$WO3G81kM@R5m zt_ER~Dw4K~Vt)of*b#){u2p@wc@~u~3F+F<;6@F->^QC-g;2nCKy!M30RkG~D5A3-=b%5Xg3CuY>sJ{6< z?YXNusEeiJ@!T`!EA<@*iDN~(j%iQd`~qB~hul6Ve2v{qdeDh-QBnN*eQ+z@j*|{3 zS3$U4%1%_lx)g*Hn3Pw;SG)rE4<5?ic2*g8i4nE#kHgK>0cEDZz#` zoXrm5tHOzo^o1`nzxmh7KSui4zf%6}w#!dHpEE!hI=B2%TsrziP_IzQ+Q=aP{llCv zr~Atrc-!{=;lY4<{;L%+k2YP)mx$E%Y1V$>bkS1Z=T>AhcTaPp~Cv+ z3Fkb80w)$aA4m?&Ycu*OuR8aqKg6WxE;>#DJFx`8u01`2#Rh77Vu9?O368Tj%Ki&% z+*4mbIL;)zdiFe+@>UuGIIETF1*WVMyC5@#N;QV`OTOSt0iQ^~Okp8>EbJ@1;O_#* zz}bK&dVW5iTJH7Y+-#LYFT*#iPJuloqtn1B^$8t`_n}tlDZnY*Wh!io>adQjbZ&=Ba~ND)iB}Q}zLu06^VC?A^Kt&7 zkVV*#-%pGT?Q{tpOw4j(y$CWJjhj~CxnyvDQFM)y4>;#TsucPC&6r>_o}pqWpmVKc zZdUz~28|xsSG#k-iy5Z29R4>!MZZ;l#*-)ZZjxi$Y3MJ1W%A_^`!SMyp3?nWkDIue z7mciDA(2BTi&~U~KAAO(=(o-i4Tbel8*u7`qWcaBJihlaH5NqnmU}{})o>qJ&X_R% zJi1EFCiSR}Tp}Jhn%Sk1t@s~7U3T@ULjcwC-dD)aQyuurA&YLX+;7nZgrL!>m($@y zd~Xi^o#)(DBg#X+t|wOjFid`p(a_M4OPuXQN5pgnb4=H_I?F7)D?{p9!O6 zMRqa@U$#}9g7yw4N8+BBXhAr6d5+xH@f_{A_q~8n@?4D3xUb`%kxSFIJ_oi-`?o=R zq1P3(BL9=|95dPf2Q-@Y-rU!L%hg1puLI1ceHp(D>~#(&);Jf65`LUozz9qc3SU%_ zyrKZ!Mve|P$zU3}Fc4_k31v=~t`xHH))NBu%!>cYvB8a}q^;F)Qa~MVdL)#bYzlY) zz&P!w_Tn##L-EERhuYBjfMhR6;YJqVl4lg|TT~^2D~I6Ha}5Eu){4!9$kPQoP1@Pt z>#g`s966*wUr=D~BErKDQDXBk9Df^q0_8LXst1@e`8a+#x3jS@u5clz>$dt2REI8zEql6A!PE`fJ|~AkH>#lv)j5a|f@b7w=my4K2J}#!zxb*X znG|gMD5f`z<9!juhZ z1|+s^qrrhTItpeXt#XB8NP;T2nx2QNa_P1zelXou;*_D?-L~pR9H&ldS3F5u{V3K1 z3ubJqlQ{;%TIOzBJS$egR`sjV-T=5ojPB)Jg;%e?>T*SjgW`;=@=Iq5<}1(y)EnxhNTA5S2Q3ea5*_Wcs7Fjt@TIwTBhwJ{A#hx=p4Mk2c9wkjsx8CucrnhABC7A%MrznO(|mBM*iOo=H-uD>Ar(LAI6>2hqjpXKP4uUhaR#kf{- zAD+)r>;YdU$jj|fFci*Cpw>o@+60cNPkadL=3(Tk`#+G*nNkeDUi-5Q;pK*^1{`wmh~&7e)YXZv!zrfoSs#k`;RsaiL;2U9J`24J1<(Q`puZ)y){zh9vL zKq_BzXy^Yzb-K_;+@snT_Xx6U^w=Fpc2DzlyKL?TwhcC`Ah6UYD5dTg)9>}9Y{e-< z>G5evR}&9O7pS3l5=oyA`B2gYvSBps-UR(OSPdPR%a+d|Jc>pSaT$ojvQ-ys17)BF zLq5DahHfzE-Ma^OYXENBc_rHV^i< zpc=Z?w*t;ZfE)0OIz>7oI_?aSdbOtJbJK>e4d9BT7WsXEDR;2VyQ_O45svn4^&FJK z;R4?_V^w!GlG*TKBt; z>t&FoS^!o%`2At`vnxxk@Tv)%h*arq^tiA6}9l_<}1udGF6s(>K;3JSkH<(*Mf z>**yDe?N(wVI<%SVSb4lbP;YS!2g(GUE0%54n&9)&MB5Cxb_h)*@K6NZ;2=AXit zE@m`bIK}t4-h}kS`1XIlxD|P|f5)Ib~wUCCZ zU(AGclX8)o{A1aaVPb(aoZE`Hz|$MWFkyw7bU~`V$%FeQtMmGmd}}>`W_I>Pnsf)X zMTw!5dYwH?vc9;?YbXHMZ|5LWY%yj@ESRiD?#qeA+B-Sfg$g<-OL@tMllPQ}8+1d5 z_TyKAvaYxC)!V2kZtjh*i5}!^LESw6B-t;AUMe@=;j%S8Bo-vk$pi6;h)?#*Enb}Z z#(pIo$#~P67G|M**Jov;&@zj0?x0s!H>Dtpi>Lkbl6#a?=1tm7dWP(1WjsyC;8+wZ z_A2-#cTIHzqa4}JD5a?NN>TFWly9UEJdWtg8QtIc42igY7AXH>w#T;Rk1dXNhRmEd zrMX}=HLa3r1O~a6N%~~*8d>o%>v?4{K-WeOE_vU&iSr}sOD>Xd=cGJKyE5ROCKh>_ zZ8YFND2=sfrX-dO7o=VjopHL-u45Hz4wW5NFi+ib2ZAxH`Oi4Q5G%M)ewV9{B@L~+ z9MMCrI3Tpa`SJ@% zI&~G&ldE$VD0nlRpKd2~S&CmoQ11doS>>e%qfa&7DT1a!{#XS51&hGn!)C(0-nq51 znzk4L8-$jVWi`;n>_J0XS9ss2-6nmFKRuSbGt#@CdbaDYwq>!oeu_2nHp~R2O z3HQKu53IkGV})frF1n|FW%ZTo#9J%5jfd}OWvuXkE|}=0p4Lj6Ij(shGzvf?&!cg? zyFTorlb1nfn2%1SrlaM+_3L?~_~*qh28NSozt>6s zn|MmWEtIgTt{)L)zJjHYp{zc$zTGalUUAw!-R z3n@<&@&5sNCT|mY78rRJ{5Q)Jn-C#P96`66cdoe>-%UQq^%G$yjbRWY!EVGaL$_AK z0`$S+QJb|8 zy(N|H^u*GG;qNrHvlE>j~ye8-Wk`UZvvz9 zX$ZT*z!rY#f+LW&--j2w3_mlcqHwKj72p88=2EQ0%g15;6Ei6UR4-;COh<{N}F4{D{Sl6tSpL!!iV zraUbkhNLO@APZ8@dE+g|PkgV#H|(Mx_Ajt|^v|O$rqkCMt%^<>qw)mCyFA>+oMR_# ztRc6A3KxYFZ-nM<#z3>RLk05P)K^B9y{*_M%vX9oMiB0##}h^no~yxAZnV_t5ujgs zJ|;I$NsbG$M>SZn+4>oIn)DM!9ob2oz^A9q%nQ{ij5_Z}v5|H|xbRKcvRtH6DCv~x3s-M$QKnIpGTF?S%@ts+;)Mu#9H+jZt2EdcY~jgq+i?n%w*iBlzB98D zq37{X*a)@uJE(FtwHUV};zl{O5{qY{lIFBXjjv>p8u5eOa^?L-xlY%#tvHWUZodeJxyepKGM8t% z7&H7GP^y&fPdq>N!#R{Btr%Pl&yYp`nCi{>rLKWTZR`5T+LTI~)3``x|_Q7u|6j zY|?poc4B=Se*18-nEP0ly-4jnRjXcPVr`%{Sr;6q@?H`q1;MvnEv8QiJ z_9|prqMu+-|G}rA7Y}>d;`8FI7}ZZac}&{i$xqbvwo9W$c49v)^YXm1?E06;dg1^v zpR%79W)!2kT{;#)n8WiUlj$5q?8K2GD@g&FY0nFexv|eB3nLG?z|!2vI_>A@Mpl}K zXgu|)*w@|#L3`S}DD_6V{^9!GJyXwN&lvZL6*o1cZh~u*Z704`Z(wmUbss(=3weK~ zUcj4k4$^RHuq%F%F$eVZ8K(N)+0LaJnCo1G2XFk$Xg>^x=YjhFs`f*xY^VLuD*S+a zKh$b$0oo5OozZ>;ItBXFe`otii?zo}pR}K}<_`#@{yXjG#t-EFTw{KF?#Ppd&u{?T z>^x{ZBCGua?lgVrJQcqlv#k2z;zPr#tWvQ!UARson>{!B0zMiy8g7X1tm1p2Ci?VD_Uo1C(@V{q#;M!r?9}MAeq%WvJ{dF`Wilpw1o_J{=xI4PtP{cRcYKor zbL{SR;!V47gSbfeo;3!Rui#fVtMMo-{ByLn16g9K&E+nhb6h2pud!Gg-x$3Eobyr_ z8Ghn7`S^9y{0e>-ziiD9IwSnB*CEZXnyO~_rNb?$qPG0cZQ?CD*rKWtN|P|j(rv;m zusP{?%{FlsH~&^QKeXB$`_gkl%qPVK-*lZgrK3dq!gfcsw> z*v-BNJxciK-Bn8+CIB7y%K0awY6Qy+;1N)f^A>&=e=h7(D6u}2*cvL_5>6}*NtkB~ zyl;egXy(Jo_TiG9wF@0C?T-;-9-*cEVf^K^ZfXDAXo2%EfUbNiN_yu-282t>vm;^r zn-e)5|K>(2Ly0#-^#kB-JD374iY^lyH&>=|bz9m;D(t!~9U>+8w_T(VBggmdcjmw6 z(AgK>NPX`D!1!BaetXWdlY7`DInnpNH&2m8G$*MJ8XlP~Z#bE{8PeaJ!irA++QM6nEOEAm3g4DJ$vDL}@ z4A*qOgh$tfn-XJcV8}2Gzid)H7K;+Ok35NUQxozi{ z)Pej$v5oxjgU_p?ADld+62n^2L|kE0@@AwPqG9L&i|ikl*mWy5+wGRviT;RJ53Ipp zQf-%PbyIBir|45d71~ezIEgAep;9Z9!?y&YRe7svy538vhV=L(?k93`?UgNA{yvoE|be3n5zwAyJ*8J;5*AO$vkfQa=n~6*U9u4_|{O z#n{}ZGF&KzazL_|vQgjtikm_uJ)^s(_M|;5?X@Iw5G(cu+GR`&m0@SBOypqsKmyY4 z`oNuTL_CFo`F(r=)Y%Q4Oy>V?OqKFQOlC^K|BQT#CyRVBth@3pXiL5j5A^7_gRv50Um1jpYHKL zc1QdxUH+9)f7@Swy-Cw{=9<2i|s z65r9bs+HLJjx9WPa|bc-&3#x1=tZ9@^E=G^R-4}%^E;lu_y{omEp94a3bSIDEEu#s}4?1RE z4X>jHF>~+anD*n`?{R)c4aCsGB~Zznl+4(hJGv78V~FZA9y1YA8HSU041K`|b54aV zlyLwaiC)Jecb7(g&`6J0C457FyGpK#UZ)aZ>CNZM&y(-Aq}@vSCa*hysY%?FpCM($ z<1z(}_3h?9ZOU4m_9ZCr(vsUCb6PTNM2AI_VP{w<@peVwYMU44z@0+Hc)n*^H3q{l z2Bk0@xk7VU&irwg%L%vrWZ%gI$fcqNlwe#@Z^)=^N?e};rJ5k6(L(7laKV`9v$iH$ zSc^>D{t@D(7y838cHw$lIW%L*k_x1lE?EmXjYPiJyZ z8&8aGX&q2M@inY1rLf84h8c}n2)`d)^9tD-$XTByGjmlbu-9r|a4 z*WvU!8S6upAU(_(f*D=9{$^d9D-BtwAzMSY8QL$g&@TK{1dE$M><-at$j6iMFp!Z8 z5%he@?QdVHSFQ$`1in*Djfb2{{rtRs`IWlGOIPVE#zq{W<9Zb=PYn~$`4Me|W@eVB z(qEqILBe4qQ`6x|=dGmjCr}XzJW0Qnh2}r$@eJuUFkO3{jyA%Ik77FhgY`0Y;U^^v z=6863tHYC`>MGrf)7`petj7uSnm_Xm-TH2JFwDlELvnQz{%P?0)9(5y;&$$gF;;1AKeXo^!nmR zQFF*O-4C~J+YfK_=f6PbPxnLaA@lTE`b!)Aad}36>4?^L`^zxa%IhzWU6s*a=AyBK z^xNoS@XwdKPk0U@qu1Co1 zkA)=T>yO+7=+(#9AKQ89DxG)Q>W?eN{44$O2KGlrk23n>-Js(2$D3Ga{b;?PvHqwkp3wB^CSS&3RFO^x9IsTH^$~+5hI5|a9I;xf`LY_32)YG!lT$V zO0kGBfNdm;7?%r(ix?N^r`+fX&Z&6R^^o-oeox3Q)$12JC)Y2y(g7&eFGlexA-j znKa)`${3xU*d4tWqq0z~VXTzOm3S9>$}lm?qpOBR==aS$5$n)a>?rim)JIrL9@P-R z5kbAI{H?dFoI~_KbiKp%18}Jk^8ADr#e6h%zX!+hPQbqgJe2@Y$G?ys2hah3OQ#oS z3(G4UKZ~12H8=(GAorrm`x{7yMHUHA=dgm=%4VE^_ZW$p2eMLD;We@ccSH+vrQ}4& zl}q#*xx1J1evPd5A=guVBq#UJKqS%|P~coSY>9^)=W}52knP={+Lr#J>CVgh->1Jt z+t**Cl>UXd?dh*kb*#uG@l~_Z==kmHuTjc=aA3wl)yEFozWy3j?^EU1-^%|*`s>%i z=}w0J`n7O0`>bDo{hEKem(%F4U-OH-od1gc>eIMsZwBr5pNxNBMnCGmF#dfx$D@Bg z{ym!6e|P*FsWao>m%vlt_O1Vx_&3*wadH3?NV5fcr`CpA*mrzha>h(C?+TB}NAZZ? zx@Y9K%Q<-IQjv{+u=Xm^uX$!a>Tl7Tm8REZ=q=h2J(<}y?_4<NBqBV`JXHGKi*$|ktOO6YK^sS{S7clpjUqbyxQ=; zAG)pMMX^yksQ>#e{|lu4e*QfT)jYC#)UCe(?&{~iy8&(jU#Y*xzoX$#eNp}KEk0;> zr{%cQ644V;w&uE8Fy^1#Tt~g*9~8cBCVl~G;5+{Cc&C06EIZ1=x+R1#vFq|3Tt`aLos@F9WfC~q6Cl4# zXgaJe2mx*hsehA7G&WPy}2kdq9LKe$^18Dmi3^d z6!)*Sp^`pg@_A;nOP{BN>;zZQ@2tgR#cAfCS5j{U6ZcfrXu&L|5P_mJk z(C_WU9Lc^L)*!F}ptYeVxRhHjUB3kQ=^}MlBkYj&F3xMf-Wi_HKLiO=cf)_2y%Ul) z9s;G&m$m;q5}J|hv~eajJ0#0cnOV<_ycAKE)=0nd+9|lj{7}&E&rfXX^oN@sbu9G9 z*&V*5>(}D?hNj^#=EX zjd6sfm`@qoYbWP0ix*G)5j>gXfp2K+)~WvJ2F5;Pfs`tbc*L#DkK<+Y(uIS3(t$;> zq;k#qe{Q^(w`0^xryOn`X)8VriWWinVNd zC@hYw>0VLBzUQ-F7@#@i4RM~vdOwu}s`0Qqu2Y9Y|NZf&b6#Htasx3eW~&y6MwW*~ zS7ASSr0OkfK4FBJyoK;Gb07gkrwn6LuTvi*qw5d+8|4M1PAr~R?!$zxlza7$tin1K z0Sk_wB(F|LmkH|3Kd-+HG+$!)sS&d;e1FHElKHX!!%Hjl8aGejfX*`@Ih?#%>U=aX z%7Q5#I!mU%@VDVe&GoIfuhS1XN0HA+OmRJbVY(E*S=B&!8nbFizFCbmz(EAMgg*Sq|~QvW0T z^*2;oK&`RXtv?7#{R#ByZ-5H{ByuezXX-y>2lb!i@~@Qo`}t2dRBOoUQMdjEILOa` zr~#g8_+R1iKYK^~BQF25rT&Ne>u;#GfLh}+xBeg~^(WA)zX2`;Q0foKnfedjLH#dx z`BzE({rsmJsx@SlJ=N&H0S@x>A8LT78va*!{LkJI|4}ag!BYPo{`woLEuhv|WcYs% zf>M71z4{yALI9=ykesRipdHlzBA5R~Qhz`H>4s_zSyj39H^4!D{zDD$RKx!YkN?>_ z;$P|VA1U?!lfV9kY73|}*1GivL8(81Ui}SlA%IeUNY2#%f*sVq%;kTH)Zfp4x}jP_ zR6s)!zUY0x0!| z+9 zmz*Y!Gp6QxqaC*39b+eVw@coN9F6lt;rfmXvcYl||4DU~d1P`oe9XBLn}Xho;HdqQ za7j}%#R6b-Mx4_dOv`x&MA9wObQ==PBhNMp<^iohjlGlb8>)k4J9G8cOyrN zTzAWqYbd!J)?g^tcO!d>To*-CgTALsbvgXy&Oxb}Y5D2> z`#hZ9ytC+3^7UGZ4*s5=1+8su(EeVWaQ^9XC2!Y_8<)c9*;KvV8gIg9W8R_OSTUVo zA6`K`9-G-ZiykqKk4@R%*`@onkFNK-k^i!~G*xY1U0N%%WD2U{A68qag><-=#UJzjYHuXp)}$p1J$|0+YZjI6Sl4y5}SU=Kh4BMopb!~bND zf4p(lfgk}M9MwS_ zE5?;G?9?`PBYpnBtp_f2iJl%{?jF94oKXC!%Xeq_@>H5D?(Raf@jGgvPOEJ2fZg7B4ne^BInrmFJ5W)uSE>>s!b)tx zoB00??53i~03L=P{#Kjc8uL3||F#uE^aXU(QQg}kShzwG2TaY?uTwMEshgnRoX+~j z1KIwC<&B7lROg<9_UoZmt?<6#5?;9v+G}!dYbAc z`cz`o7h%3W!-%ftQ#Cda^QDF__$Q~|cs}8u92s%&BGu$OjTPVZZ;lK-eCH6PzS_S% zzAYGMZKq3}gVwdKQCImMbX=c3_3wjWuV|=6ev}_QYMp)o2Dy#9I7@aZgWT zIUdfYU{G%4LAg;Hlp7_hs@2r1rfcd|rX3+U6gST+ItIP81rc%}1nM9JUQ8z$@oNZm z5yDm+z=ysXzC)GS;ogJV)i=N+Dl4lIkUv0^_m_L}TajN6HE zzYipq+3;m3@L;3 z)*0%A({aY@dOB6QIDpBit#x4z+soBqX9n+PSdg|iG72VELVO+b@ek}U{>6R=HIMf} z!LDY++kE{gTeZH#YKjfo?Pi}1YQ5=y$OaAFyKNhku5az@y1jRHHXzbCssZuAfc@1@ zKo%w;T0i{t<>8~)LuhxkQ@Y}NvaUErDaLoF|EY?P#Gb!xjIUfSmr*|x|EFV&g(n#t zrmp5<4s^8J-yY}CI5B^iI})nPL6?5>Z&eZbf#`4T7@ zKSL~Ep6NSzy6=2(8v9Okm%0g6yIQgF$m902qI5qiYLw3aKbKC6J3J!3v}NhEWsUM_ z=IaA#YkX+~{Z~HMd_g)bc5YqfrF}L388od+TE8_)j)HU!oMr#BF9)r9ItSkx<&(#o z2C$yxuL6)IwcQIl&Lm$fU-G0ah7}JPgs}G`s(~oivH1)$gZpVEQ{VhDpYgHcR~Tqf z0J;d!ez8r_6L8qbiu3M74j&vm(zgU$=#E?Q-mpe+H+A8WEwb301@(+vVyiE|%hPbNtZL*e>o zv=j4!ZXu+k4CShc4QkLIsiB%5H(n1y=JMKC^H-pn*e$*XiiQ1Zsv|yaCSQec&oiaz zC(B@Zt@s$&Y%Oj0$_}r^k#eWg!65H%#m5Db-7LxaQljo93q?BJgh0A8+fKK)6`vAF zw`UvaP#loN#{gx=GnWM^uK>S&%dOkzJNE+>Y#D`?_qB|5^KD3?5BqkovA`L}tM>1M z`Icnnll%PLR$bH|S%>R#1oKVL%y*^mGuqI=d_&sG#~vFf=YjrwRm^9#mGAFp<3PS{ z{(O1N*8vbnuz1ZJc1H97UV$nelyn~Vfb;x*7%I`rvN3-9QlKNbDgNT7h<)lyke5y{ z)lI;8(F@RguoX8!IHzL1qti|$)Kd4bbPDIfHh^AP;bpib$#oeyScTYzjL8u*oyE=c zbzf7#)Dt3(;!mA*P&WC%rfloidf@a2N#A@#K2hs`=Sdg;J2q|v-b*vyIluF#ugG{m z3GZH!wQWR^Gi4+0OrBc>Cl{Ig;+*DPmn@f0IbG1`e*9G#?}Zuf3B2q2r_YN{U7ZV! z;jq~7Fii}uRq%$zb8(TXJAW`EVEj^~c8zH4b|^Fk23oZysGY5cT0IS5B9M*cF98M* z51S+t^WhZcJdwYM8In7}59=#V{|NEPuwSyZA)7p)2Q?mHTo88t9@+v5BMj5$=d{Ps zfZ?JrP)}U~+4q=yl%Ka$%dB(;*v9hKkH8na?0T7fxLFV=(`8WOP+cUsR|<-U+e{hz ztq>tyNTd^~wX<|ms-Z*B(`SogX*!!R>z@&=9 z?lx8>!b1qMHMic%N{zD4YZ7swDx85i?;;E5Tbw6szZ|Q3`^v!>jh$?x9Pa}m5?;YBF_~xlk47LRFj#RdJr&g|9NF?=o7l*L`=2o&+5P>yi2#>lKKS z{M1T$M%rV&pJC>mG1oDEf%Vd~6=;mQmUdyk&im)Jk^aD7`riKZZP8y}7NEa}KYd&D=LXY%h1XI3`<)7C z!*bNMlt=v}n^MhDZ?jMs_i_Rrgd%*KHuHS~E6 z#cuqp$PJALjn&ZmG!zae);DUPIE_VDX-u8QbP^2JxA7Q*xkO{QF-(82squJ&IYVQ1 z7R*7+Q(`d3X-u|YvWYp#VD{CRKL}NOi8@Jwgh_OwcDH>x5h94(ZyjmZ&APhu(! z<}{7zBA5e+Ion{0HD(XN@S8V{RR;4%joDK$-(l=*EHiES%SlpG2GDW87cqlPp072g zn_yld=0by6tTB5D=3Zik8_d%h^GCs4N6f_rbGydm3Z|Nv(FQX?WA+xz>BL-VFc)de zK7u)xn6U=aUt{(a%s#}7GngYZWTFiUhM6G04Wb2D7Wi@bCn_ctgwrgIRx~ z$lz$f%qM1%!F;SS#|Y*zV%{>C*EHr>!88!_k?HjhY0Pngxtf?y3?`v5#|vgKF*g~^ zl^Sz`VEzwzZvq`vk^KQD5F{elK~dv2Mkgo{921w3HaMms;A?Egs4##c;*1L@Dq=U_ z3fLW?r)|YuN1efK)N#Xc1C)@k1yB)C5oC~vBGojT3m9?9_xs(ddi^>H>MZ~Bedl}} zO}|(7zN%ZdZr!?dYq`A%S!T)^q#->8(oJ$Rka7+23uIqHmYCd*)R0pJ@-2#yQl z8g}GeLO$WE_O@c&w3jqbJ_SQ52EJL4h?=iWAzOftG4P?9OUCL_*GfXhs9S zYr@=Bv)a)8vi@*&&0QwpG5ukO+3+^xq{8^H=3fRhMdNO)8Dj>|aTd2PaUJ3|7~JzM zZlj^Fza-4=2TWh=aH4)@P)lttXE2vG1bt&ZI>6>K$5boN;yT1#1>?O&nQT(v3s|tR z=3A4nS`ualrNn26y2U_hG=x`ZAW}OaI}GFr4LMUF;|clNK>jR{NQc?n7?>JHP@@4| zEg+QK&QLjA=Q2QYDI;nZ1F5vR@Hj~7K!UzExs=#k>I`n7#XXC-n|A>>$AEtLt*Prm zldwe+KwTAaYlxd?Kr1ZnQj<_?anC01UBunnfS$Ct@0x^rEbckPy_C578qjqX_kEKv z(&C;=+*66WzX1)fxNA&8FN-^nxcd^f(14D#xF4H@0*gC{xEpo?_izK+d9vX{ca!j$ zB+TYv6JP9gq8?=+OEqM$Kpr9FcmtWCAwvWbCFE!WxlbVA>QI(ElAvP^=mr6y%|A5> zms{NPh}(;}zcHY*EUq#Mzq7dK6Ssi4CmPVNEw0}r>?aAcxgF6L+X(k!O>YBfJc*T` zeStvUBBZB*d@K;qJ)HT^ASh%&^92ODx0-~1>Rc|AT&juM%RnB`kP!m8f{=iL+-&o| zi1}9$)X#waWb^;hB%EV$|47_o;+|RXUWzrX}5y)IZk_NI;L&gf^NkXO>$V?3h3nW3v-3Ibk4T%Wk8ba2HU3s$Y2ev>%+18fpFlJYk-d8m6BbZp` zTX&TT`-)7y?ta%y`6oR2zbya#HUDn;cisQLEPvp?U4HNXY5DK3{$=&&{RQ8n5u#hF zCe2+Ases~o3V)r%{j23?N&|o9oIG#rS- z1?SqDfsjr&V<8K_UHJ<_;bBco2NIVE`1~|K@Vy9{J11t~8NZLuG{3dxcQJm!6<_RF zl!Ybw>39z%1r6H>^YDgs_7L_f=IeF#QCrD3Tw4@Mo^&ii&0`HzoSTu3=4IL>zsMXa@KcM}7 zeM@mpZd<7B%er;`n__#T*j@#f_VFE`*K5244r7Ut>Di3N_P@Mbgfq*_2mrkBxGm0i zOCx+!Xh?HYvc8btw&(wrNU*4L9wf>bqXWY(ih|4O{rfM#?Oe-qim zf%!P5lL*A_&*)LiJ(~)g$@3`>07bS06K_iA(I@KXb^EsI{0q3=Gc0vqJvfGtl^b0Y z%x2}>{lmcGdU;qd)~hW&WQU@wZ*70y6Fq@nOwS3Xqz)*_()BB(k*;+u=*lzL|5`-K z*QYPykLHFiTIkF=mqZLj@u*H91!jCY|!V6Bb29uMfw*`*eon0S!lcCOLwXA;~ZYRP$MZaSXa!=8( z^%L$XD#w$SNA$A-QJA>nnfzxEwX~D`8-*_DUlab_fcV?aOq+SI|4wC}|R93h{$ zclrn`pNNL}D2DhTqSB!`BRH6yY+x3N$%W`#!Q?FdIPp15; z+f*=VjtoQ+8PlonSA{IF6QnmYOw5^tmqpcDPMQhG94#Q#4M54XdbWVzswJ&$gbS(X zIZT%iMmv7Rhf2ZQh6Mh4+W? z4pygl`yRew_Nl4*c_!L8b)$Y>js{AN!Ly@f5?!EqE$W@RCdORd&3;jm_^p4;kZ_N( zl{{WliTY}Bb#m+c*9-}Fj?T-)86p3-V>gx6Vj-*o!|UR&aE}4*`whBdxxTx|jT(b> zuPIV!cj*=!^f1_Qh>w({&vNy`-5N&*QCN0y#XaLd{J`-qN0bM!_J7B?`u&EO1h@-=dbB>umghff zIUuP)5|Dd+lw9XOJnqm>d~D1-a^C{~snfp56>@lHI;j;-e4(1s0pCJt9U%u2wyXP( z@tj8p#=p^<^0XoKhV47tnW;_#(X@dYkU35#1-r+zMh9=vl+f9=;hs)%w)B~}-t^=o zZsBVa!YKUIcag8s42MMLLby8hdupWlM z_Lu78T61PBIujZQL81yk62 zbP}J`gIjZX>4%Kv!Q^-+h-GUhFjd?3>QFf9t;pC}f#VwCxUJJOy{KpZD04>bqVPoP za&eW|38<8wQpA_JpS!|_6-ZUcx3mg|1vi#>!Ym(}WC()12xTj%ezYps*8Q%=YC z*!!=E4#l6CHxjK4y-9s2+eC11P%Fntz{GT<4-J2A@0K$Z+`Pg^ZS~7+pz=6$=;QNx z_@>Ok7fy5`PI~@O7gGHn!(w+o&wolk3!wDm z^+^AX{)YcHA21{JE#%qspQO>aA_VB)>R1fZwvkf2gfqLn2g~+`V7w`_)A}pDhnM>N zxH)KHZM_HUWtaqi(f2;aTLT~Q507km{zKPQr{a^${5gG)tL{aRJlg*L27Hkjon^Ri zM`Gv)8HwwhL}E4YoP-Q;CWeR^rx9xr8atTOU&TKx+lp`iaZD4_2nis?g+^@->W_@+B9 z>Pt1{Q~x~QEq{dcXKPbqc`V>8ns;boD98s9Io#d}h3$;0CGo6S0p$g1kf%Sa9{1|| zRlevdqP9SSvd7sDDtiQStT4>vfgG_UECDoqj!s`J_LJeaMvyAGSpIp}A`7#B*w{T# z_HSnobEdh}XiLNKO5yeP?JRrg9b5ZPSDQ@TW zy{0d3N?r?XJ`u`Xl)F0XaO!gJSpJim{CH!eqT+CXbbuz8PZ8n87@l4|UMJ4NmU`St z;3%iM1eGvfr7nab4<_$eO>W_SP#o{YMlvu!Ek_D_;K-R2Nu;p*uLaHN<&sN!^`+C& z3)7w(W~hJmV)&2vH%@#Nj)E36HDu17P!6#F3<%!|!pA%uA?NUpO0c8>O^1rb_hAg0eB$boFVvsNM^ zmEVB-W}gI~^$>{F^w(*;s-2wXGwiaAg0lHm&TaR}S04!oL4Ms?rjvYxA32k^E(Z@o zB?zYS0}UdDhygd-_|D0fOCiqA(x!s=kjQWge19HEY z%T2@kP%+}*L(@V`_7cAi#eW#!-xxkd^acU~1N=Eyt{MQwkSy6vUMM;EH%8VWWHIje ztd{rq7SY$(H#)$-Gh70B^n5?PmG3|2_gCagsoMwmw}gLX?MAui%@o&E01)n*NR(3^ z+Np5|qPf{4Lh*83W1nwiHkgac)o&SuS_r-Y zXXZt-p6Yzx4Tr!NfK26bT=uo&DYQ7pL+y=&yS`?rS=3ZYxHBIl~TAkJ44fk-L-MtZsM!_17&;hQC%UBR%NL{+=NkreZc)Lz~!)5xF$Ng8w~MwPhF4G ze9qshvAfelc*{O|5a|n{hJ~LPf)Cg~s;)Yk@R!Vv=rQ#zaB)fwn|gDuNF~fgr{OBV@0D zF@zFa2xtZ@d)eJ1v1~)Q^^jK=V0OtW2bC5w-r(^ia^Usr+T;wtO_cFZocLxZz6i&> z>r|VHTmpfaVo+>j?|=_c;e$JegV)M){-jlYpMv}|{4T>=hTq-sW)~tgt6YAM_!)jT zPB8qIvv%b7$4F_xZ*xkxl&1|eZ|lih&AhvW^(!;1x4g~bSTJr`-$k>&OIFKh)_dDE zt7Tg7`wWoTg5P(+G2A-8g%AG@zw5`7-+s`@)~&-^hTm`CZ4dk&`7`{UicdwpU4CE1 z%$m!0Gk)`k2l!o}IhMt57c*N}vzV7*eXA{#VSTH8rUmQY9@h%%4?4|d{TCwY6<}QF zsPMzXclPtl`6Wy@k^3F&4ER0ZTx1L`FCB+FOwRDeXRm%xV?^1Ez?esjti!$4ucO9* zbUGb*`0lIaV=p|8-4|ylj>cQN-{S4sFy0CY>nSjs?!%S={dpsu4=UZOcqA za}v_pwzD-g>t#l<0bIz=*0em+)a+#$uyi&Ipssp^NO`~oq^Sv^C{hSbC01;`s>bRr zv{<{1IM=LYfDOtPNZpMV&J5}p%K_nCK~N2_KSbA3TrEjnm7D>KX7*A{;mm+VGh2!c zXS#V*at2d0b2H)>mxwra>ZXYYaj42-kSQZjY6i?27?Ckn8)7qfCE94Y@0Q(2P7Oxo zvh=a`&rja67`U99qLyParH^42O;|@S(5u+Kf=N@6g5u0|9|cpV>38?q4-|;!vnix? z;m)w(nKRt+?tECw0}i`|adU&0DOH-KC~W#9d?TdbMM?xB9%r&JEm0TqNSk)0b;dl% zZI>|=Q%$iTvlM*!G|8sL2(Megj7fOGFHGG_D{3-_W_Cl=CXobQe_EQhRf<}u!S@=bFXZx!mQHPZ4IOPvPFJpo&QGOTzAs7F19 z;%zAFgK0F3m4!%6BL)8tS!f%@7o(~LPN$w%knrJMd&393go=yM?iFlzyj2!= z^D2Xo)Xu7skXtRFiHcgp+2($yxKh*%->M#Kb5vwyCuItkK!ckdB%w~t{q3Hz#PT#a zn^CaMvUGc;Q&N%+( z>amAHElrkl%?i~tL8Q>O%?e$hR{lm8>M`(#=v9j5_shcuh`&Qe&-;V2E zop8+bs9)S`be_b~CiPx>Oro%$ROKYE$Ly(T#Hh=$NWT&^RM&=*FH?{DVm0u!%iZ%g z;8hOD9*hTBmZD;nWhyJiMt#G*f{6v!y!2WKmeKek;|GX={w%m~1pi((lKiOPbOpzL>QxtD3VQ=)Dx9tp-l3}6oO9rhAl z;4G3P+_%Gn;@JC_k$Nqe{0Qi0jpSb=mPI0#6i%Mdr%!(x2_oP)YkyL7VC0Dk%Sf!24Ws-u zxGE#iRl4~gI`H!Ns$ug`0>uf76;>zJ0|j{V&*(?fjVi#ipXw341#CsL4iY8pWqL%a z6D;MQ&OeKOYC_i0tzMNDQK5gHuli0A(>6l?hos;6+5A!CpQ2xP6Py18H#;aGn`1UuO4~u^^O~P@#6@UmvG941f3>b`pt_@D;93`ypNKX%>%wOior zd>lIqBKz4SGrl3sNwguo&={I}ko}>q0Em(6`$TnEoiW~OQ|25Y1@ zKE!;Zp#MnxIY*CZS+!uk?A^DRs{GkhRP9eP+F6>+^RJbXHOZT59Z8 zSg6s+hzm=pT{wKl-p<i;)G@X%;D$>x@@2-C5g-}ELw!Y0jzdl&%CguBoN^ZNmJ5&$bZUETO-cMz++9Og z6G&Ptq&V=G#j4KYj0QW$_qXf|R;W7HoubWpcx^5GqDLu8S2Zi*HB0R)Y|B zA^f0zA*}LCJMmD)2&@I=FT&!RSkJK65yLt})vewe$F*HN(YP)Q`mr}T1a@UP+Ib>f-MzYjWG^3ZBv46t;keh&7lEiOlievuSmo!%3T{3~~Y)RK7V}Bp! zm3sNqdUHrk1F!TekH)m z^Dmv|ixuf-d_pH=sQhv)V;16xK?jm&7dg>wSmpgN0=6Ioz;5oVbfUYl@4PK>qPr0v zcL!;X?#90JMm*{DXc!FeO^oJ6lpDa~BF*C;)r}FXiTmq)u}3hrctjC%LyF*XWXh)U z@C8kS)%5kD#2A=-o@vYol*Q%*pW=%GO{-F8BFAZ=L;&TYVWr&bOu42_o5H3|r8)m5 z8vvy_{|?zm-68Mqn)P&lqpx}x1T1v|r7U?}xAYeLElq!pzdh3pq4MLyYaN`n;loPv z;Hz#2?l-wjks*P$5mwMD{1xu%Zi1Z!MC~CDJRU$;y zt1eJ*>0KVxmR_3Pl-@Wk4d;re)e&0YsSKaqrPXS~Zv49Y9gh;liI7QI{@l#^gH~-^ zi-uA_Gl&=#nKm&p+7_?^U4t-shHJ!9L`M{`y~of=ImY%X^mMeInsO~0eSt5wOiWwx zKtRCPXBynjbQAl-$VVZimVi=0GpjtyqtB?`e&UT~_ zqaQ$nT~yExiIqQD$Q&%;2XTfehE3^U5d6dH`i{n0h6R^h9P416_L<^b87CjbYtU}{ zFnTAEnO-hcXW%3UWgX(sEK4fzpU6^|2sPR6iDp@Tjp3yAEDclK#gMA3N@Seu?S?kX z^3gqJsj1BP>Y8QQoG;Bp!NZsH4PV@qWOd`AKV6SK7TTP1%?izM?v|E?wr8Qz*jILd zqUZw(U45FkMD&~$$(xME`CQ#KMhkuQKF~|EJK~#~GhmXeYYm zXo|HDoK?CK`DR4j=DSUuD)}x9KbJZP8SfcyKaJtrg^t-Sv=sb_`zO+0Iu3mWd(MZqRvXDMX=5 z26O7g-01>*y~0QN!eB;whvrho4l?#ne~ex@FiB@Qt()#b0rr|~R|RK+m?#e>)Axd1 zY!Y$qFN;}|?Wzq(#K4Jf2E@0h_wz~k_E3DI8U^1GqM64Rq_@EzKUgm4&lq*Gw^y5V zk4rTsZ+RLNswnnyn;MXeSNf7F+0lSmfVx+*$DWn-YBvyR#IZ8Q_S1GEKFd_nYx==9 z%+$J>_1AGI=x)XO;~Hfs`ARWoXb!ev(&!lT1x$0^Y0j5EUs8hZF$f-)>{2ishTy5x z9@L)HrpP2m-HF}4Osp`5Am|0GfB(`jG%MaTgyCdWdhW_f6kpp1)kz-kw zpZA+u$zl)Io-Z~V4GsPc8Ufny>t2c2`EJ?~U{r!u1R0itjMQ5=ZkWE!;~#2i@4?Rx z%S~HYuM|(h*N_B^En@e@Bmp_mR)Fb;Q+=Vh=Bvx!#C2i=%Fzii0KcRSn6KU)t?dQ) zPvPekqu~`+jyB*Xb&UgEz;j;gC#DU-P_bP^-8Z)bpD=bHkVaTz5nQmOx^^J1N1gUob3 z_hHHoh(Qz0|o$-cks1(g;=7`Coy6lg-78NSVZ#YJhr#qG~0~l#+0(e32 zks%bLh=xVN{MRYWr>%a~$aXDyewI6LsK=exnS&rWT%gKQaObs=S7`@o;B|MC<#?i> zu82x!L%PAtaEs(KQAdk5QR-Kx7kXTH=|{D_YOU1CTZ}woci|a056WG$KCe8Nwj$3r z-An3PljpAvBqU3oE7-QjdM#dnbBS$ooXI&k1AS=(h((D|rKzkfEzgV6*SNP@f{LuiB z=ZAh$o~!Rf)&Gy>`J&HT%5x`{Yvs8L0^hnk@A~YQ$TRFsG??tUgDcE#3o)yo*xa!{ zYDgTnyH>glT$Lp+&;X+UJZGihz8hal$*&UKE?Qn)eHWz%y}^lZkc(&4x{V-I^eJ_x z`j~X1Q&edgqmu8=u8A5~WGVSajbruQjbkNr2P@>%@;;FR2JdT}!p*9EfJyUx!O7YUE0xtvNDLl424Ud7D%p>FC zSaTdkY_D$sbu3k1eGB?oTQ%!;Sec?m;rWx4r;x(hZifUirIZ%RJbaK|pQVTUd-U+V zMh{o0XFi48^2X{c-0mJ+hL|B|O4UuoJrS>7#oNlI?nX}*h_)`=phcoc@{pu zj37h_ts^EGVT2rf#A95IhmhfB3>2V!$qa~L<{#CUPX#Ur40rdZg6%_Kil^Y$=K3_s zH2ZT)B^tr!IN8JIrP-)Gjoh}(ZCEavY*Hd?3SgRuEny_c3Z=DJnhB?|INAbSDn+n` zGQvsw#yyd-&Y{Tda5t%`@V=PQtd(|^!FRs8>l;$JUi|}oIx|0X+heB~;?fwRfm&^h zYjk5=#;mgTq(?3@jd9NzKhqd*php20lz8otox57FKL)O9idXN3X04x^-!rg@M}~>RQbQAqIy}wxK}ItV$XtLk7iDY1W_}8x(*tZ zw+ngk!(PjqDxP($P_GkrJYV(NQH8EL*N#U2tA(x}$|ND~bP|U)n9>0EK~-b2f0Kmo z!P!b^@g@B8ArWQx>GKtapT!=mR0tXp_j6fk&JjTnT>`*Z$qz9ebI}QVx73(PGr3@y|Vv!XRrbF#5 z?aSd6X(LpJwYtNPA&H<9Hr-&z3p+gDG86ZCCjSc6{s8IldV<{C^m_|vI9ysiR?xMl z1UZl44Ey%knqj7MXF4XUU^`}xCIs$`#K|StZ)g!QLj1BM3LQsh+wQ&dA-QDOg zB5V3@KFOTXqg&zd4P6)*(ux$U1?(=)sHKekM-#5=!sf^q%jjJST7($8pS%dj$4zLC zj7>zyxk%R$7~D2YvhfH%v(_GPS2oujwPsn6L!;FlRqCVdrkU0B7`Qok0foR!0dStY z{J0|zWyPK=o&nl?w_PXQ{4J{L@mrkp-Bvmk}N|JVesMX6D)ez+;>s2=hq(^ZyS1(oU3ZHFjO}${f2ixes z9+bI%MXZ*|Td2vM#Qm^>@H2(;AJ2_d^b0J&m;v@5Fc5oWtUnJ;!uI>eBrpyqeF|=w ziU*uxSc=5IOw-ReJR^I;Dmi5>&{Cr|JweAEw8nPTLp-nI&I^=M^+!nqGLX|T*riy= zoaIw}jES#uND2kL4ZImrXu#L)TO7)H2Z^ij`yBx7jyxR`-+*t(a-74#5vrl^NAj4} zkazJvNIZK9k5u_?{fOlOt&ZO^Q=D%hDl#9+yjCD>F`n`NkQFHX?4>y5bo{&Fex&4p z%2QBCU*GT*$YSW1{4mt4`2=@o5 zpzHCV4)4Q1Avs_3&u9FzfLSl&pU;@XGRYcvL*8au1792D6@R34J`DFlL!Q=fGCdf> zccUg~J2^YX!!m3bG&Ijx4aM(}5Aps3p7H+>Z0|gqN9vZbA3;;=fM!V8h*F@r#^7;2 z9|smsAZct^-0C$6LW{4_L_@&w;gAv>V8{mzoj&W;CTAV|Zfn$9IBMrS3kfQ8h)S?F6g98PWgNhodOcF(N?_x#P-o;Cxe07Cnv7;yEb5NAap}25C z(_;R>dmC+RH~#E+ZBy~W9JG(!e*xKrJVJ9EzS7?&2OF?p4j>Kp;OS+bvR&v2?T!Xa zmEA-^l>7t(ROU<*bIp#Y(FG&rIviwr7-@GM^#ZOm-aYn0@DTj>v|Wm@>M?x%2>Ovq4&)==&AcQ zoa-WV6`?;}_xV80prFoD%hYW!3+SguE*Sez?s11mxdo=&8(S@RoGEvBR=K@e^1P=y z)1aQ1g*v(wo{!8|ziLKg0f{U~ZGt*6`UP}ClY!2Y$09>q3M1?-X!kybfR_AOcD?4$ zYlOP|X_d~$4Qe6_bq{ooGswfUkl`_EAsb@~R1nCS!u3g`35BWsP$}x_LE;2!U&0*`x9~)`Y|vQ?BKnrqmaWCa*s1%pZ7BCs zT!va!8!DO4Di@JRK6I0Zy6@WZMdl^A(kC+E_sNsG;ek75pdjP`F>LejzM=SLp$O*% zNOp407#0X#6oum9;%@5e>nK!Q3Xlt>y1w0r%bPw6=X1CnmSG`gTd&p_ZPHGa97 z;5q-{4zu~bDeaMaDA{8jiNszFb-;2=8Abq%XaWnFsM;dMNu1~;&dleP*tjsI1oy4t z;?!z58s757as>IXcZdwpfh$)vpuq;j8&WAYCruGyh!xvzRYq(}uSMai?du+i9mg6# z{)R(HU5UNOBnFvi$Mld%JjsajFmOvtZ11;#Ce-MI6XA%bZ*>roFv!XPd? zeNruvPB7nP=aQu)X1zL6ijd8{5FtB2zh$6p36%!HBnxd)tL_9OJ{9?BphX??-YNHp4}zxZ=hgwpCV>pcOBdU-HDsna+i;)9o{$k3ojq?Kjg>>FjqWp)Yzg?U}hluw9eGi*MwbQpUc!A2@-GkuWs$H7M$5ACMP`At@}`&%DVevSD_|u?N8Sb z*4`HzNQhg14PpI#u~T*J)zxsD#^KSdiv%MNE8Gao z7f7O&hgoh6=Ds@J$it&<6z1b}x{-&t8;AJ-oo?mfO7hA^V*VDjiO-wa4%AUr&L+&p zVqT|Vh-@IRlL@oYnCmnQcWes``@J&pn4i?Jd;|Ld!=D?GIj&*2IYPesgs^}KfOVyY z;r@MrEhNlFWjzGS*dLka^Mu(*&3+Ao4_;t*5@usHAFg2s8d!ud8?8B4!wxdAp@i9Z%^T+n zU$BrTd7eg?jo7?I!wxnu`d-|a&ChGtAqLitFdMb`P7OQMz*3l3xN(~!8pccXSig4& zvyq#JYS`fh_7Y(>cJpZ(hCLr5LRg)tUx|h>!ZTr$39~VtJ89Sn26hQyHp=rCwNm#J4J=5Qjr070 zhMiXtp1N#5eI2R8;SV}i)bS;pN9nS_zys%IQW>j|^*nD>%G(2a)b!fi0-ZEuhtsJ9KqyiO8;c%DYIk(d`+L>r0u6^nSjMzmp= zAGU}#408ersLn7$)~8>CEE|aVY7M)Hg^Jqn z%X@3sWd?Q;VKxBs)>(!LBXt2b`tk>o4kp;>%L^>xD2-@CFF$7yZRq8PEaK%F(Z*el zT0|Rnd8|deLL=Is%ja1{8+18{1k`Ob&{(%ezXbg@?DBColPh&5Hs_acll@yix}9=gxSc;9W-p5f&Gy% z8+&=%>!$g~0}91y(^pA4n%@RqUWf!#c7n;|aAsmdFF&JU*BMwYVK(@3Qp2t{u#Gza zv*DMo(Xbl~YzbjD0P`RXyV1a&C(MRm_G{Qp26iW5HVE_K8g{dRWrbnR)v$>MHk9Al zK+GFollo0Eu+s>$p_rFw*kl7ck}w;L`FRby#lYGD21kKJWL9?q7DYJb+IBI3P25WH z&u)@UnBt#3KlKq_GAk|$aT!02bRKdUS-1_^dF#l!33;vR@g50LZ zf56SpJaV6cNiEDg%9byU+s&k&pM4+4pxN|AAaH5T@M-3 zJW;LiV`HZwMrm!hkH|yfq(93I1Bl6|cD!VHdj<01`o>>dWMPBxwZSUW*m;yI-5O&M zL;m~=B&*a&d}aNqPU3ae2Yabl7pLS)eJULBG(k@wz9LYUYSTN}F^RVv1ksQX64Bjx zzFX%b;ZomrtQG9Q^3_+qs|y3s+FU1ETZHGT9hds9eycAQx)v>6=UepA)JuK4aS!j0 zb>p#P>FNgm(o22U{tK)8KQ6$l!ppimykHN|)%ft{aPimh&wU;47l<$ZeKK!RplwB7 zpnFbbGLT#8pEvIK?6fvaJCteBy0!+@zjWN*PO{6gw!QPZBjnQk(?G1#{r;)^kp%;| z@7QU{^0M0W{h9uWw|Bkr6&M)bfgP^VEeJGqM*}`U&{;OsfRe?*y2dsG&`?JN%FAv% z1d%-VhW|BCep39#P6*$Ls9NzAAvD6)#NQ~0C9C5LeN(sMNilvX<0dc1OCY|W=1NKi zqgSXJw6N@7Re3Y8`V=wE{1lVX-RsrX7m-|TlBXfLlH1biRXa3k4cnM66OfK@+zyT^ zoI+GA80Ig3P(KvV7*qFgK0gDyQHUNC^mvuc=+-ZkBJF#Y zln3Hpl+{*tzk`I7tqf*l9&Mn@gQQpHcAOkv9`e_Y{WAVKF}?R8BN&bJ7e>S~wTR>1 zDK7S)1}h^S(u1|!#J_ct*W}^wz2n~zE|J0LU9FCY7e2_T+t5ZWBOeoQG@uadh@hZ2 zQH75%a_P4cUT7s5zrX<*@xJ^*5{mcTaU1YWFGd(hejSWAdOC8~vRZWINSE}lGWsBx z?06@bTqrCJ`R9$@cK-ZO9Qz_o{e@`%kKv=8c%xIY0~?!AdM(IJcBw`I=wR=vLQS^gOBIWS9fE*fwwn#;-f%WX?;9}`WQj(OiVTZqHEhZiM%hl0EY|LvO9NThLq^z&Nc20~VAUN)V3ut}u6yE59_Bpz#|`W#TLWwhsW-tpo;ps(QpqkN7a zeFuB#dmDMPN4$d4T>4%&iGO3F?L&{5#6Odp_~M`FIhwu)p3TswPa{OP;9g@PH2Pz1 zqK)s?SHN)WeGA0D<$%^NnI{8UU+xsf4L~{3rnbIYbMYV}TC#s$-?Eh$#tsfZyq#zr zhqSZJkhY@rAuW(}a`!Z--HfdPZSjA=-x&T4MzN;&yKVD!_wHUfFHetYi^d()yKUaQ zXkDA`mAmu&%f{um&08vP9z%>yr5wrrhr~$=3(!r|M3k6PQ;H^4?a7)JJ5yf6XYj4{ zGC7njnOy|4sHW&s^!cu|9FWaC8_ChK)Q&)$lwkr$2Br%;M_AH{2#{>}R#5F3vnVi_F|cA2&} z%hsmbQ-8qj(znArj-e{#SCMUu|I04QIJVM9S4+I)rMaW)^5Uy$UNDgMA!dEhN#@l7 zp4%;VB%%K0W4AI6^CVUfyF8Bcwu+iauCPT0#5ZDxOlmx91ryHf{#SPZ-b`Qo|5Dx$ zV!Qs^@_r=0`U!b2BfO=&zhdQ`7bL4;bOTuB>U$brKoxz1c5&r>_ftA?0~4*hZ#0ST zu!Zr(PL!qPeeK`>4S8RNY<@!CCn7J(`|BuWPx3x6!1EN`>n0oBjP)<0jUK<`T7?H7 z;DLA@t>dzluKT5?8@$xJc(QsyBSR4{rXDyZOAn0Kb%Kdn^0DfV*#eY+ zY`~je)|5`6Ia2*VIjc4;)vZ;{7kNTU!t;<&uQv6?9tNdZ8uc`0!0l+FQAa;%BAJ3B8 z)CHg+bp-x+s}Sy%MgC&wVO_G>Nkc!y0D_cETVw@!mROdejk2 z;atc)(oM5i+mAF{u@y?a2cb)jk?u9K*~fIOH2b*Ve6vqdx|*KwPnydKUrwZJI+PiI z{@QdTvRPzBN?aarV~L1hNcGn3!7W&r{lfK zfHnZ9IHsdO#w?$S-$7+t+3CAsk6ouhn`C2iSN+@h4&rg!-EDG_gMOO9G+*bZ_$^bO zD6Vy%7UN0PqW!CD1M&LsI9ETEt>wkZo76p+VS>SWd*31$tW9_A&|eqiA;c+m4Em-_ zLW0J=v?X>UvF-js>;@d))!ktD2o8-_`hSSrjjEfCh7v1<;LQe^WewOZ(3-gpVXg^S^fC~`|Sg1Prp6$QQZqqM9=xZ z)SrK1IW4H3j#mCT{W*$XivGLPl!Nuk!g> z{n=ysPw7v$9rnsYI}~j8w8MNUv0gok)^+vg3nuYCCR+XZph=ueIe`9r2DR1t^Nzp% zxBBx+01+tvo4iZ%J zDdrmD+k`R-#6MQI3X4A0ceAF@B(pmK4VSvqq|B`3VqjFpf25XOLO7_-aUE!90LWeJ z>(M~i-G0jy0J+Qkar|PVK7!Ydvh)97qDyfgz8*tO^^yr4srjx)b1>ESTHYaLTYEX- zUnkCKtX??*Hyv+M7YHzqz(N4~R`~8+m>hjvE=b|+k{k%m+XaW2|Ks@6JdH8_Z(6;( z!D?n#kkFnOUv=dkMw64&lQgNfa>$(BjX0BBoC(00&23>d-&j7Wi_Lf6r|6zrl*WALU=H*PSrvTtG*s3fZo3GjlL*1xWX@7 zNjD_uUYM({L#CDfbSB^N8{`Cwj7QPNw!Z39<(o;UQcn5>J+4do5lByMgFTqBA8?;9 zHyq)T!lQ4M#YC%I5J8&%;#4>Z!UY!jr5 z8zJNKYkaV^bl;g|2VzI}W(JD{sYCbpVPb|Uj&!kbAYf)`s~ zTAeRSGZ=I8r8OslAnE;5mqcM=WS%<1B@J}_1GO`YO!I3_1~#R?D=_pug6hwNYZGvO z%~7&n8~%90aVjHG0f)_VZE5;268uS%Zt96cXJ?=tDSO)=AXeX;nhu0BenM%Aa}vml zN7ht6(5$?f_LjyrcW(&cFzkA&JN{xD`w|i*ja_uNZKi8n=ov0F)7a;_&=Np#z;_yH z>i#UJbhG!vpPEzLraQ*sI(0wrIz@G>u%ljWlWHgU4ZKd0L&;(u_GHV&8rhaB%eJPL z18(#RmEwer)IkgNRfKYPb&+v#!Dn5htC#qLQZpVzrS>8z{dF_IN1`4=B03lI$wBGn zLRs*AK;nsZs1m>E_y^g z4!rcLY3cX82LPV*Od(SjqBz_?Zf?+$izp-*=oG3dEN)QhF_$bNk@zj(BfMf zO7?0gzNOmF{5Nt9Hhih)1Y{&cQhCfGfI-=Gl=K5uU&-Y(6voHlaW_!$Yi8uaMA4Kf zT()eyin@4YW8%FTxmbYaqFkgWv(uHzp-Ag4>RDx`I~8Bh%zox$kC{D8#GzhQ-Vcj< z2y`Qb{S1?MJQJ;%eS%3m1c^lI4Y|^0cDK7-kpd^|LB2MUx?Y_Me6QG4f;Hap8mBuw z2TtLRaO&Hmo>->2AUHKuRYJ`xt?3#+n7eH2McK9D&uJ)od_h@ zVP`mrNWN1ZDX5J1D2@*+&I?~cX=snNBb;^@VQ}J+{6KsiKl*XK5w;!U2wbvV&4Ku(A9E5nfv<9mv7K6ar|xP; zfq%Te-#u~bBwuSlJ+%irIhW5E#fBvMeH}mJ>qNiC_!*7rf;gonDm^S76>9=+cfQgM z&v&O}g$`j9z8+^AHR2-pEw}1*;&_V3ZKEq-mzrLKmAR#kU%E}AL*kq~TvuL-IA$mL zVx>gVU57FrKhR0`!^O4Dij7IJsJ<~L{0qnaMUL98S7()TT*rC?Bn~@+e77<_ifl|F zv+Lk4F+Qgv2o!uxt3f|BMG;`10bSE9AB6bwMfpSURi_A0fC-(DtwG+0m9x7><;(FH^wLnuJBiWFM`jf=vn#58- zL82fdAd`9(h&n4CI?h*5@HZw6UYF`ZRPVAwr$lg4CIY)P00h+&ES}9x0~6c|dQa z!dqeM|Dp;n0HU|Tukgcvr^1@*n_86Dg6bF#P-*P5GT269Omh_JI?5$haCu1!j;vBg zWbm6c9~gn=gM6U@7;5V#J3fX?yb~)+HZIBM>al&aAXUE(SE@VTfuiv0>uDl_)bH~# zNlvYTXH@GgU4h#%U&t2u<`uyDrmeu35o&k_e-9O~!J)dM0=sXj>I6jXTVM-NU~t#f%-@3c=9|=DMz_9CjcXyYxd9n)QyOhr{=;JqGu4m($yPOW z^==RXH!@H5y75>Jxs7$)uEwI)IG^mso9azu9szC^Z|dJ4&!(=?<5^cTo{fb4ue}4g z*h~e@N^SWkjRfa+*3e`|yS{*8v@2^d+MT|K(JpqZjHOC)|1CyJIU_D3o|nv61xl7X|>3m~Yr8 zvMbVaK>2gUY*AmV1f$OY%n|bf@hfwJ(S>;faL1c`2nN{O7XlZWb%pZLFMU68Ua}u{ z?K;WB?kw-_i^WmajdtCc+s|Cc)qvcDb?2BA6)I6?n+jsIlD@cdO0aN^ohux)rUWo> z=m~GhJVQVQuM^oWTbt1%uE8C zvQJ_BiY|`-i|{pIc`&{sSf|?bPxjJeW7Vw`0nU(3$3z+KD!VGgdxyr#sTl;q)Ex*%P<(Z&6t6+tkk$ZP4nOd^Zc__J|Jan8LPVJsf`Ze7 z*y}cBBxxbf9|lZl*^C%9kmbH*O{o`&A77EW4jtCh;gFvbz1z2zuUAdMi%&?+QfgLH>4if+i+%Sn4X2X7#7| z)ZvS(&sCpbz|cO{_8RrZ4I!DU*&R)9Ohq+9yscw&acTc#ct^f^9;XGI_#=~8KXBr9 z?zhjjI8ZdKT2=X;>!f|=0~tn1oKl~cx-`Bq-vL(epL+I(WPn_iVypVrc_}8KM zV$c4>E_Q#Sx&e)9xDkw|@|aU7E_-lOhoJAMwU8o1SuKopW6kvt+tjd{1Lx*GNuYh16Y^`{|n!#l0eAG&ra`b4oMM>%)H{av-kT0-6 zkS2vQlmhiBx~8V(+kdeiL&tF9^8IqRdY>>IEAZ&dtyWKhhGk|k4Ed5O{lT{B<9qyC z)8efMZZ&ooI~(!#Ko$8D0U4rGpq|&OQ>aFg;|Y--qxwnaaN}t9#qF$2*tfz%6K9cR z;sN*o+C9@8s4T)|P32mC2s2*nXF#81$=|)})n;?pQ>`{zPVJPyx>c)yR#>f>#X!9X0EZD-;`lBKFvOrg8V6nNh~h z-$zSXzl6s}nY{XE<<-%XR}u0uEMBPg*BS4T#fG~W4H@o5A|nTymZvVN zfPnvlaeG(BakSwBtggz0Q01bu7IVSpxLOJ^J$-DM;JZ z?4v#;;^>*5hgu@*A98%(S5&wF7n;#x}f=aXy?q-w+T!K~iBbLt4eTv(18MLex zlWjeZbrKzyhWwvY`YM&LauMu>cpWVh#r5ad5MT$AeVcHP;4awe3-gg3I9|r}1^74j zv5gxp?ull^t!-E#@b7dmW$hV87rk2=3@W(7$=&Su7e$ter$tp9Oa=iT%W^&OLFD~Q zr*Rjwx83X-D;EVCS)2F{I%5Ok*iZik=Lhj^^N%1(@Y8x$XNiq39lzXS-({&Ub`Mj$ zw1ZpN%n2>R2fZeN#W$NtB0R6LwFS6!Y^WBykT{%z;OYy}xrIQTAqX%uB`T4fmh#l; z)Bx@UXPPrd7xF_;lDY;^+Ff*Gp!bk9Ff!TFmGM;i_-U-e!IuA6kIcq_wT2pjL;M^c zNR0M*dQbU^YfsetfVN0>SsZy)7yax(F3sN3(sQhwz`gCn5hGLgWOL0LPbN<$ZOLaz zB3EV8{ls3x&WMAY#C}e^z;=EJJDkiQO7q)j?H#OO$zmu1F7Nv1U3;>{_eVwlC%deO zyrliTYA+$u=98}T@Q?i;-WaPVf}Y@?+N&OPqkFc6Iz~(Jmc&v$S-t8yG^aO;59f7T zQBBGo|_Z?Y)w^UcCc+?_ygo5Ss0uwClBI%X_}+un_aB#x~;*05{CZ3R!y8{YC7j zH#jV+6|l*n)GHG+xYWi;=Mj(|$XD9Q$S)>b;Vyybk8Q{ATN&S=cloGI-vBRp2~Li1 zP>3TRYz2}RlbP82@H-NG{Q}UVa=B^ha!{|o8N~TOxfC3ESd#jJ^SSD@OnSIu-}v|G z*=Bs|>;EBqh0u}G8*R>WcWYb+-hwdMM-hlFXror6S!KrxJWDl)n;k3X3KsSaG^v>) z`-s5T7+xFM`hq6BFX{(jelC0`;p2jd zarwdWaRoT03U=o}k>~khJflY)*&c?4U9b$s$K^|tqz@JS*&GH&VmXP~{|3_MpMUMC zbV+Vk(@;E6OE57EmrLU2;=R+wGTy|~ zPU6}^di;-!kPdin!P0w?4>n9i8iLUUrN|;uA57FRJ5Av@fRT_P`4S}PHba93hNrrM zbcjHD`OnaMT&win^o!`dCY+&n zQD5VW7^pDq&_8^!B6_jl1uX(oLWyI7$+^;)9Z5*y@Z`%!=yu?hJo z3fE}hG{+|3?}|ypv39=dai|mh!c`8~L(5C9@Kj$ik7P{3<~T_mF`g9707liHf?(5| za!dlOs6`U8n9vQ+b$HCh?>wgAcfR>uV15^x-$mxP9>2t2Y<{`hmESGJPZ5fH8^4>t zMIT6{038fYXo&M%uALu>3om$o`72Cl6? z9)EgDOaY%pQYYfpENuywV`35xu_IP@z^DLk!T$J}eH5^2y4`~vmvWs$6Bw(XK7jC* zZROyaAhQv<79wEx+lcw$B=3?`I=!cIAk+Zc zstP5`!w~y0LLL(3>fkr&p8@wVwNSp;-e>?Pz7F<`<6p>6$Jj3>=!aPGBtGC@hx{Asy#(&K-e2XO6_5K8Q`zS<{Y(+azK*9%9AQf$58V*9OI5K;IW> z2jc(VGjK$|0?auJWiDCHiebt#0n3C$#nvINj4&R%-8ldnsWw2hbsgh?0Zl@rtk+Sr ztA~O8`Yvz8(gJSkOg78b)SY0SroWs+2d2L5o2q1Q9Huk4u-rdC@)`MB<&+OA9^#Ar zn*5ye>_7BBRIlr?|Kv^i=i-}v$Sr6cITrPVv=-`eF+7#Yv5Ke{e!^2#NGZTv+!x~> zc$^+Dbo?vA+W;ShIpkveUbF*$hANpKAO;XaAH9$N5lCrR1tL}yNQj4FRbbRG{Ex^* z5(kPgp@twl)sQ;G3c`WR;~U5MP?&a?-~k>}e2e`;=x-=;`Io*6QO*!h3?PyPB|maI zNvpnu(#nn8HMhEU;@MX<^8R(?Bc`JIZtwF@g2L^H?k%F)1n6cF_D z@YSFlVD;jahC+?0PB*2F$FH^Sux-*vTqk7eaz}Q)(U1%!E-oH|rY{WP0BiN3rf*d_ z{P{Co^3|wNHFX+{#e(nk zK5o;kX^$3+q&&cXLYenfcjhz_qBn%1H^LXIV#lmr>x-Sn2Xy!ePIqeinN}L12q}C{ zeIF4*{1(VNH(_fY`>Hv&3&vM7f`o%5-8i;qBm4x{#H9m+;xX9L!71anxHbd(J8-wg zVPI4)SlkA`0ZL16{3!@fVtPZGAi&Xikf>#mmDqb*=*%+oba3dP+QzcKaArZE`0ohk zNW`!jI1Zte=@{&jA52!jqgIJp3RB-4)z}ok8dGKY#n4A|nfPM2vQnsTY3g#$U}u}o z*8xK8o023m>NcVt+tpmOKRwk$Qbi~V^hX zO{)+K0}IOPC0x74CL1G88mn(7tcw;eVcVh~bVljWD0@+4 z?DbuF>Wa~5?1`8giAHh-;{A~xff$bsMb!OwNKWh3LC8taW5ugccNx?^R?iw{EahV)XEV!w#5Pi=#Qvle8r3SR^kelNX= zBBrNEpQ(2)1GVeC@hAodVW1=EN?**(a2L=!GDXsnE}g_H#WP6&bHwr(CSqIxN<2|K z1F7oHFHjy@AG&2A#L2%ra!_gz0NRgCUm*74$NC_}-z~De(mygUl9DlW>&=J4IEjIa z7<0K5553Lvqk)7haUWE)N$BHL=nu8rWHC|)BB1K% zD*1&Ul?STXEsL9r4V5W>Kk?B)q1N&>@ZxJ7EJ5~jZok{Odm>2pNUKz?F|zT z*zb`kh8ABej8DW|cty-EKX>3e&}R3u zW^8Tj!i|3`iiNZXn%>`2#?M}ANL&RT{}hST?bxE37*VmOtVY%L*BcGM^#;a+#sM)(HRsJt(RD%29**NTPRo)NN@&&LPZHR()bfGR;^SgK+X!}0D=l$c& z^JLCG`|Q2;+H0@9_S$P-mbwTB0-&4lj`CKay|j7AD^`EomzN_FhxdE=Zsvr^aiv%6 z7EAV9#tXTXYnK4T4!H#&$o-pe?(1{85&aH<9dcVM_+_6J&V8!O&A`AGuP!nheaQR< zh#wNp+($26H0wZE(HP_wcFgXK`bHMCO6^BwsBv0l<0HEpCo&qIQNz#J+5kIVDyF&m z)j|_S%A1Vl1l;W~1l&XwZ`94ZlG1naie#Tdh8W9T_RQ55kfn^$rmscg8iD)x3So7O zx9X^x)_0Seo4i>$^>uOa;L=9S+NEE??yc9H{o#x!z| ztp$Y%MMDWz)EMbYxP}40i8Mtq^Nct6UxjA<2LC*(UgLcoVg9RLV{Y*(bBi?z>JdF+ zzj@NZC%?(ph5XAE>)15 zODB2;vbU}VOs+K9>&vZ+ec9{eiMn*hJ|gx3?H$4H30SKbEkq?}LS>jV`q!d*D#MF7 zSez@qu233vr;sGG?gFDqqLEA?#2KXpGA!WtjuOr3!@JU3f6GB?)m^UiY66SYW^YFq!&R5@Ko$$ zLV}7%WrwA;18)?P>oVD1qAru|KkoraU52OOAe{JDSY62QcskPff-!D%U@V7+a1bsp zf&mbqwfY8uENnb9L$W!0A-PCJU>?>=c_*fQ-K^utzld1VDneZo8k(U= zdPNl8trnwKkFBM4JkO}1d-__9(_sub*+>m<)wiQo6W;ez$yRZti8TI_Ut6rWmOy3l z+h}Pbvkbz)egvC*y*o`fIs*%~m0KsFw1xfNI|C^P<)xW9^WFgFDQY|ZKTq4?-@MOJ zO~~_NPWaR^d~A%SpJi!XO`D(SP1zsvvi)p_7|y_UNOSBCF%Rxgd~Ao9g&<^}(lmRk z_<>#2URL(_C|1-B-xo*vU+TeW*5!sb@ zOxff1P1nL>rM^Zpbbm`5mMJw8_iwOu{xUw8A2wn0FPC>l+2a+0d!*pXL!FBJoqdZm z^(O0F`+OLmy-(C;YE0RB3cP;YuJ5=GOF*t=TPKo=`S*U+m<5(=o{2r-5wd1Db6QVX z-7=46=9t#NaJwBS>^lvw+007C+Oq28k?2t<7)~y`TU|$DjZi(X2fNselV9!2GhLx2z{*xy&hVRwvT5&33j4+Z}q55z8ULryOMbImb?d7u^ybY-*I8Sz9n_(>X_!f-(1{t z7b|55fH)AiP8;U{c|gt%UWQ!;`glbVwa4YV1iMo;tIjtbH^SNW$%-qyDqlp2;)&$CGCk%CafY zHW;qNk|8m04V@^S9371%=VkT`?2{ZviZzdChs27yPvXf_`)79d*Hx3tIW^GVj~@-h z#v&mIfZ|wllWLSLq@k?@Dq9q7UC$?o<;{n;)E;}ll+fbZPvA=y0qyAZ9=l4-(fx=O z$#(|7dTQ#}O+r7@yM-Le{33iH0^SVn+-#Ka+%~1Z-3vdtBNI{9#;oqn_9i~qzM`=$ z(dtq*=28}tvT!8eJEXkHKdUn-NXlZPs%5Kwf=Bx(0u&5%r16I+0e+^U&N40Um`O+J znl+61_MNMwq2l5Av|7Vb!IP)ycVdm{JhLgvbe?(_fI$dwzp7vDFovPRR5=}o$uCUj zDjhLqd_{h;calF%ZMsIbvWR&~p9w`moHbo<->)dc;fVe>Ta}EZveVRhRZ)`yAVp2t z(uTkiiH%ZWAVu{ak{Dg)xPTM3-iBI5v*@OTT42#<nFnetQW1B=-4?e|3m$>|LHHbv@adj@h1kKLqFXf*VCxtgM1Q7) zRKK1wIP|D7{uBIH1sybf9^ZX^C*Hi9*wHDqKcUdh;B}0v;J%50uvmk) zi}mTl2>YF5w|jO@Hj!e7CH2PR0RRb3snvlXNVI_$E%w{mKTNQMT*d@#F5nat@3(*c zZwmV-I9Org#B~4^{TyHlH4e0r#fEA+3U-HG4FhE$;083WcB;W@w1h&QqYNO==Wec) z#-dsWqR}?R0JyPeS`ZT@;JtYFe^ZIIh6WTa|6IzwW}yUcup5%o=XrZ9qR8L8i0{Ivc@dAnp{JxqOxNU76=8dk z9;c%Y^o;d*yqhrl>1pU*wmq4-f))Mp|4=k4>xR>q8Kg7shV+fhE18v{-gM4yL^Ms;u&Z)Cgr4;#+>b=R5^U7GuDrIsN-e(9LL|{QLF5Y2N$U!eE zO#|1$R~Ge+5jT{$=?WBbyW+elMTI@nZ;`^zY=|sE=R(l2)50tWUPN5H`4-ccv{cTX z*j?&J6n9JP!&@mwK;Ek#fv{@Y1`sw5G@U|vn|0YO{@K*~5_&Jz465}bN=SZPfhBKT zKsJg5yJGK?Ut6*4^)J>qe@}qc9|)jNMH+4)5O2QD;lg2n7@4vI8th$PfE(unj|sK2|e zjgwRZR%(sEO{`nYx%tSf#qb)cN#^$ClbPSdnz0+ld$=v4@Y)=(h1c{L>GelPhOsW@ zC;yAM(9h(348t_N>Qg(?sMEFJu2Y)D-pjWbaboa*Q6~l1)F?Pzt>4^pzQ~%m+$f(q zrF-%jM|nuyc!hO{9dQ%Qv-r)V=&!`@bP|Plp+GIAa?%G_5lp%%+9C>wC})>Tsa?@N zk2g537{=~jo?I74&t9baoxBdjIDw15N>QFU71fgwDIm*h%q4QK9r8@@9_RD0)t5d9 z^y13o+v(Hu${wC8yKk=SdZ@Q!`9nG{zk288pV*;%IoZzDU6+9Sbw7x`Z{_Ay!Rfg> z)c^R-%YSXm&g;+TaQ#oB#8?Buq&q+5vE5@8C z8;!co=hi3nrHn7IU>R0Rq~z&0ISI{085-B$7~6cEq$gN^UrlyOsxKSbepU?6JwyVr z=CoMDRUYr}vo@sLS=XySmN%cdrGndNx!Vd9yr;)dy3+dKPD%AdNcBC0ttJIrUdcS9 zjdNTGz{tZK3EGsi^otuhtM zA*XYok%#xkCr>7#^KD(?7axZEvVo)?I=(P+V-W#%SGGhN{sej)&sa)1K@@d`$~zF=N2PCWKGzk!44;3HMfg0-5TcQ`TjaDQvkALt?E1*HKVlr> z-pYb*b!UU_WmURU*6y)q%&RATIpo8Q&CGtHv?9FE#8AOkknPTBH3HJ*L|p+xonOGE z|H?M}2!@xFqnw$-HoHtM+CTk2VC3ta^0DOjArYycSy*=U2SLMs$o9ra<9A3}|Fgo8 zksAjR(wPfd>>!GLvuC{f$~al$YBf$Poe%g-h(0@kyDaft!Mu7%2f0(>RbY-lL+D)M zS9nMA*=fW!eu2%l4n)Y-6^yPDMsW5{F_~nToW27l|HdrYrGTvPZsT*j$M4luJ7$%J zbEW0p?A5iM$L?Q zM+`zlw|i^!;4IB%E*}~BOWl;v-R<{0uPoRC{+9CiAjIYl*g|a8qcl}3BF?J9!eq&hv}ot$i5@U>`1%!*8!I3$gehY<|=|HoSJ@jNO`NZfV+n)jzdk7)n5A$po6Kh8+Xf^V_Qy5jW`M+TNLoN zcQTCQpYI8BD@{E0!-9CTj)n9sHp^KAFg6ga;&5;#YV_(--p7WmiZrekSs!-ek&an7 zj{mN>w8omwT5WcDQH}R~s?{1e))YO)Cf^`(YvBVuiUymQmKEvWVeLfiHqQ?C{G9t|7(VPe%rL?I*cChvbG;Om`kX7H$}@ zhNaj9ddv6VvV&m17RR6KY z>drNvMUF!BaYYMrbj+3fasvs!%mDbUHe=Ql?Xh8(K`FlpS+ZEZ9~Wu-ON8b(5^O+T zdV8d#lHT_M=yGJHe3%!xUh7#HZP(f3c2AE13j&{xhm{X6boUM6Qgn~<;YG6}jdzp8 zzkO)crSF$_&uGqG_VexAyRX!Uk-APG7%94ey3E*m2CHHPgiHOEqA1}Eoyfa+R%lf$ zW(05dO5nBDp*P#&kaxTv`3*$|t73=vk-Lg386UoNQgBSS?+CX(MzsnlAa+bse?7GQ zUyEVu=^%VkSK!lZ9_4KBEYSBjv&&gm>U*HUY+>!g?Ztft__EqDxQvR6quE;+T-dNp zTP3|?DOcQMkhy3{8!>Y{B|225{wUjyasTAuq;76-?@lwt`d8UJt<-x{p8zxm+~}ZX z+g}P8NU=s(^}K_W%w3LKc9Y5R^<>~~hMd!<7`=ndZdOYiKzZIh!cmI!45I=%mJcv& zk5mZ^$+Ab<7EsF`25X?s4nQ4X1lw^7sOTemkKMgy_sfk=jVSc$ylvF(G1~{8`{Ygb zqjkhD6n(NEEu2EpB^K>gjRouh&~1Hh3M1PsKJgTzFB^Gk`9-YYCBG}mHX2&0x;~nc zv0Rm*wfqPiKyRE3~E6 zne!s4ZR}!Jk)ntM&j&hI*4!gZR`xnbx~b8s!j1N^uvVjKLp5t0b{PQ%eRt=TGrTb% zn%$J)!_OLqYz_8T2PU56^0yxtr0n)s5bAs%)Z!T0ObwSRS_<%DSBGP#9l(zbu-w}F zYhW2va0f8E24L>%8Vn@-s>(h=I~dK*>KcsWap*xixCb z;xK96R8-naqbz&yqSqGy@X9sk-i6nS5S{m)Lj(L;yT;G8so@8_&Hh5s zo_K|aNYJaw86S?Zxc z{kT?;2~4kHQ_hs4Dt<2#QG#8xiK1GG`W$>q!+1n`#-rNp%OMO;1SkQEW<3KieI9TG z?Q@R=G4FF)czWk>f1WH6!dO&qBeJzn-TPnPQ4fB|V)R92dVl}6BIyWFOdl0#-FoX# zKF~w`h+MZm&w8T+?EP_?b?2GNO=1-mbmzGzSa;rq?tH>b*PUxf7D=6iB|}A7k#y%n z_w&aDx8bOZ4i!-R9s6E7&hP3y^7&3=)b1&5=a=SUovu?3btw&M=WI4tl#%E-jkev{ zrgMYDrgKW`ie)bfV4YWxg=K`z8#@35fpXo`Sk%O7SjH$qf9hV9DpGwc*S%0}#wI_s zz7?Z0aej(0w-Z4Vuiw?8{7rtFx-BWK$7@paI~q%EvK+tyChqZW8RB?DGnL>ckMF}e0MVuagM5xMp>e1Z-Z zZcp)n{=~LwCnuTI%6UCO5w5mscA!llZMfMBU9(pf#ez2HMDAkmuq#E;T$`^0PV4FC z(dK`q5kzan=(y6Kk8{m!>XwbkG4Eqll*TKhXbsZY!F`5xVt0M3cRNZsqjeREh7vn~ zZczXGU~B1~wDh2aYw1#wMN*U0!lH*V(b5O(v-6e?wMmDTF5ID|0i7oW3cGA+m(p4~ zJ0RqdU5%(e*E&{ISB>bm4viSJb*GK!vmuQLGpubJ_M9tz!I}QGe6ck3jZ@bfbL!1=-GFwFIzE z&cPC=O5@M!S&A_Fn4E+@ox>^*V0p$$hLKuYwc-j)bjii3QfENB{tW=dnsp|m$3HcW#!`>lqe1RgaE5W4(|%tq0u)}z zuZom4e6UM7H<}ehuK&GiNq6P=dP}{+bVsqXci$^cPnY2I=J+of?z~_5FC`@RuJd2& zDcAc;1puyDsA+3xj-IvK_WE$zH@l@j{lwX`V#!{w>;0eXS#|c4UeD=$9tH#deV*Qb z$D~>BmCYOhsO(`?3#*Os=99eTgM41N&Dw8VaqO6Jh1yMl59}r`7}I^ckM0SIt*f)= z2;V1d~7B~HvUT7G@UTMc2;TiIY7tfzR*1KDtU9Y5(R^0j!E>wUU@e!@?ScOk#| zg)F4UgbIn=ICGN&UN7Jm@}hO4pu%5aJ^4i4Z{qZj^<)pAsKq~mY^~j}o}?f5H=^1A z^%d|w6ujNS@E$$J!MjuN=CVgQeKGL7Ur`KrrvC?a=jk=LckgmlVyyartqXY<^6pLL zM<%c7x%ktG%BRbXv_u|VI9_VQy2Q74E@-4D5aYw$w?qEKxp{d@=~8O2W0mcAUMN1N z=p~A-vWfbd0pQg^qg$ppc0(uOy^!y%v{t@C@0s6(UeYH}vGhc8q`%KkXn#n0B=3|R z@Jo792e7*9-N&sB0t9+xxsOE;K6^(|3GbWyOl?Vj_8~`RuJ`%T zj?_nht`D~m`pLq4wWWKn*wuL*rDaD;SuLK^2P)o@E8&36o{N^6qMd<=a=wk}n6Bpnk#qaBRUrpmP_iE`4#<)&A%mD5m_PnVJqF zyDA$P_`S&Ns;nsyzCstYEMw|kmii&g_AU!n_stO7y~~ijVCMGi`21;{jFH9J=YGMr zvgVu29RoK>-1rxAHoV7GaV`oU0McDQ$E>8Q`5QcHG_|E7xoPmLaqgQ)C+%Iw^);-A zWjGSM*n3{Iks?3D*%Gwr5Kl#IYWwC|*5o?R$Ne8Yy|_?&JC3I?0u+96L?= z&WjpIrl}*eX{bxxJ53Z5_su&(9VKg=tp^2do)m=92Ena(ql+4~uIlHLUvG4P4 z09;3Ha-X~}SGefq40NIBcl>C94Mjg|(KnfGQ{|`?+${S9p8&4QIt;uyc!>=6;`XzAHUoqe z7bcP-^d}`n<~^130PmEOn``;nV+IItnrUJ?3J z*>?0jiy*EDrp1I!cDl2ibPk0;i^SG%*y>9jwz;H$?GnRw=xx+F{wpxFQbnCEL0u7m zdLw5$nqydnDys+@RNN^2tV>{n0$?pUU@aYiDMEjm6itvsj!v)x*Vh*nNUc|YCk`t; zVtZ^d&Fs>=NiO!fU##W`O=27k=Kw2@hKlgX4Np4~FZM1&m~@Hw^uv9Et|(9$Hk;cS z;=p~tie2n|1GwOOTTvSkK>Ik%+)ucAiS&z?N}{`Kuw? zT6mT2rqbSX8<8|pajMvR>6<=&AuCQjppd?~nX4l7w|xa=>Ik*jVW${z9l(3)`3%T8 z8ew?esyceBUXaYlNr5>;Iy>wj6$@i4M)E;Y#rrM(;=&`c5m@r{Cxwy%+mHeq{>MoH z>Fp*3)+j-8*SOe|7vezwz|<&y5KXI*@lPw2*7vy9+cIz(ti zxbCpCp7qTD)Q}t~BV@SE6rn%AXZd15&63B`itt%F+h@>RSe4K$Jm@p*(aq~H%P&wJ zLLG)io+Hpc`?|HXF*IAYA^4&(!uu!32i3?{_dv9%k*_~Qjr;|TyvI4Nk)_R9BX6y7 zjcnsAjr<`89Q+Cyn2u68+Zwt8B`8ClTsje-U>(@W7>#$@$S:hQ4iej{Hj;(ZMP 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 literal 0 HcmV?d00001 diff --git a/Biopool/APPS/mobi.cc b/Biopool/APPS/mobi.cc new file mode 100644 index 0000000..e8a1016 --- /dev/null +++ b/Biopool/APPS/mobi.cc @@ -0,0 +1,35 @@ + #include + #include + #include + + + + using namespace Victor::Biopool; + using namespace Victor; + + + + int main( int argc, char* argv[] ) { + + + + // string inputFile = "/home/riccardo/mobi/1AB2_input.pdb"; + string inputFile = "/home/riccardo/Victor/Biopool/Tests/data/3DFR.pdb"; + + + ifstream inFile( inputFile.c_str() ); + + PdbLoader pl(inFile); // creates the PdbLoader object + + + + Protein prot; + + prot.load( pl ); // creates the Protein object + + cout << "!!!!!!!!!!!!!!!!!" << endl; + + cout << prot.getChainLetter (0) << endl; + + + } From 383eaf0b3959ed6e8f8997c748609e79b200a00f Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Thu, 2 Jul 2015 18:00:44 +0200 Subject: [PATCH 04/61] Start project --- Biopool/APPS/Makefile | 6 +++--- Biopool/APPS/mobi | Bin 750654 -> 0 bytes Biopool/APPS/mobi.cc | 35 ----------------------------------- Makefile | 6 +++--- Makefile.global | 6 +++--- 5 files changed, 9 insertions(+), 44 deletions(-) delete mode 100755 Biopool/APPS/mobi delete mode 100644 Biopool/APPS/mobi.cc diff --git a/Biopool/APPS/Makefile b/Biopool/APPS/Makefile index 31ca59b..cb26b82 100644 --- a/Biopool/APPS/Makefile +++ b/Biopool/APPS/Makefile @@ -27,13 +27,13 @@ INC_PATH = -I. -I../../tools/ -I../../Biopool/Sources -I../../Energy/Sources -I. # SOURCES = PdbCorrector.cc PdbSecondary.cc PdbEditor.cc Pdb2Seq.cc pdb2secondary.cc pdbshifter.cc \ - pdbMover.cc mobi.cc + pdbMover.cc OBJECTS = PdbCorrector.o PdbSecondary.o PdbEditor.o Pdb2Seq.o pdb2secondary.o pdbshifter.o \ - pdbMover.o mobi.o + pdbMover.o TARGETS = PdbCorrector PdbSecondary PdbEditor Pdb2Seq pdb2secondary pdbshifter \ - pdbMover mobi + pdbMover EXECS = PdbCorrector PdbSecondary PdbEditor Pdb2Seq pdb2secondary pdbshifter \ pdbMover diff --git a/Biopool/APPS/mobi b/Biopool/APPS/mobi deleted file mode 100755 index 14e24b2d5b87a1e858ad4c4acf70a175ed1b6758..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 750654 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:hQ4iej{Hj;(ZMP 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 diff --git a/Biopool/APPS/mobi.cc b/Biopool/APPS/mobi.cc deleted file mode 100644 index e8a1016..0000000 --- a/Biopool/APPS/mobi.cc +++ /dev/null @@ -1,35 +0,0 @@ - #include - #include - #include - - - - using namespace Victor::Biopool; - using namespace Victor; - - - - int main( int argc, char* argv[] ) { - - - - // string inputFile = "/home/riccardo/mobi/1AB2_input.pdb"; - string inputFile = "/home/riccardo/Victor/Biopool/Tests/data/3DFR.pdb"; - - - ifstream inFile( inputFile.c_str() ); - - PdbLoader pl(inFile); // creates the PdbLoader object - - - - Protein prot; - - prot.load( pl ); // creates the Protein object - - cout << "!!!!!!!!!!!!!!!!!" << endl; - - cout << prot.getChainLetter (0) << endl; - - - } diff --git a/Makefile b/Makefile index c0f7aa4..657c031 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ # Path to project directory. UPDIR = . # Path to subdirectories. -SUBDIRS = tools Energy/Sources Biopool/Sources Align2/Sources Energy/Sources/TorsionPotential Lobo/Sources Lobo/APPS Energy/APPS Biopool/APPS Align2/APPS +SUBDIRS = tools Energy/Sources Biopool/Sources Align2/Sources Energy/Sources/TorsionPotential Lobo/Sources Lobo/APPS Energy/APPS Biopool/APPS Align2/APPS Mobi/Sources Mobi/APPS # # Libraries and paths (which are not defined globally). @@ -27,8 +27,8 @@ BINPATH = bin SOURCES = OBJECTS = -EXECS = -TARGET = +EXECS = +TARGET = LIBRARY = # diff --git a/Makefile.global b/Makefile.global index 1f78a89..d571ae4 100644 --- a/Makefile.global +++ b/Makefile.global @@ -106,11 +106,11 @@ SUBDIRS += _dummy_ LIB_PATH += -L$(UPDIR)/lib -INC_PATH += -I$(UPDIR)/tools -I$(UPDIR)/Energy/Sources -I$(UPDIR)/Biopool/Sources -I$(UPDIR)/Energy/Sources/TorsionPotential -I$(UPDIR)/Lobo/Sources -I$(UPDIR)/Align2/Sources -I$(UPDIR)/Biopool/APPS -I$(UPDIR)/Energy/APPS -I$(UPDIR)/Align2/APPS -I$(UPDIR)/Lobo/APPS +INC_PATH += -I$(UPDIR)/tools -I$(UPDIR)/Energy/Sources -I$(UPDIR)/Biopool/Sources -I$(UPDIR)/Energy/Sources/TorsionPotential -I$(UPDIR)/Lobo/Sources -I$(UPDIR)/Align2/Sources -I$(UPDIR)/Mobi/Sources -I$(UPDIR)/Biopool/APPS -I$(UPDIR)/Energy/APPS -I$(UPDIR)/Align2/APPS -I$(UPDIR)/Lobo/APPS -I$(UPDIR)/Mobi/APPS ifdef test - INC_PATH += -I$(UPDIR)/Biopool/Tests -I$(UPDIR)/Energy/Tests -I$(UPDIR)/Align2/Tests -I$(UPDIR)/Lobo/Tests - SUBDIRS = Biopool/Tests Energy/Tests Align2/Tests Lobo/Tests + INC_PATH += -I$(UPDIR)/Biopool/Tests -I$(UPDIR)/Energy/Tests -I$(UPDIR)/Align2/Tests -I$(UPDIR)/Lobo/Tests -I$(UPDIR)/Mobi/Tests + SUBDIRS = Biopool/Tests Energy/Tests Align2/Tests Lobo/Tests Mobi/Tests endif ####### Implicit rules From 02e8d1c753feeb48dc534e048163fed835b68011 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sun, 5 Jul 2015 18:33:15 +0200 Subject: [PATCH 05/61] delete redundance line --- Biopool/Sources/Protein.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Biopool/Sources/Protein.cc b/Biopool/Sources/Protein.cc index 6c9dbfe..b424590 100644 --- a/Biopool/Sources/Protein.cc +++ b/Biopool/Sources/Protein.cc @@ -18,9 +18,9 @@ // Includes: #include #include -using namespace std; -using namespace Victor; using namespace Victor::Biopool; +using namespace std; +using namespace Victor; using namespace Victor::Biopool; // CONSTRUCTORS/DESTRUCTOR: From 1fdb574342f8d89a1a138b757d0dd85ab3444188 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sun, 5 Jul 2015 18:34:46 +0200 Subject: [PATCH 06/61] create ProteinModels and relative metods --- .cproject | 60 + .project | 27 + .settings/language.settings.xml | 15 + Mobi/APPS/Makefile | 54 + Mobi/APPS/mobi.cc | 154 +++ Mobi/APPS/mobi.o | Bin 0 -> 20176 bytes Mobi/Sources/Makefile | 62 + Mobi/Sources/ProteinModels.cc | 124 ++ Mobi/Sources/ProteinModels.h | 75 + Mobi/Sources/ProteinModels.o | Bin 0 -> 45136 bytes Mobi/data/stdout0 | 1695 +++++++++++++++++++++++ Mobi/data/stdout1 | 1695 +++++++++++++++++++++++ Mobi/data/stdout2 | 1695 +++++++++++++++++++++++ Mobi/data/stdout3 | 1695 +++++++++++++++++++++++ documentation.Doxyfile | 2303 +++++++++++++++++++++++++++++++ doxyconf.doxyfile | 1432 +++++++++++++++++++ 16 files changed, 11086 insertions(+) create mode 100644 .cproject create mode 100644 .project create mode 100644 .settings/language.settings.xml create mode 100644 Mobi/APPS/Makefile create mode 100644 Mobi/APPS/mobi.cc create mode 100644 Mobi/APPS/mobi.o create mode 100644 Mobi/Sources/Makefile create mode 100644 Mobi/Sources/ProteinModels.cc create mode 100644 Mobi/Sources/ProteinModels.h create mode 100644 Mobi/Sources/ProteinModels.o create mode 100644 Mobi/data/stdout0 create mode 100644 Mobi/data/stdout1 create mode 100644 Mobi/data/stdout2 create mode 100644 Mobi/data/stdout3 create mode 100644 documentation.Doxyfile create mode 100644 doxyconf.doxyfile diff --git a/.cproject b/.cproject new file mode 100644 index 0000000..63da05e --- /dev/null +++ b/.cproject @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 0000000..9ac00be --- /dev/null +++ b/.project @@ -0,0 +1,27 @@ + + + Mobi + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.core.ccnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml new file mode 100644 index 0000000..9a57648 --- /dev/null +++ b/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Mobi/APPS/Makefile b/Mobi/APPS/Makefile new file mode 100644 index 0000000..fcd6e6d --- /dev/null +++ b/Mobi/APPS/Makefile @@ -0,0 +1,54 @@ +#--*- makefile -*-------------------------------------------------------------- +# +# Standard makefile +# +#------------------------------------------------------------------------------ + +# Path to project directory. +UPDIR = ../.. +# Path to subdirectories. +SUBDIR= +# Path to directory for binaries: +BINPATH = ../../bin + + +# +# Libraries and paths (which are not defined globally). +# + +LIBS = -lMobi -lBiopool -ltools + +LIB_PATH = -L. + +INC_PATH = -I. -I../../tools/ -I../../Biopool/Sources -I../../Mobi/Sources + +# +# Objects and headers +# + +SOURCES = mobi.cc + +OBJECTS = mobi.o + +TARGETS = mobi + +EXECS = mobi + +LIBRARY = APPSlibMobi.a + +# +# Install rule +# + +compile: all + +all: install +install: $(LIBRARY) $(TARGETS) + mv $(EXECS) $(UPDIR)/bin/ + mv $(LIBRARY) $(UPDIR)/lib/ + +# +# Call global Makefile to do the job. +# + +include ../../Makefile.global diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc new file mode 100644 index 0000000..f1e9922 --- /dev/null +++ b/Mobi/APPS/mobi.cc @@ -0,0 +1,154 @@ +/* This file is part of Victor. + + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + +// --*- C++ -*------x----------------------------------------------------------- +// +// +// Description: Mobi è un software che riceve in input +// un file .pdb creato con tecnologia NMR. +// Questo file contiene molti modelli della stessa proteina, +// li confronta e restituisce in un file di output +// le parti mobili della proteina. +// +// +// -----------------x----------------------------------------------------------- + + + #include + #include + #include + #include + #include + + + using namespace Victor; + using namespace Victor::Biopool; + using namespace Victor::Mobi; + + + + void sShowHelp(){ + + cout << "NAME" << endl; + cout << "\t mobi" << endl; + + cout << "SYNOPSIS" << endl; + cout << "\t mobi [FILE]... [OPTION]..." << endl; + + cout << "DESCRIPTION \n" << endl; + cout << "\t Mobi è un software che riceve in input un file .pdb creato con tecnologia NMR." << endl; + cout << "\t Questo file contiene molti modelli della stessa proteina, li confronta e restituisce in un file di output " << endl; + cout << "\t le parti mobili della proteina." << endl; + + cout << "\n" <> input; + + } while ((strcmp(input.c_str(), "y"))!=0 && (strcmp(input.c_str(), "n"))!=0);//(!cin.fail() && input != 'y' && input != 'n'); + + + if ((strcmp(input.c_str(), "y"))==0){ + // cin.ignore(); +// cout << "1" << endl; + prot.load(pl); +// cout << "2" << endl; + } + else{ + //cin.ignore(); +// cout << "1111" << endl; + prot.loadSameModels(pl); +// cout << "22" << endl; + } + + + ///////////////////////////////////////////////////////////////////// + + if (outputFile != "!"){ + outputFile="/home/riccardo/Victor/Mobi/data/" + outputFile; + } else outputFile="/home/riccardo/Victor/Mobi/data/stdout"; + + + // Open the proper output stream (file or stdout) + + prot.save(prot, outputFile); + + return 0; + } diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o new file mode 100644 index 0000000000000000000000000000000000000000..a72c3a9aa6f57e5a7cb3c5d3ae5e544da1cb37fa GIT binary patch literal 20176 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 literal 0 HcmV?d00001 diff --git a/Mobi/Sources/Makefile b/Mobi/Sources/Makefile new file mode 100644 index 0000000..7b72f41 --- /dev/null +++ b/Mobi/Sources/Makefile @@ -0,0 +1,62 @@ +#--*- makefile -*-------------------------------------------------------------- +# +# Standard makefile +# +#------------------------------------------------------------------------------ + +# Path to project directory. +UPDIR = ../.. +# Path to subdirectories. +SUBDIR = ../../tools +# Path to directory for binaries: +BINPATH = ../../bin + + +# +# Libraries and paths (which are not defined globally). +# + +LIBS = -lBiopool -ltools + +LIB_PATH = -L. + +INC_PATH = -I. -I../../tools -I../../Biopool/Sources + +# +# Objects and headers +# + + +SOURCES = ProteinModels.cc + + +OBJECTS = ProteinModels.o + + +TARGETS = + +EXECS = + +LIBRARY = libMobi.a + +# +# Install rule +# + +#start: subdirs + +compile: all + +allinstall: $(LIBRARY) $(TARGETS) + mv $(LIBRARY) $(UPDIR)/lib/ + + +install: subinstall allinstall + +all: install +# +# Call global Makefile to do the job. +# + +include ../../Makefile.global + diff --git a/Mobi/Sources/ProteinModels.cc b/Mobi/Sources/ProteinModels.cc new file mode 100644 index 0000000..605cf3f --- /dev/null +++ b/Mobi/Sources/ProteinModels.cc @@ -0,0 +1,124 @@ +#include +#include +#include +#include + +using namespace Victor; +using namespace Victor::Mobi; +using namespace Victor::Biopool; + + + +ProteinModels::ProteinModels() : Protein(), verbose(false) {} + +ProteinModels::ProteinModels(const Protein& _orig) : Protein(_orig), verbose(false) {} + +ProteinModels::~ProteinModels() {} + +// PREDICATES: + +/** + * Return a pointer to the Spacer with the requested chainID + * @param c (char), the chainID + * @return A pointer to the Spacer + */ +void ProteinModels::load(PdbLoader& pl) { + if (!verbose) + pl.setNoVerbose(); +//Load Models + for (unsigned int i = 1; i <= pl.getMaxModels(); i++) { + if (verbose) + cout << ">>>model#" << i << endl; + pl.setModel(i); + pl.checkModel(); + this->Protein::load(pl); + } +} + + +/** + * Return a pointer to the Spacer with the requested chainID + * @param c (char), the chainID + * @return A pointer to the Spacer + */ +unsigned int ProteinModels::selectModels(PdbLoader& pl){ + + unsigned int modelNum; + string input; + + + cout << "Quanti ne vuoi caricare? Inserisci un valore compreso tra 2 e "; + cout << pl.getMaxModels() << endl; + + + getline(cin, input); + + + modelNum = stouiDEF(input); + + while (modelNum > pl.getMaxModels() || modelNum < 2) + { + cerr << "Number of models selected out of bounds! Reinput please..." << endl; + getline(cin, input); + modelNum = stouiDEF(input); + + } + + return modelNum; + + } + + +/** + * Return a pointer to the Spacer with the requested chainID + * @param c (char), the chainID + * @return A pointer to the Spacer + */ +void ProteinModels::loadSameModels(PdbLoader& pl){ + + unsigned int modelNum = selectModels(pl); + + for (unsigned int i=1; i<= modelNum; i++) + { + if (verbose) + cout << "\t>>>model#" << i << endl; + pl.setModel(i); //dal pdb loader scelgo il modello da caricare nella proteina + pl.checkModel(); + this->Protein::load(pl); // creates the Protein object + } + cout << "modelli caricati nella proteina" << endl; + + } + + + +void ProteinModels::save(ProteinModels& prot, string outputFile){ + + ofstream fout; //stream in output + string outputFile_1; + PdbSaver ps(fout); + + // Open the proper output stream (file or stdout) + for (unsigned int i = 0; i < prot.size(); i++) { + + + outputFile_1 = outputFile + (itosDEF(i)) + ".pdb"; + + if (verbose) + cout << outputFile_1 << endl; + + fout.open(outputFile_1.c_str()); + + if (!fout) { + ERROR("Could not open file for writing.", exception); + } else + ps.saveSpacer(*(prot.getSpacer(i))); + + ps.endFile(); + fout.close(); + + if (verbose) + cout << "file chiuso" << endl; + } + +} diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h new file mode 100644 index 0000000..77ab85d --- /dev/null +++ b/Mobi/Sources/ProteinModels.h @@ -0,0 +1,75 @@ +/* This file is part of Victor +Victor is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. +Victor is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. +You should have received a copy of the GNU General Public License +along with Victor. If not, see . +*/ +/** +* @file PreteinModel.h +* @author Riccardo Zanella +* @date Lug 2015 +* @version 0.1 +*/ +#ifndef MOBI_SOURCES_PROTEINMODEL_ +#define MOBI_SOURCES_PROTEINMODEL_ + +#include +#include +#include + + +using namespace Victor::Biopool; + +namespace Victor { namespace Mobi { +/** +* @brief Extends Protein class with functionalities related to manipulation of NMR model and models comparations. +* Scale Distance metric is provided. +*/ +class ProteinModels : public Protein{ + + +public: + + // CONSTRUCTORS/DESTRUCTOR: + ProteinModels() ; + + ProteinModels(const Protein& _orig); + + ~ProteinModels(); + + + + // PREDICATES: + + //void load(PdbLoader& pl, char chain, vector models); + + void load(PdbLoader& pl); + + unsigned int selectModels(PdbLoader& pl); + + void loadSameModels(PdbLoader& pl); + + //Spacer& getModel(unsigned int _model); + + // MODIFIERS: + + void setVerbose() { + verbose = true; + } + + void save(ProteinModels& prot, string outputFile); +// MODIFIERS: +private: + bool verbose; + + +}; +} +} +#endif /* MOBI_SOURCES_PROTEINMODEL_ */ diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o new file mode 100644 index 0000000000000000000000000000000000000000..304e26439a96b122286f5e2deb615c2d940c309f GIT binary patch literal 45136 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 literal 0 HcmV?d00001 diff --git a/Mobi/data/stdout0 b/Mobi/data/stdout0 new file mode 100644 index 0000000..d855585 --- /dev/null +++ b/Mobi/data/stdout0 @@ -0,0 +1,1695 @@ +SEQRES 0 109 GLY SER GLY ASN SER LEU GLU LYS HIS SER TRP TYR HIS +SEQRES 1 109 GLY PRO VAL SER ARG ASN ALA ALA GLU TYR LEU LEU SER +SEQRES 2 109 SER GLY ILE ASN GLY SER PHE LEU VAL ARG GLU SER GLU +SEQRES 3 109 SER SER PRO GLY GLN ARG SER ILE SER LEU ARG TYR GLU +SEQRES 4 109 GLY ARG VAL TYR HIS TYR ARG ILE ASN THR ALA SER ASP +SEQRES 5 109 GLY LYS LEU TYR VAL SER SER GLU SER ARG PHE ASN THR +SEQRES 6 109 LEU ALA GLU LEU VAL HIS HIS HIS SER THR VAL ALA ASP +SEQRES 7 109 GLY LEU ILE THR THR LEU HIS TYR PRO ALA PRO LYS ARG +SEQRES 9 109 GLY ILE HIS ARG ASP +ATOM 1 N GLY 1 0.469 -0.694 -0.363 1.00 1.00 N +ATOM 2 CA GLY 1 1.265 -0.654 -1.578 1.00 1.00 C +ATOM 3 C GLY 1 0.476 -1.203 -2.769 1.00 1.00 C +ATOM 4 O GLY 1 -0.702 -0.891 -2.934 1.00 1.00 O +ATOM 5 H1 GLY 1 -0.124 -1.516 -0.374 1.00 1.00 H +ATOM 6 H2 GLY 1 1.083 -0.731 0.442 1.00 1.00 H +ATOM 7 H3 GLY 1 -0.108 0.139 -0.310 1.00 1.00 H +ATOM 8 HA2 GLY 1 1.572 0.371 -1.783 1.00 1.00 H +ATOM 9 HA3 GLY 1 2.175 -1.238 -1.439 1.00 1.00 H +ATOM 10 N SER 2 1.158 -2.012 -3.568 1.00 1.00 N +ATOM 11 CA SER 2 0.535 -2.607 -4.737 1.00 1.00 C +ATOM 12 C SER 2 -0.508 -3.640 -4.306 1.00 1.00 C +ATOM 13 O SER 2 -0.162 -4.769 -3.962 1.00 1.00 O +ATOM 16 H SER 2 2.116 -2.260 -3.426 1.00 1.00 H +ATOM 17 HA SER 2 0.060 -1.779 -5.264 1.00 1.00 H +ATOM 14 CB SER 2 1.580 -3.255 -5.648 1.00 1.00 C +ATOM 15 OG SER 2 2.228 -4.357 -5.017 1.00 1.00 O +ATOM 18 HB2 SER 2 1.102 -3.593 -6.567 1.00 1.00 H +ATOM 19 HB3 SER 2 2.325 -2.511 -5.931 1.00 1.00 H +ATOM 20 HG SER 2 2.509 -5.026 -5.703 1.00 1.00 H +ATOM 21 N GLY 3 -1.763 -3.217 -4.341 1.00 1.00 N +ATOM 22 CA GLY 3 -2.858 -4.091 -3.959 1.00 1.00 C +ATOM 23 C GLY 3 -3.879 -3.347 -3.095 1.00 1.00 C +ATOM 24 O GLY 3 -5.078 -3.401 -3.360 1.00 1.00 O +ATOM 25 H GLY 3 -2.035 -2.297 -4.623 1.00 1.00 H +ATOM 26 HA2 GLY 3 -3.347 -4.480 -4.853 1.00 1.00 H +ATOM 27 HA3 GLY 3 -2.469 -4.949 -3.410 1.00 1.00 H +ATOM 28 N ASN 4 -3.364 -2.670 -2.080 1.00 1.00 N +ATOM 29 CA ASN 4 -4.215 -1.915 -1.175 1.00 1.00 C +ATOM 30 C ASN 4 -4.006 -0.419 -1.415 1.00 1.00 C +ATOM 31 O ASN 4 -4.969 0.343 -1.477 1.00 1.00 O +ATOM 36 H ASN 4 -2.387 -2.632 -1.870 1.00 1.00 H +ATOM 37 HA ASN 4 -5.232 -2.237 -1.404 1.00 1.00 H +ATOM 32 CB ASN 4 -3.869 -2.214 0.284 1.00 1.00 C +ATOM 33 CG ASN 4 -4.627 -1.280 1.230 1.00 1.00 C +ATOM 34 OD1 ASN 4 -4.163 -0.209 1.590 1.00 1.00 O +ATOM 35 ND2 ASN 4 -5.813 -1.741 1.611 1.00 1.00 N +ATOM 38 HB2 ASN 4 -4.116 -3.250 0.517 1.00 1.00 H +ATOM 39 HB3 ASN 4 -2.796 -2.100 0.439 1.00 1.00 H +ATOM 40 HD21 ASN 4 -6.135 -2.628 1.279 1.00 1.00 H +ATOM 41 HD22 ASN 4 -6.386 -1.202 2.229 1.00 1.00 H +ATOM 42 N SER 5 -2.742 -0.044 -1.541 1.00 1.00 N +ATOM 43 CA SER 5 -2.394 1.349 -1.771 1.00 1.00 C +ATOM 44 C SER 5 -3.005 2.228 -0.679 1.00 1.00 C +ATOM 45 O SER 5 -3.798 1.755 0.134 1.00 1.00 O +ATOM 48 H SER 5 -1.964 -0.670 -1.488 1.00 1.00 H +ATOM 49 HA SER 5 -1.306 1.385 -1.729 1.00 1.00 H +ATOM 46 CB SER 5 -2.865 1.812 -3.152 1.00 1.00 C +ATOM 47 OG SER 5 -4.286 1.794 -3.265 1.00 1.00 O +ATOM 50 HB2 SER 5 -2.500 2.822 -3.338 1.00 1.00 H +ATOM 51 HB3 SER 5 -2.432 1.169 -3.918 1.00 1.00 H +ATOM 52 HG SER 5 -4.702 1.826 -2.356 1.00 1.00 H +ATOM 53 N LEU 6 -2.611 3.494 -0.694 1.00 1.00 N +ATOM 54 CA LEU 6 -3.111 4.444 0.285 1.00 1.00 C +ATOM 55 C LEU 6 -3.925 5.525 -0.428 1.00 1.00 C +ATOM 56 O LEU 6 -3.757 5.744 -1.627 1.00 1.00 O +ATOM 61 H LEU 6 -1.966 3.871 -1.359 1.00 1.00 H +ATOM 62 HA LEU 6 -3.772 3.901 0.960 1.00 1.00 H +ATOM 57 CB LEU 6 -1.960 4.998 1.128 1.00 1.00 C +ATOM 58 CG LEU 6 -1.104 3.960 1.859 1.00 1.00 C +ATOM 59 CD1 LEU 6 -0.007 3.413 0.944 1.00 1.00 C +ATOM 60 CD2 LEU 6 -0.534 4.536 3.157 1.00 1.00 C +ATOM 63 HB2 LEU 6 -1.309 5.584 0.480 1.00 1.00 H +ATOM 64 HB3 LEU 6 -2.375 5.683 1.867 1.00 1.00 H +ATOM 65 HG LEU 6 -1.743 3.121 2.132 1.00 1.00 H +ATOM 66 HD11 LEU 6 0.095 4.059 0.072 1.00 1.00 H +ATOM 67 HD12 LEU 6 0.938 3.384 1.487 1.00 1.00 H +ATOM 68 HD13 LEU 6 -0.272 2.406 0.621 1.00 1.00 H +ATOM 69 HD21 LEU 6 -0.950 5.529 3.327 1.00 1.00 H +ATOM 70 HD22 LEU 6 -0.797 3.885 3.990 1.00 1.00 H +ATOM 71 HD23 LEU 6 0.551 4.605 3.078 1.00 1.00 H +ATOM 72 N GLU 7 -4.791 6.171 0.339 1.00 1.00 N +ATOM 73 CA GLU 7 -5.632 7.223 -0.204 1.00 1.00 C +ATOM 74 C GLU 7 -4.814 8.496 -0.427 1.00 1.00 C +ATOM 75 O GLU 7 -5.037 9.507 0.237 1.00 1.00 O +ATOM 81 H GLU 7 -4.921 5.987 1.313 1.00 1.00 H +ATOM 82 HA GLU 7 -5.992 6.842 -1.161 1.00 1.00 H +ATOM 76 CB GLU 7 -6.830 7.495 0.708 1.00 1.00 C +ATOM 77 CG GLU 7 -8.142 7.127 0.014 1.00 1.00 C +ATOM 78 CD GLU 7 -8.921 8.382 -0.388 1.00 1.00 C +ATOM 79 OE1 GLU 7 -8.634 8.850 -1.554 1.00 1.00 O +ATOM 80 OE2 GLU 7 -9.752 8.872 0.391 1.00 1.00 O +ATOM 83 HB2 GLU 7 -6.728 6.920 1.628 1.00 1.00 H +ATOM 84 HB3 GLU 7 -6.845 8.548 0.991 1.00 1.00 H +ATOM 85 HG2 GLU 7 -7.935 6.525 -0.870 1.00 1.00 H +ATOM 86 HG3 GLU 7 -8.751 6.515 0.680 1.00 1.00 H +ATOM 87 N LYS 8 -3.881 8.405 -1.364 1.00 1.00 N +ATOM 88 CA LYS 8 -3.026 9.537 -1.682 1.00 1.00 C +ATOM 89 C LYS 8 -3.897 10.727 -2.094 1.00 1.00 C +ATOM 90 O LYS 8 -4.509 11.375 -1.246 1.00 1.00 O +ATOM 96 H LYS 8 -3.704 7.579 -1.899 1.00 1.00 H +ATOM 97 HA LYS 8 -2.485 9.803 -0.774 1.00 1.00 H +ATOM 91 CB LYS 8 -1.986 9.144 -2.732 1.00 1.00 C +ATOM 92 CG LYS 8 -0.846 10.165 -2.784 1.00 1.00 C +ATOM 93 CD LYS 8 -0.879 10.958 -4.092 1.00 1.00 C +ATOM 94 CE LYS 8 0.257 11.981 -4.141 1.00 1.00 C +ATOM 95 NZ LYS 8 1.545 11.313 -4.430 1.00 1.00 N +ATOM 98 HB2 LYS 8 -1.585 8.158 -2.502 1.00 1.00 H +ATOM 99 HB3 LYS 8 -2.460 9.074 -3.712 1.00 1.00 H +ATOM 100 HG2 LYS 8 -0.927 10.848 -1.938 1.00 1.00 H +ATOM 101 HG3 LYS 8 0.110 9.652 -2.689 1.00 1.00 H +ATOM 102 HD2 LYS 8 -0.795 10.275 -4.938 1.00 1.00 H +ATOM 103 HD3 LYS 8 -1.838 11.468 -4.189 1.00 1.00 H +ATOM 104 HE2 LYS 8 0.048 12.727 -4.907 1.00 1.00 H +ATOM 105 HE3 LYS 8 0.319 12.509 -3.190 1.00 1.00 H +ATOM 106 HZ1 LYS 8 1.449 10.737 -5.254 1.00 1.00 H +ATOM 107 HZ2 LYS 8 2.291 11.979 -4.595 1.00 1.00 H +ATOM 108 HZ3 LYS 8 1.807 10.733 -3.644 1.00 1.00 H +ATOM 109 N HIS 9 -3.923 10.978 -3.394 1.00 1.00 N +ATOM 110 CA HIS 9 -4.708 12.078 -3.928 1.00 1.00 C +ATOM 111 C HIS 9 -6.157 11.626 -4.126 1.00 1.00 C +ATOM 112 O HIS 9 -6.508 10.494 -3.797 1.00 1.00 O +ATOM 119 H HIS 9 -3.423 10.445 -4.077 1.00 1.00 H +ATOM 120 HA HIS 9 -4.683 12.871 -3.182 1.00 1.00 H +ATOM 113 CB HIS 9 -4.077 12.623 -5.211 1.00 1.00 C +ATOM 114 CG HIS 9 -2.959 13.610 -4.972 1.00 1.00 C +ATOM 115 ND1 HIS 9 -2.255 13.673 -3.783 1.00 1.00 N +ATOM 116 CD2 HIS 9 -2.430 14.570 -5.784 1.00 1.00 C +ATOM 117 CE1 HIS 9 -1.347 14.632 -3.884 1.00 1.00 C +ATOM 118 NE2 HIS 9 -1.456 15.186 -5.125 1.00 1.00 N +ATOM 121 HB2 HIS 9 -3.693 11.789 -5.798 1.00 1.00 H +ATOM 122 HB3 HIS 9 -4.851 13.105 -5.808 1.00 1.00 H +ATOM 123 HD1 HIS 9 -2.407 13.093 -2.982 1.00 1.00 H +ATOM 124 HD2 HIS 9 -2.751 14.792 -6.802 1.00 1.00 H +ATOM 125 HE1 HIS 9 -0.636 14.925 -3.111 1.00 1.00 H +ATOM 126 N SER 10 -6.958 12.535 -4.662 1.00 1.00 N +ATOM 127 CA SER 10 -8.361 12.245 -4.908 1.00 1.00 C +ATOM 128 C SER 10 -8.509 11.435 -6.198 1.00 1.00 C +ATOM 129 O SER 10 -9.623 11.198 -6.661 1.00 1.00 O +ATOM 132 H SER 10 -6.664 13.453 -4.927 1.00 1.00 H +ATOM 133 HA SER 10 -8.689 11.660 -4.049 1.00 1.00 H +ATOM 130 CB SER 10 -9.183 13.532 -4.992 1.00 1.00 C +ATOM 131 OG SER 10 -10.584 13.274 -4.951 1.00 1.00 O +ATOM 134 HB2 SER 10 -8.911 14.190 -4.167 1.00 1.00 H +ATOM 135 HB3 SER 10 -8.938 14.059 -5.915 1.00 1.00 H +ATOM 136 HG SER 10 -11.047 13.786 -5.675 1.00 1.00 H +ATOM 137 N TRP 11 -7.369 11.032 -6.741 1.00 1.00 N +ATOM 138 CA TRP 11 -7.359 10.254 -7.968 1.00 1.00 C +ATOM 139 C TRP 11 -6.537 8.988 -7.718 1.00 1.00 C +ATOM 140 O TRP 11 -6.228 8.250 -8.652 1.00 1.00 O +ATOM 151 H TRP 11 -6.467 11.230 -6.358 1.00 1.00 H +ATOM 152 HA TRP 11 -8.389 9.989 -8.202 1.00 1.00 H +ATOM 141 CB TRP 11 -6.834 11.086 -9.140 1.00 1.00 C +ATOM 142 CG TRP 11 -5.645 11.980 -8.786 1.00 1.00 C +ATOM 143 CD1 TRP 11 -5.622 13.315 -8.670 1.00 1.00 C +ATOM 144 CD2 TRP 11 -4.297 11.547 -8.504 1.00 1.00 C +ATOM 145 NE1 TRP 11 -4.364 13.772 -8.335 1.00 1.00 N +ATOM 146 CE2 TRP 11 -3.533 12.663 -8.231 1.00 1.00 C +ATOM 147 CE3 TRP 11 -3.743 10.256 -8.480 1.00 1.00 C +ATOM 148 CZ2 TRP 11 -2.170 12.601 -7.916 1.00 1.00 C +ATOM 149 CZ3 TRP 11 -2.380 10.210 -8.164 1.00 1.00 C +ATOM 150 CH2 TRP 11 -1.596 11.324 -7.886 1.00 1.00 C +ATOM 153 HB2 TRP 11 -6.542 10.414 -9.947 1.00 1.00 H +ATOM 154 HB3 TRP 11 -7.644 11.709 -9.521 1.00 1.00 H +ATOM 155 HD1 TRP 11 -6.489 13.958 -8.820 1.00 1.00 H +ATOM 156 HE1 TRP 11 -4.075 14.812 -8.181 1.00 1.00 H +ATOM 157 HE3 TRP 11 -4.325 9.359 -8.692 1.00 1.00 H +ATOM 158 HZ2 TRP 11 -1.587 13.497 -7.704 1.00 1.00 H +ATOM 159 HZ3 TRP 11 -1.899 9.232 -8.131 1.00 1.00 H +ATOM 160 HH2 TRP 11 -0.539 11.204 -7.647 1.00 1.00 H +ATOM 161 N TYR 12 -6.205 8.776 -6.452 1.00 1.00 N +ATOM 162 CA TYR 12 -5.425 7.613 -6.067 1.00 1.00 C +ATOM 163 C TYR 12 -6.255 6.656 -5.209 1.00 1.00 C +ATOM 164 O TYR 12 -6.340 6.821 -3.994 1.00 1.00 O +ATOM 173 H TYR 12 -6.461 9.382 -5.698 1.00 1.00 H +ATOM 174 HA TYR 12 -5.117 7.099 -6.978 1.00 1.00 H +ATOM 165 CB TYR 12 -4.258 8.145 -5.233 1.00 1.00 C +ATOM 166 CG TYR 12 -2.942 7.395 -5.454 1.00 1.00 C +ATOM 167 CD1 TYR 12 -2.417 7.283 -6.726 1.00 1.00 C +ATOM 168 CD2 TYR 12 -2.281 6.831 -4.382 1.00 1.00 C +ATOM 169 CE1 TYR 12 -1.179 6.578 -6.934 1.00 1.00 C +ATOM 170 CE2 TYR 12 -1.043 6.126 -4.591 1.00 1.00 C +ATOM 171 CZ TYR 12 -0.553 6.034 -5.856 1.00 1.00 C +ATOM 172 OH TYR 12 0.616 5.367 -6.052 1.00 1.00 O +ATOM 175 HB2 TYR 12 -4.108 9.198 -5.468 1.00 1.00 H +ATOM 176 HB3 TYR 12 -4.523 8.089 -4.178 1.00 1.00 H +ATOM 177 HD1 TYR 12 -2.939 7.729 -7.572 1.00 1.00 H +ATOM 178 HD2 TYR 12 -2.696 6.919 -3.379 1.00 1.00 H +ATOM 179 HE1 TYR 12 -0.754 6.481 -7.933 1.00 1.00 H +ATOM 180 HE2 TYR 12 -0.511 5.675 -3.753 1.00 1.00 H +ATOM 181 HH TYR 12 1.294 5.661 -5.379 1.00 1.00 H +ATOM 182 N HIS 13 -6.845 5.676 -5.876 1.00 1.00 N +ATOM 183 CA HIS 13 -7.665 4.691 -5.190 1.00 1.00 C +ATOM 184 C HIS 13 -6.904 3.368 -5.090 1.00 1.00 C +ATOM 185 O HIS 13 -6.654 2.873 -3.993 1.00 1.00 O +ATOM 192 H HIS 13 -6.772 5.548 -6.865 1.00 1.00 H +ATOM 193 HA HIS 13 -7.841 5.076 -4.186 1.00 1.00 H +ATOM 186 CB HIS 13 -9.025 4.543 -5.877 1.00 1.00 C +ATOM 187 CG HIS 13 -8.937 4.230 -7.351 1.00 1.00 C +ATOM 188 ND1 HIS 13 -9.395 3.042 -7.894 1.00 1.00 N +ATOM 189 CD2 HIS 13 -8.441 4.961 -8.390 1.00 1.00 C +ATOM 190 CE1 HIS 13 -9.178 3.068 -9.201 1.00 1.00 C +ATOM 191 NE2 HIS 13 -8.586 4.258 -9.506 1.00 1.00 N +ATOM 194 HB2 HIS 13 -9.586 3.751 -5.380 1.00 1.00 H +ATOM 195 HB3 HIS 13 -9.590 5.466 -5.744 1.00 1.00 H +ATOM 196 HD1 HIS 13 -9.818 2.292 -7.386 1.00 1.00 H +ATOM 197 HD2 HIS 13 -7.999 5.955 -8.314 1.00 1.00 H +ATOM 198 HE1 HIS 13 -9.430 2.278 -9.908 1.00 1.00 H +ATOM 199 N GLY 14 -6.556 2.833 -6.252 1.00 1.00 N +ATOM 200 CA GLY 14 -5.828 1.577 -6.310 1.00 1.00 C +ATOM 201 C GLY 14 -5.666 1.103 -7.755 1.00 1.00 C +ATOM 202 O GLY 14 -5.883 1.870 -8.692 1.00 1.00 O +ATOM 203 H GLY 14 -6.764 3.243 -7.140 1.00 1.00 H +ATOM 204 HA2 GLY 14 -4.847 1.700 -5.851 1.00 1.00 H +ATOM 205 HA3 GLY 14 -6.357 0.819 -5.731 1.00 1.00 H +ATOM 206 N PRO 15 -5.278 -0.192 -7.895 1.00 1.00 N +ATOM 207 CA PRO 15 -5.084 -0.778 -9.211 1.00 1.00 C +ATOM 208 C PRO 15 -6.426 -1.073 -9.882 1.00 1.00 C +ATOM 209 O PRO 15 -7.303 -1.693 -9.281 1.00 1.00 O +ATOM 213 HA PRO 15 -4.613 -0.133 -9.812 1.00 1.00 H +ATOM 210 CB PRO 15 -4.255 -2.028 -8.966 1.00 1.00 C +ATOM 211 CG PRO 15 -4.408 -2.348 -7.488 1.00 1.00 C +ATOM 212 CD PRO 15 -5.012 -1.130 -6.808 1.00 1.00 C +ATOM 214 HB2 PRO 15 -4.605 -2.856 -9.583 1.00 1.00 H +ATOM 215 HB3 PRO 15 -3.209 -1.860 -9.224 1.00 1.00 H +ATOM 216 HG2 PRO 15 -5.048 -3.220 -7.351 1.00 1.00 H +ATOM 217 HG3 PRO 15 -3.440 -2.591 -7.048 1.00 1.00 H +ATOM 218 HD2 PRO 15 -5.928 -1.388 -6.275 1.00 1.00 H +ATOM 219 HD3 PRO 15 -4.325 -0.705 -6.076 1.00 1.00 H +ATOM 220 N VAL 16 -6.547 -0.614 -11.119 1.00 1.00 N +ATOM 221 CA VAL 16 -7.768 -0.821 -11.880 1.00 1.00 C +ATOM 222 C VAL 16 -7.418 -1.011 -13.357 1.00 1.00 C +ATOM 223 O VAL 16 -6.931 -0.088 -14.007 1.00 1.00 O +ATOM 227 H VAL 16 -5.829 -0.111 -11.601 1.00 1.00 H +ATOM 228 HA VAL 16 -8.235 -1.732 -11.509 1.00 1.00 H +ATOM 224 CB VAL 16 -8.736 0.340 -11.640 1.00 1.00 C +ATOM 225 CG1 VAL 16 -8.043 1.686 -11.862 1.00 1.00 C +ATOM 226 CG2 VAL 16 -9.977 0.209 -12.524 1.00 1.00 C +ATOM 229 HB VAL 16 -9.058 0.297 -10.599 1.00 1.00 H +ATOM 230 HG11 VAL 16 -7.370 1.612 -12.716 1.00 1.00 H +ATOM 231 HG12 VAL 16 -8.793 2.452 -12.056 1.00 1.00 H +ATOM 232 HG13 VAL 16 -7.473 1.952 -10.972 1.00 1.00 H +ATOM 233 HG21 VAL 16 -9.835 -0.607 -13.232 1.00 1.00 H +ATOM 234 HG22 VAL 16 -10.847 0.001 -11.901 1.00 1.00 H +ATOM 235 HG23 VAL 16 -10.135 1.140 -13.068 1.00 1.00 H +ATOM 236 N SER 17 -7.679 -2.216 -13.842 1.00 1.00 N +ATOM 237 CA SER 17 -7.398 -2.540 -15.231 1.00 1.00 C +ATOM 238 C SER 17 -8.250 -1.669 -16.154 1.00 1.00 C +ATOM 239 O SER 17 -9.404 -1.372 -15.845 1.00 1.00 O +ATOM 242 H SER 17 -8.075 -2.962 -13.306 1.00 1.00 H +ATOM 243 HA SER 17 -6.338 -2.323 -15.369 1.00 1.00 H +ATOM 240 CB SER 17 -7.654 -4.022 -15.513 1.00 1.00 C +ATOM 241 OG SER 17 -6.444 -4.772 -15.572 1.00 1.00 O +ATOM 244 HB2 SER 17 -8.298 -4.433 -14.735 1.00 1.00 H +ATOM 245 HB3 SER 17 -8.190 -4.124 -16.457 1.00 1.00 H +ATOM 246 HG SER 17 -5.659 -4.165 -15.441 1.00 1.00 H +ATOM 247 N ARG 18 -7.651 -1.282 -17.271 1.00 1.00 N +ATOM 248 CA ARG 18 -8.341 -0.450 -18.242 1.00 1.00 C +ATOM 249 C ARG 18 -9.645 -1.117 -18.680 1.00 1.00 C +ATOM 250 O ARG 18 -10.698 -0.480 -18.693 1.00 1.00 O +ATOM 258 H ARG 18 -6.712 -1.527 -17.515 1.00 1.00 H +ATOM 259 HA ARG 18 -8.535 0.486 -17.718 1.00 1.00 H +ATOM 251 CB ARG 18 -7.466 -0.199 -19.472 1.00 1.00 C +ATOM 252 CG ARG 18 -6.500 -1.362 -19.705 1.00 1.00 C +ATOM 253 CD ARG 18 -6.187 -1.526 -21.194 1.00 1.00 C +ATOM 254 NE ARG 18 -5.608 -2.865 -21.445 1.00 1.00 N +ATOM 255 CZ ARG 18 -6.336 -3.968 -21.662 1.00 1.00 C +ATOM 256 NH1 ARG 18 -7.674 -3.901 -21.659 1.00 1.00 N +ATOM 257 NH2 ARG 18 -5.725 -5.141 -21.881 1.00 1.00 N +ATOM 260 HB2 ARG 18 -8.097 -0.065 -20.350 1.00 1.00 H +ATOM 261 HB3 ARG 18 -6.903 0.725 -19.340 1.00 1.00 H +ATOM 262 HG2 ARG 18 -5.577 -1.189 -19.153 1.00 1.00 H +ATOM 263 HG3 ARG 18 -6.935 -2.284 -19.318 1.00 1.00 H +ATOM 264 HD2 ARG 18 -7.096 -1.397 -21.781 1.00 1.00 H +ATOM 265 HD3 ARG 18 -5.489 -0.753 -21.514 1.00 1.00 H +ATOM 266 HE ARG 18 -4.612 -2.950 -21.454 1.00 1.00 H +ATOM 267 HH11 ARG 18 -8.130 -3.026 -21.495 1.00 1.00 H +ATOM 268 HH12 ARG 18 -8.217 -4.725 -21.821 1.00 1.00 H +ATOM 269 HH21 ARG 18 -4.727 -5.192 -21.884 1.00 1.00 H +ATOM 270 HH22 ARG 18 -6.268 -5.965 -22.043 1.00 1.00 H +ATOM 271 N ASN 19 -9.535 -2.391 -19.026 1.00 1.00 N +ATOM 272 CA ASN 19 -10.694 -3.151 -19.463 1.00 1.00 C +ATOM 273 C ASN 19 -11.872 -2.857 -18.533 1.00 1.00 C +ATOM 274 O ASN 19 -12.913 -2.378 -18.977 1.00 1.00 O +ATOM 279 H ASN 19 -8.676 -2.901 -19.012 1.00 1.00 H +ATOM 280 HA ASN 19 -10.880 -2.826 -20.487 1.00 1.00 H +ATOM 275 CB ASN 19 -10.416 -4.655 -19.414 1.00 1.00 C +ATOM 276 CG ASN 19 -9.465 -5.000 -18.266 1.00 1.00 C +ATOM 277 OD1 ASN 19 -9.874 -5.324 -17.163 1.00 1.00 O +ATOM 278 ND2 ASN 19 -8.178 -4.912 -18.586 1.00 1.00 N +ATOM 281 HB2 ASN 19 -11.354 -5.198 -19.290 1.00 1.00 H +ATOM 282 HB3 ASN 19 -9.983 -4.979 -20.360 1.00 1.00 H +ATOM 283 HD21 ASN 19 -7.909 -4.640 -19.509 1.00 1.00 H +ATOM 284 HD22 ASN 19 -7.478 -5.119 -17.902 1.00 1.00 H +ATOM 285 N ALA 20 -11.667 -3.158 -17.258 1.00 1.00 N +ATOM 286 CA ALA 20 -12.700 -2.931 -16.261 1.00 1.00 C +ATOM 287 C ALA 20 -13.033 -1.439 -16.207 1.00 1.00 C +ATOM 288 O ALA 20 -14.150 -1.060 -15.862 1.00 1.00 O +ATOM 290 H ALA 20 -10.817 -3.547 -16.906 1.00 1.00 H +ATOM 291 HA ALA 20 -13.588 -3.482 -16.572 1.00 1.00 H +ATOM 289 CB ALA 20 -12.231 -3.473 -14.910 1.00 1.00 C +ATOM 292 HB1 ALA 20 -11.712 -4.420 -15.058 1.00 1.00 H +ATOM 293 HB2 ALA 20 -11.556 -2.756 -14.445 1.00 1.00 H +ATOM 294 HB3 ALA 20 -13.095 -3.631 -14.262 1.00 1.00 H +ATOM 295 N ALA 21 -12.040 -0.631 -16.554 1.00 1.00 N +ATOM 296 CA ALA 21 -12.214 0.811 -16.549 1.00 1.00 C +ATOM 297 C ALA 21 -13.233 1.202 -17.621 1.00 1.00 C +ATOM 298 O ALA 21 -14.326 1.670 -17.303 1.00 1.00 O +ATOM 300 H ALA 21 -11.134 -0.946 -16.833 1.00 1.00 H +ATOM 301 HA ALA 21 -12.601 1.097 -15.570 1.00 1.00 H +ATOM 299 CB ALA 21 -10.858 1.489 -16.760 1.00 1.00 C +ATOM 302 HB1 ALA 21 -10.060 0.795 -16.496 1.00 1.00 H +ATOM 303 HB2 ALA 21 -10.757 1.781 -17.804 1.00 1.00 H +ATOM 304 HB3 ALA 21 -10.793 2.375 -16.126 1.00 1.00 H +ATOM 305 N GLU 22 -12.840 0.996 -18.869 1.00 1.00 N +ATOM 306 CA GLU 22 -13.706 1.321 -19.990 1.00 1.00 C +ATOM 307 C GLU 22 -14.987 0.485 -19.931 1.00 1.00 C +ATOM 308 O GLU 22 -16.048 0.940 -20.352 1.00 1.00 O +ATOM 314 H GLU 22 -11.950 0.616 -19.120 1.00 1.00 H +ATOM 315 HA GLU 22 -13.947 2.378 -19.873 1.00 1.00 H +ATOM 309 CB GLU 22 -12.980 1.117 -21.321 1.00 1.00 C +ATOM 310 CG GLU 22 -11.898 0.042 -21.197 1.00 1.00 C +ATOM 311 CD GLU 22 -11.637 -0.632 -22.545 1.00 1.00 C +ATOM 312 OE1 GLU 22 -11.797 0.067 -23.569 1.00 1.00 O +ATOM 313 OE2 GLU 22 -11.284 -1.831 -22.521 1.00 1.00 O +ATOM 316 HB2 GLU 22 -13.697 0.830 -22.090 1.00 1.00 H +ATOM 317 HB3 GLU 22 -12.529 2.056 -21.641 1.00 1.00 H +ATOM 318 HG2 GLU 22 -10.976 0.490 -20.825 1.00 1.00 H +ATOM 319 HG3 GLU 22 -12.206 -0.706 -20.466 1.00 1.00 H +ATOM 320 N TYR 23 -14.844 -0.721 -19.404 1.00 1.00 N +ATOM 321 CA TYR 23 -15.976 -1.625 -19.284 1.00 1.00 C +ATOM 322 C TYR 23 -16.867 -1.232 -18.104 1.00 1.00 C +ATOM 323 O TYR 23 -18.006 -0.810 -18.295 1.00 1.00 O +ATOM 332 H TYR 23 -13.977 -1.084 -19.063 1.00 1.00 H +ATOM 333 HA TYR 23 -16.556 -1.561 -20.204 1.00 1.00 H +ATOM 324 CB TYR 23 -15.384 -3.011 -19.022 1.00 1.00 C +ATOM 325 CG TYR 23 -16.428 -4.123 -18.917 1.00 1.00 C +ATOM 326 CD1 TYR 23 -17.198 -4.243 -17.778 1.00 1.00 C +ATOM 327 CD2 TYR 23 -16.601 -5.009 -19.962 1.00 1.00 C +ATOM 328 CE1 TYR 23 -18.181 -5.290 -17.679 1.00 1.00 C +ATOM 329 CE2 TYR 23 -17.584 -6.056 -19.863 1.00 1.00 C +ATOM 330 CZ TYR 23 -18.325 -6.146 -18.727 1.00 1.00 C +ATOM 331 OH TYR 23 -19.254 -7.136 -18.634 1.00 1.00 O +ATOM 334 HB2 TYR 23 -14.687 -3.255 -19.825 1.00 1.00 H +ATOM 335 HB3 TYR 23 -14.806 -2.980 -18.097 1.00 1.00 H +ATOM 336 HD1 TYR 23 -17.062 -3.544 -16.953 1.00 1.00 H +ATOM 337 HD2 TYR 23 -15.993 -4.915 -20.862 1.00 1.00 H +ATOM 338 HE1 TYR 23 -18.796 -5.396 -16.786 1.00 1.00 H +ATOM 339 HE2 TYR 23 -17.731 -6.763 -20.681 1.00 1.00 H +ATOM 340 HH TYR 23 -19.463 -7.319 -17.673 1.00 1.00 H +ATOM 341 N LEU 24 -16.315 -1.387 -16.909 1.00 1.00 N +ATOM 342 CA LEU 24 -17.045 -1.054 -15.698 1.00 1.00 C +ATOM 343 C LEU 24 -17.514 0.400 -15.774 1.00 1.00 C +ATOM 344 O LEU 24 -18.706 0.665 -15.924 1.00 1.00 O +ATOM 349 H LEU 24 -15.387 -1.732 -16.762 1.00 1.00 H +ATOM 350 HA LEU 24 -17.923 -1.699 -15.659 1.00 1.00 H +ATOM 345 CB LEU 24 -16.200 -1.365 -14.460 1.00 1.00 C +ATOM 346 CG LEU 24 -16.977 -1.645 -13.172 1.00 1.00 C +ATOM 347 CD1 LEU 24 -16.048 -2.172 -12.076 1.00 1.00 C +ATOM 348 CD2 LEU 24 -17.753 -0.407 -12.720 1.00 1.00 C +ATOM 351 HB2 LEU 24 -15.574 -2.230 -14.680 1.00 1.00 H +ATOM 352 HB3 LEU 24 -15.530 -0.523 -14.282 1.00 1.00 H +ATOM 353 HG LEU 24 -17.708 -2.427 -13.377 1.00 1.00 H +ATOM 354 HD11 LEU 24 -15.181 -1.515 -11.988 1.00 1.00 H +ATOM 355 HD12 LEU 24 -16.583 -2.197 -11.127 1.00 1.00 H +ATOM 356 HD13 LEU 24 -15.716 -3.178 -12.333 1.00 1.00 H +ATOM 357 HD21 LEU 24 -17.493 0.438 -13.356 1.00 1.00 H +ATOM 358 HD22 LEU 24 -18.823 -0.602 -12.794 1.00 1.00 H +ATOM 359 HD23 LEU 24 -17.498 -0.176 -11.685 1.00 1.00 H +ATOM 360 N LEU 25 -16.553 1.304 -15.665 1.00 1.00 N +ATOM 361 CA LEU 25 -16.852 2.726 -15.719 1.00 1.00 C +ATOM 362 C LEU 25 -17.575 3.040 -17.030 1.00 1.00 C +ATOM 363 O LEU 25 -16.959 3.054 -18.094 1.00 1.00 O +ATOM 368 H LEU 25 -15.585 1.081 -15.542 1.00 1.00 H +ATOM 369 HA LEU 25 -17.525 2.949 -14.891 1.00 1.00 H +ATOM 364 CB LEU 25 -15.581 3.550 -15.504 1.00 1.00 C +ATOM 365 CG LEU 25 -15.496 4.865 -16.281 1.00 1.00 C +ATOM 366 CD1 LEU 25 -15.736 6.063 -15.359 1.00 1.00 C +ATOM 367 CD2 LEU 25 -14.166 4.975 -17.029 1.00 1.00 C +ATOM 370 HB2 LEU 25 -15.492 3.772 -14.441 1.00 1.00 H +ATOM 371 HB3 LEU 25 -14.723 2.934 -15.775 1.00 1.00 H +ATOM 372 HG LEU 25 -16.287 4.871 -17.030 1.00 1.00 H +ATOM 373 HD11 LEU 25 -16.113 5.712 -14.399 1.00 1.00 H +ATOM 374 HD12 LEU 25 -14.798 6.598 -15.208 1.00 1.00 H +ATOM 375 HD13 LEU 25 -16.466 6.732 -15.815 1.00 1.00 H +ATOM 376 HD21 LEU 25 -13.691 3.994 -17.072 1.00 1.00 H +ATOM 377 HD22 LEU 25 -14.346 5.336 -18.042 1.00 1.00 H +ATOM 378 HD23 LEU 25 -13.512 5.672 -16.506 1.00 1.00 H +ATOM 379 N SER 26 -18.872 3.285 -16.910 1.00 1.00 N +ATOM 380 CA SER 26 -19.685 3.599 -18.072 1.00 1.00 C +ATOM 381 C SER 26 -19.346 5.000 -18.584 1.00 1.00 C +ATOM 382 O SER 26 -19.748 5.377 -19.685 1.00 1.00 O +ATOM 385 H SER 26 -19.365 3.272 -16.039 1.00 1.00 H +ATOM 386 HA SER 26 -19.427 2.847 -18.816 1.00 1.00 H +ATOM 383 CB SER 26 -21.176 3.501 -17.743 1.00 1.00 C +ATOM 384 OG SER 26 -21.992 3.784 -18.877 1.00 1.00 O +ATOM 387 HB2 SER 26 -21.401 2.499 -17.376 1.00 1.00 H +ATOM 388 HB3 SER 26 -21.418 4.197 -16.940 1.00 1.00 H +ATOM 389 HG SER 26 -22.774 3.160 -18.900 1.00 1.00 H +ATOM 390 N SER 27 -18.611 5.735 -17.764 1.00 1.00 N +ATOM 391 CA SER 27 -18.213 7.086 -18.120 1.00 1.00 C +ATOM 392 C SER 27 -19.452 7.965 -18.302 1.00 1.00 C +ATOM 393 O SER 27 -20.324 7.656 -19.113 1.00 1.00 O +ATOM 396 H SER 27 -18.287 5.421 -16.871 1.00 1.00 H +ATOM 397 HA SER 27 -17.611 7.440 -17.284 1.00 1.00 H +ATOM 394 CB SER 27 -17.366 7.093 -19.395 1.00 1.00 C +ATOM 395 OG SER 27 -16.047 6.607 -19.162 1.00 1.00 O +ATOM 398 HB2 SER 27 -17.850 6.478 -20.154 1.00 1.00 H +ATOM 399 HB3 SER 27 -17.314 8.106 -19.791 1.00 1.00 H +ATOM 400 HG SER 27 -16.081 5.653 -18.864 1.00 1.00 H +ATOM 401 N GLY 28 -19.490 9.044 -17.534 1.00 1.00 N +ATOM 402 CA GLY 28 -20.608 9.970 -17.599 1.00 1.00 C +ATOM 403 C GLY 28 -20.471 11.070 -16.544 1.00 1.00 C +ATOM 404 O GLY 28 -21.185 11.067 -15.542 1.00 1.00 O +ATOM 405 H GLY 28 -18.776 9.288 -16.877 1.00 1.00 H +ATOM 406 HA2 GLY 28 -20.656 10.417 -18.592 1.00 1.00 H +ATOM 407 HA3 GLY 28 -21.542 9.430 -17.447 1.00 1.00 H +ATOM 408 N ILE 29 -19.549 11.985 -16.807 1.00 1.00 N +ATOM 409 CA ILE 29 -19.309 13.089 -15.892 1.00 1.00 C +ATOM 410 C ILE 29 -18.761 14.284 -16.675 1.00 1.00 C +ATOM 411 O ILE 29 -18.679 14.241 -17.901 1.00 1.00 O +ATOM 416 H ILE 29 -18.973 11.981 -17.624 1.00 1.00 H +ATOM 417 HA ILE 29 -20.271 13.371 -15.461 1.00 1.00 H +ATOM 412 CB ILE 29 -18.409 12.643 -14.738 1.00 1.00 C +ATOM 413 CG1 ILE 29 -17.430 11.560 -15.194 1.00 1.00 C +ATOM 414 CG2 ILE 29 -19.241 12.195 -13.535 1.00 1.00 C +ATOM 415 CD1 ILE 29 -16.201 11.514 -14.284 1.00 1.00 C +ATOM 418 HB ILE 29 -17.815 13.500 -14.418 1.00 1.00 H +ATOM 419 HG12 ILE 29 -17.927 10.590 -15.190 1.00 1.00 H +ATOM 420 HG13 ILE 29 -17.119 11.754 -16.220 1.00 1.00 H +ATOM 421 HG21 ILE 29 -19.900 13.006 -13.227 1.00 1.00 H +ATOM 422 HG22 ILE 29 -19.838 11.325 -13.811 1.00 1.00 H +ATOM 423 HG23 ILE 29 -18.577 11.933 -12.712 1.00 1.00 H +ATOM 424 HD11 ILE 29 -16.342 12.200 -13.449 1.00 1.00 H +ATOM 425 HD12 ILE 29 -16.069 10.501 -13.903 1.00 1.00 H +ATOM 426 HD13 ILE 29 -15.317 11.806 -14.851 1.00 1.00 H +ATOM 427 N ASN 30 -18.398 15.320 -15.933 1.00 1.00 N +ATOM 428 CA ASN 30 -17.859 16.524 -16.542 1.00 1.00 C +ATOM 429 C ASN 30 -16.400 16.283 -16.935 1.00 1.00 C +ATOM 430 O ASN 30 -15.810 17.076 -17.666 1.00 1.00 O +ATOM 435 H ASN 30 -18.467 15.346 -14.937 1.00 1.00 H +ATOM 436 HA ASN 30 -18.496 16.719 -17.406 1.00 1.00 H +ATOM 431 CB ASN 30 -17.898 17.700 -15.565 1.00 1.00 C +ATOM 432 CG ASN 30 -18.550 18.927 -16.209 1.00 1.00 C +ATOM 433 OD1 ASN 30 -19.698 18.907 -16.619 1.00 1.00 O +ATOM 434 ND2 ASN 30 -17.754 19.990 -16.274 1.00 1.00 N +ATOM 437 HB2 ASN 30 -18.453 17.417 -14.671 1.00 1.00 H +ATOM 438 HB3 ASN 30 -16.885 17.948 -15.247 1.00 1.00 H +ATOM 439 HD21 ASN 30 -16.820 19.939 -15.919 1.00 1.00 H +ATOM 440 HD22 ASN 30 -18.089 20.841 -16.679 1.00 1.00 H +ATOM 441 N GLY 31 -15.859 15.183 -16.429 1.00 1.00 N +ATOM 442 CA GLY 31 -14.480 14.828 -16.717 1.00 1.00 C +ATOM 443 C GLY 31 -13.726 14.472 -15.434 1.00 1.00 C +ATOM 444 O GLY 31 -13.402 15.351 -14.636 1.00 1.00 O +ATOM 445 H GLY 31 -16.345 14.543 -15.834 1.00 1.00 H +ATOM 446 HA2 GLY 31 -14.455 13.982 -17.405 1.00 1.00 H +ATOM 447 HA3 GLY 31 -13.983 15.660 -17.216 1.00 1.00 H +ATOM 448 N SER 32 -13.469 13.182 -15.276 1.00 1.00 N +ATOM 449 CA SER 32 -12.760 12.699 -14.103 1.00 1.00 C +ATOM 450 C SER 32 -11.733 11.641 -14.511 1.00 1.00 C +ATOM 451 O SER 32 -12.068 10.681 -15.205 1.00 1.00 O +ATOM 454 H SER 32 -13.737 12.473 -15.929 1.00 1.00 H +ATOM 455 HA SER 32 -12.262 13.573 -13.686 1.00 1.00 H +ATOM 452 CB SER 32 -13.731 12.125 -13.069 1.00 1.00 C +ATOM 453 OG SER 32 -13.987 10.740 -13.288 1.00 1.00 O +ATOM 456 HB2 SER 32 -13.321 12.263 -12.069 1.00 1.00 H +ATOM 457 HB3 SER 32 -14.670 12.678 -13.108 1.00 1.00 H +ATOM 458 HG SER 32 -13.911 10.528 -14.263 1.00 1.00 H +ATOM 459 N PHE 33 -10.504 11.851 -14.064 1.00 1.00 N +ATOM 460 CA PHE 33 -9.427 10.927 -14.375 1.00 1.00 C +ATOM 461 C PHE 33 -9.076 10.066 -13.159 1.00 1.00 C +ATOM 462 O PHE 33 -9.419 10.411 -12.030 1.00 1.00 O +ATOM 470 H PHE 33 -10.241 12.633 -13.501 1.00 1.00 H +ATOM 471 HA PHE 33 -9.774 10.285 -15.184 1.00 1.00 H +ATOM 463 CB PHE 33 -8.210 11.771 -14.756 1.00 1.00 C +ATOM 464 CG PHE 33 -8.534 12.950 -15.676 1.00 1.00 C +ATOM 465 CD1 PHE 33 -9.756 13.541 -15.619 1.00 1.00 C +ATOM 466 CD2 PHE 33 -7.597 13.407 -16.551 1.00 1.00 C +ATOM 467 CE1 PHE 33 -10.058 14.636 -16.473 1.00 1.00 C +ATOM 468 CE2 PHE 33 -7.899 14.501 -17.404 1.00 1.00 C +ATOM 469 CZ PHE 33 -9.121 15.093 -17.347 1.00 1.00 C +ATOM 472 HB2 PHE 33 -7.744 12.150 -13.846 1.00 1.00 H +ATOM 473 HB3 PHE 33 -7.475 11.132 -15.247 1.00 1.00 H +ATOM 474 HD1 PHE 33 -10.507 13.175 -14.918 1.00 1.00 H +ATOM 475 HD2 PHE 33 -6.617 12.933 -16.596 1.00 1.00 H +ATOM 476 HE1 PHE 33 -11.038 15.110 -16.427 1.00 1.00 H +ATOM 477 HE2 PHE 33 -7.148 14.867 -18.105 1.00 1.00 H +ATOM 478 HZ PHE 33 -9.352 15.932 -18.002 1.00 1.00 H +ATOM 479 N LEU 34 -8.395 8.963 -13.433 1.00 1.00 N +ATOM 480 CA LEU 34 -7.993 8.049 -12.376 1.00 1.00 C +ATOM 481 C LEU 34 -6.722 7.312 -12.802 1.00 1.00 C +ATOM 482 O LEU 34 -6.614 6.859 -13.941 1.00 1.00 O +ATOM 487 H LEU 34 -8.119 8.690 -14.355 1.00 1.00 H +ATOM 488 HA LEU 34 -7.765 8.650 -11.495 1.00 1.00 H +ATOM 483 CB LEU 34 -9.149 7.119 -12.004 1.00 1.00 C +ATOM 484 CG LEU 34 -9.545 6.085 -13.059 1.00 1.00 C +ATOM 485 CD1 LEU 34 -9.545 6.704 -14.459 1.00 1.00 C +ATOM 486 CD2 LEU 34 -8.648 4.849 -12.979 1.00 1.00 C +ATOM 489 HB2 LEU 34 -8.883 6.591 -11.089 1.00 1.00 H +ATOM 490 HB3 LEU 34 -10.023 7.731 -11.776 1.00 1.00 H +ATOM 491 HG LEU 34 -10.564 5.759 -12.852 1.00 1.00 H +ATOM 492 HD11 LEU 34 -9.987 7.699 -14.417 1.00 1.00 H +ATOM 493 HD12 LEU 34 -8.520 6.777 -14.824 1.00 1.00 H +ATOM 494 HD13 LEU 34 -10.126 6.076 -15.134 1.00 1.00 H +ATOM 495 HD21 LEU 34 -8.735 4.400 -11.990 1.00 1.00 H +ATOM 496 HD22 LEU 34 -8.959 4.125 -13.734 1.00 1.00 H +ATOM 497 HD23 LEU 34 -7.612 5.138 -13.157 1.00 1.00 H +ATOM 498 N VAL 35 -5.790 7.214 -11.864 1.00 1.00 N +ATOM 499 CA VAL 35 -4.532 6.538 -12.128 1.00 1.00 C +ATOM 500 C VAL 35 -4.715 5.032 -11.933 1.00 1.00 C +ATOM 501 O VAL 35 -5.496 4.603 -11.085 1.00 1.00 O +ATOM 505 H VAL 35 -5.886 7.585 -10.941 1.00 1.00 H +ATOM 506 HA VAL 35 -4.269 6.728 -13.168 1.00 1.00 H +ATOM 502 CB VAL 35 -3.428 7.125 -11.245 1.00 1.00 C +ATOM 503 CG1 VAL 35 -2.105 6.387 -11.457 1.00 1.00 C +ATOM 504 CG2 VAL 35 -3.265 8.626 -11.496 1.00 1.00 C +ATOM 507 HB VAL 35 -3.724 6.991 -10.205 1.00 1.00 H +ATOM 508 HG11 VAL 35 -2.287 5.312 -11.466 1.00 1.00 H +ATOM 509 HG12 VAL 35 -1.669 6.689 -12.409 1.00 1.00 H +ATOM 510 HG13 VAL 35 -1.418 6.633 -10.648 1.00 1.00 H +ATOM 511 HG21 VAL 35 -4.036 8.964 -12.188 1.00 1.00 H +ATOM 512 HG22 VAL 35 -3.361 9.164 -10.554 1.00 1.00 H +ATOM 513 HG23 VAL 35 -2.282 8.818 -11.926 1.00 1.00 H +ATOM 514 N ARG 36 -3.982 4.271 -12.732 1.00 1.00 N +ATOM 515 CA ARG 36 -4.054 2.821 -12.658 1.00 1.00 C +ATOM 516 C ARG 36 -2.708 2.245 -12.219 1.00 1.00 C +ATOM 517 O ARG 36 -1.712 2.965 -12.150 1.00 1.00 O +ATOM 525 H ARG 36 -3.350 4.627 -13.419 1.00 1.00 H +ATOM 526 HA ARG 36 -4.828 2.618 -11.917 1.00 1.00 H +ATOM 518 CB ARG 36 -4.443 2.220 -14.010 1.00 1.00 C +ATOM 519 CG ARG 36 -4.689 3.316 -15.048 1.00 1.00 C +ATOM 520 CD ARG 36 -5.500 2.781 -16.229 1.00 1.00 C +ATOM 521 NE ARG 36 -5.089 3.465 -17.476 1.00 1.00 N +ATOM 522 CZ ARG 36 -4.263 2.933 -18.388 1.00 1.00 C +ATOM 523 NH1 ARG 36 -3.756 1.708 -18.198 1.00 1.00 N +ATOM 524 NH2 ARG 36 -3.947 3.627 -19.490 1.00 1.00 N +ATOM 527 HB2 ARG 36 -3.652 1.555 -14.357 1.00 1.00 H +ATOM 528 HB3 ARG 36 -5.342 1.613 -13.897 1.00 1.00 H +ATOM 529 HG2 ARG 36 -5.220 4.148 -14.585 1.00 1.00 H +ATOM 530 HG3 ARG 36 -3.735 3.705 -15.403 1.00 1.00 H +ATOM 531 HD2 ARG 36 -5.349 1.706 -16.328 1.00 1.00 H +ATOM 532 HD3 ARG 36 -6.564 2.938 -16.053 1.00 1.00 H +ATOM 533 HE ARG 36 -5.451 4.381 -17.650 1.00 1.00 H +ATOM 534 HH11 ARG 36 -3.992 1.191 -17.375 1.00 1.00 H +ATOM 535 HH12 ARG 36 -3.139 1.312 -18.878 1.00 1.00 H +ATOM 536 HH21 ARG 36 -4.326 4.541 -19.632 1.00 1.00 H +ATOM 537 HH22 ARG 36 -3.331 3.230 -20.170 1.00 1.00 H +ATOM 538 N GLU 37 -2.718 0.951 -11.934 1.00 1.00 N +ATOM 539 CA GLU 37 -1.509 0.269 -11.504 1.00 1.00 C +ATOM 540 C GLU 37 -1.214 -0.918 -12.423 1.00 1.00 C +ATOM 541 O GLU 37 -1.790 -1.030 -13.503 1.00 1.00 O +ATOM 547 H GLU 37 -3.532 0.372 -11.993 1.00 1.00 H +ATOM 548 HA GLU 37 -0.714 1.009 -11.588 1.00 1.00 H +ATOM 542 CB GLU 37 -1.623 -0.181 -10.046 1.00 1.00 C +ATOM 543 CG GLU 37 -0.638 0.582 -9.157 1.00 1.00 C +ATOM 544 CD GLU 37 0.543 -0.306 -8.761 1.00 1.00 C +ATOM 545 OE1 GLU 37 0.321 -1.531 -8.651 1.00 1.00 O +ATOM 546 OE2 GLU 37 1.642 0.262 -8.576 1.00 1.00 O +ATOM 549 HB2 GLU 37 -2.641 -0.019 -9.690 1.00 1.00 H +ATOM 550 HB3 GLU 37 -1.427 -1.252 -9.975 1.00 1.00 H +ATOM 551 HG2 GLU 37 -0.275 1.463 -9.685 1.00 1.00 H +ATOM 552 HG3 GLU 37 -1.149 0.935 -8.262 1.00 1.00 H +ATOM 553 N SER 38 -0.315 -1.774 -11.960 1.00 1.00 N +ATOM 554 CA SER 38 0.065 -2.948 -12.726 1.00 1.00 C +ATOM 555 C SER 38 -1.172 -3.570 -13.379 1.00 1.00 C +ATOM 556 O SER 38 -2.187 -3.782 -12.718 1.00 1.00 O +ATOM 559 H SER 38 0.149 -1.677 -11.080 1.00 1.00 H +ATOM 560 HA SER 38 0.756 -2.586 -13.487 1.00 1.00 H +ATOM 557 CB SER 38 0.772 -3.979 -11.844 1.00 1.00 C +ATOM 558 OG SER 38 0.308 -5.303 -12.092 1.00 1.00 O +ATOM 561 HB2 SER 38 1.847 -3.931 -12.022 1.00 1.00 H +ATOM 562 HB3 SER 38 0.611 -3.729 -10.795 1.00 1.00 H +ATOM 563 HG SER 38 0.564 -5.902 -11.333 1.00 1.00 H +ATOM 564 N GLU 39 -1.047 -3.843 -14.670 1.00 1.00 N +ATOM 565 CA GLU 39 -2.141 -4.435 -15.419 1.00 1.00 C +ATOM 566 C GLU 39 -1.666 -5.694 -16.148 1.00 1.00 C +ATOM 567 O GLU 39 -2.309 -6.739 -16.073 1.00 1.00 O +ATOM 573 H GLU 39 -0.218 -3.668 -15.200 1.00 1.00 H +ATOM 574 HA GLU 39 -2.893 -4.701 -14.674 1.00 1.00 H +ATOM 568 CB GLU 39 -2.744 -3.427 -16.399 1.00 1.00 C +ATOM 569 CG GLU 39 -3.753 -4.103 -17.330 1.00 1.00 C +ATOM 570 CD GLU 39 -3.361 -3.908 -18.797 1.00 1.00 C +ATOM 571 OE1 GLU 39 -2.566 -4.738 -19.287 1.00 1.00 O +ATOM 572 OE2 GLU 39 -3.865 -2.933 -19.394 1.00 1.00 O +ATOM 575 HB2 GLU 39 -3.234 -2.626 -15.847 1.00 1.00 H +ATOM 576 HB3 GLU 39 -1.950 -2.968 -16.989 1.00 1.00 H +ATOM 577 HG2 GLU 39 -3.806 -5.168 -17.103 1.00 1.00 H +ATOM 578 HG3 GLU 39 -4.745 -3.689 -17.158 1.00 1.00 H +ATOM 579 N SER 40 -0.544 -5.551 -16.838 1.00 1.00 N +ATOM 580 CA SER 40 0.025 -6.662 -17.581 1.00 1.00 C +ATOM 581 C SER 40 1.517 -6.791 -17.270 1.00 1.00 C +ATOM 582 O SER 40 2.218 -7.588 -17.890 1.00 1.00 O +ATOM 585 H SER 40 -0.027 -4.696 -16.894 1.00 1.00 H +ATOM 586 HA SER 40 -0.516 -7.544 -17.238 1.00 1.00 H +ATOM 583 CB SER 40 -0.190 -6.486 -19.086 1.00 1.00 C +ATOM 584 OG SER 40 0.503 -7.475 -19.843 1.00 1.00 O +ATOM 587 HB2 SER 40 -1.256 -6.539 -19.309 1.00 1.00 H +ATOM 588 HB3 SER 40 0.150 -5.495 -19.387 1.00 1.00 H +ATOM 589 HG SER 40 0.022 -8.350 -19.785 1.00 1.00 H +ATOM 590 N SER 41 1.959 -5.994 -16.308 1.00 1.00 N +ATOM 591 CA SER 41 3.355 -6.008 -15.906 1.00 1.00 C +ATOM 592 C SER 41 3.462 -6.187 -14.390 1.00 1.00 C +ATOM 593 O SER 41 2.590 -5.740 -13.646 1.00 1.00 O +ATOM 596 H SER 41 1.382 -5.348 -15.807 1.00 1.00 H +ATOM 597 HA SER 41 3.795 -6.860 -16.424 1.00 1.00 H +ATOM 594 CB SER 41 4.067 -4.726 -16.340 1.00 1.00 C +ATOM 595 OG SER 41 5.052 -4.974 -17.339 1.00 1.00 O +ATOM 598 HB2 SER 41 3.334 -4.015 -16.722 1.00 1.00 H +ATOM 599 HB3 SER 41 4.538 -4.261 -15.474 1.00 1.00 H +ATOM 600 HG SER 41 5.652 -4.179 -17.433 1.00 1.00 H +ATOM 601 N PRO 42 4.566 -6.859 -13.967 1.00 1.00 N +ATOM 602 CA PRO 42 4.798 -7.103 -12.553 1.00 1.00 C +ATOM 603 C PRO 42 5.260 -5.826 -11.845 1.00 1.00 C +ATOM 604 O PRO 42 6.326 -5.804 -11.232 1.00 1.00 O +ATOM 608 HA PRO 42 3.947 -7.371 -12.103 1.00 1.00 H +ATOM 605 CB PRO 42 5.833 -8.214 -12.510 1.00 1.00 C +ATOM 606 CG PRO 42 6.484 -8.230 -13.884 1.00 1.00 C +ATOM 607 CD PRO 42 5.619 -7.402 -14.819 1.00 1.00 C +ATOM 609 HB2 PRO 42 6.572 -8.029 -11.731 1.00 1.00 H +ATOM 610 HB3 PRO 42 5.368 -9.174 -12.287 1.00 1.00 H +ATOM 611 HG2 PRO 42 7.493 -7.821 -13.833 1.00 1.00 H +ATOM 612 HG3 PRO 42 6.573 -9.253 -14.252 1.00 1.00 H +ATOM 613 HD2 PRO 42 6.196 -6.607 -15.292 1.00 1.00 H +ATOM 614 HD3 PRO 42 5.205 -8.013 -15.621 1.00 1.00 H +ATOM 615 N GLY 43 4.434 -4.796 -11.954 1.00 1.00 N +ATOM 616 CA GLY 43 4.744 -3.520 -11.332 1.00 1.00 C +ATOM 617 C GLY 43 4.787 -2.399 -12.373 1.00 1.00 C +ATOM 618 O GLY 43 5.863 -1.943 -12.755 1.00 1.00 O +ATOM 619 H GLY 43 3.569 -4.823 -12.455 1.00 1.00 H +ATOM 620 HA2 GLY 43 3.996 -3.289 -10.574 1.00 1.00 H +ATOM 621 HA3 GLY 43 5.706 -3.584 -10.822 1.00 1.00 H +ATOM 622 N GLN 44 3.603 -1.987 -12.800 1.00 1.00 N +ATOM 623 CA GLN 44 3.490 -0.928 -13.789 1.00 1.00 C +ATOM 624 C GLN 44 2.388 0.055 -13.390 1.00 1.00 C +ATOM 625 O GLN 44 1.444 -0.314 -12.694 1.00 1.00 O +ATOM 631 H GLN 44 2.732 -2.363 -12.483 1.00 1.00 H +ATOM 632 HA GLN 44 4.457 -0.423 -13.783 1.00 1.00 H +ATOM 626 CB GLN 44 3.234 -1.504 -15.183 1.00 1.00 C +ATOM 627 CG GLN 44 4.379 -1.159 -16.138 1.00 1.00 C +ATOM 628 CD GLN 44 3.841 -0.633 -17.470 1.00 1.00 C +ATOM 629 OE1 GLN 44 3.130 -1.310 -18.193 1.00 1.00 O +ATOM 630 NE2 GLN 44 4.220 0.610 -17.754 1.00 1.00 N +ATOM 633 HB2 GLN 44 3.124 -2.586 -15.118 1.00 1.00 H +ATOM 634 HB3 GLN 44 2.297 -1.110 -15.576 1.00 1.00 H +ATOM 635 HG2 GLN 44 5.025 -0.409 -15.680 1.00 1.00 H +ATOM 636 HG3 GLN 44 4.991 -2.043 -16.312 1.00 1.00 H +ATOM 637 HE21 GLN 44 4.806 1.112 -17.117 1.00 1.00 H +ATOM 638 HE22 GLN 44 3.920 1.043 -18.604 1.00 1.00 H +ATOM 639 N ARG 45 2.546 1.289 -13.849 1.00 1.00 N +ATOM 640 CA ARG 45 1.576 2.328 -13.549 1.00 1.00 C +ATOM 641 C ARG 45 1.145 3.039 -14.834 1.00 1.00 C +ATOM 642 O ARG 45 1.985 3.414 -15.651 1.00 1.00 O +ATOM 650 H ARG 45 3.317 1.581 -14.415 1.00 1.00 H +ATOM 651 HA ARG 45 0.737 1.803 -13.091 1.00 1.00 H +ATOM 643 CB ARG 45 2.153 3.357 -12.574 1.00 1.00 C +ATOM 644 CG ARG 45 2.649 2.680 -11.295 1.00 1.00 C +ATOM 645 CD ARG 45 4.105 2.232 -11.439 1.00 1.00 C +ATOM 646 NE ARG 45 4.689 1.975 -10.104 1.00 1.00 N +ATOM 647 CZ ARG 45 4.496 0.849 -9.404 1.00 1.00 C +ATOM 648 NH1 ARG 45 3.731 -0.130 -9.907 1.00 1.00 N +ATOM 649 NH2 ARG 45 5.066 0.702 -8.200 1.00 1.00 N +ATOM 652 HB2 ARG 45 2.976 3.891 -13.050 1.00 1.00 H +ATOM 653 HB3 ARG 45 1.392 4.097 -12.328 1.00 1.00 H +ATOM 654 HG2 ARG 45 2.558 3.371 -10.456 1.00 1.00 H +ATOM 655 HG3 ARG 45 2.020 1.820 -11.067 1.00 1.00 H +ATOM 656 HD2 ARG 45 4.157 1.331 -12.049 1.00 1.00 H +ATOM 657 HD3 ARG 45 4.681 3.000 -11.956 1.00 1.00 H +ATOM 658 HE ARG 45 5.265 2.685 -9.700 1.00 1.00 H +ATOM 659 HH11 ARG 45 3.306 -0.020 -10.805 1.00 1.00 H +ATOM 660 HH12 ARG 45 3.587 -0.971 -9.384 1.00 1.00 H +ATOM 661 HH21 ARG 45 5.637 1.432 -7.825 1.00 1.00 H +ATOM 662 HH22 ARG 45 4.922 -0.139 -7.678 1.00 1.00 H +ATOM 663 N SER 46 -0.162 3.203 -14.972 1.00 1.00 N +ATOM 664 CA SER 46 -0.714 3.862 -16.143 1.00 1.00 C +ATOM 665 C SER 46 -1.677 4.970 -15.715 1.00 1.00 C +ATOM 666 O SER 46 -1.937 5.147 -14.525 1.00 1.00 O +ATOM 669 H SER 46 -0.838 2.894 -14.302 1.00 1.00 H +ATOM 670 HA SER 46 0.143 4.282 -16.669 1.00 1.00 H +ATOM 667 CB SER 46 -1.429 2.860 -17.054 1.00 1.00 C +ATOM 668 OG SER 46 -0.510 2.020 -17.748 1.00 1.00 O +ATOM 671 HB2 SER 46 -2.102 2.245 -16.458 1.00 1.00 H +ATOM 672 HB3 SER 46 -2.043 3.400 -17.774 1.00 1.00 H +ATOM 673 HG SER 46 -1.009 1.351 -18.299 1.00 1.00 H +ATOM 674 N ILE 47 -2.182 5.689 -16.707 1.00 1.00 N +ATOM 675 CA ILE 47 -3.110 6.776 -16.448 1.00 1.00 C +ATOM 676 C ILE 47 -4.387 6.554 -17.262 1.00 1.00 C +ATOM 677 O ILE 47 -4.330 6.366 -18.475 1.00 1.00 O +ATOM 682 H ILE 47 -1.965 5.539 -17.672 1.00 1.00 H +ATOM 683 HA ILE 47 -3.364 6.742 -15.389 1.00 1.00 H +ATOM 678 CB ILE 47 -2.441 8.126 -16.710 1.00 1.00 C +ATOM 679 CG1 ILE 47 -1.848 8.704 -15.422 1.00 1.00 C +ATOM 680 CG2 ILE 47 -3.413 9.099 -17.380 1.00 1.00 C +ATOM 681 CD1 ILE 47 -2.877 8.686 -14.290 1.00 1.00 C +ATOM 684 HB ILE 47 -1.614 7.969 -17.403 1.00 1.00 H +ATOM 685 HG12 ILE 47 -0.971 8.125 -15.131 1.00 1.00 H +ATOM 686 HG13 ILE 47 -1.513 9.726 -15.599 1.00 1.00 H +ATOM 687 HG21 ILE 47 -4.381 9.046 -16.883 1.00 1.00 H +ATOM 688 HG22 ILE 47 -3.022 10.114 -17.304 1.00 1.00 H +ATOM 689 HG23 ILE 47 -3.529 8.833 -18.430 1.00 1.00 H +ATOM 690 HD11 ILE 47 -3.882 8.666 -14.712 1.00 1.00 H +ATOM 691 HD12 ILE 47 -2.723 7.800 -13.673 1.00 1.00 H +ATOM 692 HD13 ILE 47 -2.757 9.580 -13.678 1.00 1.00 H +ATOM 693 N SER 48 -5.510 6.584 -16.559 1.00 1.00 N +ATOM 694 CA SER 48 -6.800 6.389 -17.201 1.00 1.00 C +ATOM 695 C SER 48 -7.630 7.670 -17.107 1.00 1.00 C +ATOM 696 O SER 48 -7.698 8.294 -16.049 1.00 1.00 O +ATOM 699 H SER 48 -5.548 6.737 -15.572 1.00 1.00 H +ATOM 700 HA SER 48 -6.572 6.156 -18.241 1.00 1.00 H +ATOM 697 CB SER 48 -7.556 5.218 -16.571 1.00 1.00 C +ATOM 698 OG SER 48 -7.105 4.940 -15.248 1.00 1.00 O +ATOM 701 HB2 SER 48 -8.622 5.446 -16.549 1.00 1.00 H +ATOM 702 HB3 SER 48 -7.432 4.330 -17.191 1.00 1.00 H +ATOM 703 HG SER 48 -6.867 5.792 -14.781 1.00 1.00 H +ATOM 704 N LEU 49 -8.240 8.026 -18.227 1.00 1.00 N +ATOM 705 CA LEU 49 -9.063 9.222 -18.285 1.00 1.00 C +ATOM 706 C LEU 49 -10.491 8.835 -18.680 1.00 1.00 C +ATOM 707 O LEU 49 -10.689 8.020 -19.580 1.00 1.00 O +ATOM 712 H LEU 49 -8.180 7.513 -19.084 1.00 1.00 H +ATOM 713 HA LEU 49 -9.087 9.650 -17.283 1.00 1.00 H +ATOM 708 CB LEU 49 -8.431 10.264 -19.208 1.00 1.00 C +ATOM 709 CG LEU 49 -6.913 10.171 -19.384 1.00 1.00 C +ATOM 710 CD1 LEU 49 -6.193 10.413 -18.056 1.00 1.00 C +ATOM 711 CD2 LEU 49 -6.515 8.837 -20.017 1.00 1.00 C +ATOM 714 HB2 LEU 49 -8.895 10.182 -20.190 1.00 1.00 H +ATOM 715 HB3 LEU 49 -8.672 11.255 -18.824 1.00 1.00 H +ATOM 716 HG LEU 49 -6.600 10.959 -20.068 1.00 1.00 H +ATOM 717 HD11 LEU 49 -6.609 11.297 -17.572 1.00 1.00 H +ATOM 718 HD12 LEU 49 -6.324 9.548 -17.408 1.00 1.00 H +ATOM 719 HD13 LEU 49 -5.130 10.568 -18.243 1.00 1.00 H +ATOM 720 HD21 LEU 49 -7.368 8.422 -20.555 1.00 1.00 H +ATOM 721 HD22 LEU 49 -5.690 8.996 -20.711 1.00 1.00 H +ATOM 722 HD23 LEU 49 -6.204 8.142 -19.236 1.00 1.00 H +ATOM 723 N ARG 50 -11.446 9.440 -17.990 1.00 1.00 N +ATOM 724 CA ARG 50 -12.848 9.168 -18.259 1.00 1.00 C +ATOM 725 C ARG 50 -13.558 10.446 -18.712 1.00 1.00 C +ATOM 726 O ARG 50 -13.614 11.425 -17.971 1.00 1.00 O +ATOM 734 H ARG 50 -11.276 10.101 -17.260 1.00 1.00 H +ATOM 735 HA ARG 50 -12.841 8.421 -19.052 1.00 1.00 H +ATOM 727 CB ARG 50 -13.550 8.617 -17.016 1.00 1.00 C +ATOM 728 CG ARG 50 -15.039 8.387 -17.284 1.00 1.00 C +ATOM 729 CD ARG 50 -15.901 9.118 -16.253 1.00 1.00 C +ATOM 730 NE ARG 50 -15.562 8.653 -14.890 1.00 1.00 N +ATOM 731 CZ ARG 50 -16.470 8.296 -13.970 1.00 1.00 C +ATOM 732 NH1 ARG 50 -17.776 8.349 -14.263 1.00 1.00 N +ATOM 733 NH2 ARG 50 -16.071 7.886 -12.758 1.00 1.00 N +ATOM 736 HB2 ARG 50 -13.082 7.679 -16.715 1.00 1.00 H +ATOM 737 HB3 ARG 50 -13.429 9.313 -16.187 1.00 1.00 H +ATOM 738 HG2 ARG 50 -15.290 8.735 -18.286 1.00 1.00 H +ATOM 739 HG3 ARG 50 -15.257 7.319 -17.254 1.00 1.00 H +ATOM 740 HD2 ARG 50 -15.741 10.193 -16.329 1.00 1.00 H +ATOM 741 HD3 ARG 50 -16.957 8.938 -16.455 1.00 1.00 H +ATOM 742 HE ARG 50 -14.596 8.602 -14.638 1.00 1.00 H +ATOM 743 HH11 ARG 50 -18.074 8.655 -15.167 1.00 1.00 H +ATOM 744 HH12 ARG 50 -18.454 8.082 -13.578 1.00 1.00 H +ATOM 745 HH21 ARG 50 -15.096 7.847 -12.540 1.00 1.00 H +ATOM 746 HH22 ARG 50 -16.748 7.620 -12.073 1.00 1.00 H +ATOM 747 N TYR 51 -14.083 10.393 -19.927 1.00 1.00 N +ATOM 748 CA TYR 51 -14.787 11.534 -20.489 1.00 1.00 C +ATOM 749 C TYR 51 -16.290 11.435 -20.222 1.00 1.00 C +ATOM 750 O TYR 51 -16.716 10.766 -19.282 1.00 1.00 O +ATOM 759 H TYR 51 -14.033 9.592 -20.524 1.00 1.00 H +ATOM 760 HA TYR 51 -14.400 12.435 -20.013 1.00 1.00 H +ATOM 751 CB TYR 51 -14.543 11.480 -21.998 1.00 1.00 C +ATOM 752 CG TYR 51 -13.771 12.680 -22.548 1.00 1.00 C +ATOM 753 CD1 TYR 51 -14.409 13.894 -22.711 1.00 1.00 C +ATOM 754 CD2 TYR 51 -12.438 12.551 -22.878 1.00 1.00 C +ATOM 755 CE1 TYR 51 -13.682 15.025 -23.228 1.00 1.00 C +ATOM 756 CE2 TYR 51 -11.711 13.682 -23.395 1.00 1.00 C +ATOM 757 CZ TYR 51 -12.369 14.863 -23.545 1.00 1.00 C +ATOM 758 OH TYR 51 -11.682 15.930 -24.034 1.00 1.00 O +ATOM 761 HB2 TYR 51 -13.993 10.569 -22.234 1.00 1.00 H +ATOM 762 HB3 TYR 51 -15.503 11.414 -22.508 1.00 1.00 H +ATOM 763 HD1 TYR 51 -15.461 13.996 -22.451 1.00 1.00 H +ATOM 764 HD2 TYR 51 -11.934 11.594 -22.748 1.00 1.00 H +ATOM 765 HE1 TYR 51 -14.173 15.988 -23.364 1.00 1.00 H +ATOM 766 HE2 TYR 51 -10.658 13.593 -23.661 1.00 1.00 H +ATOM 767 HH TYR 51 -11.039 16.267 -23.346 1.00 1.00 H +ATOM 768 N GLU 52 -17.054 12.110 -21.069 1.00 1.00 N +ATOM 769 CA GLU 52 -18.501 12.107 -20.938 1.00 1.00 C +ATOM 770 C GLU 52 -19.071 10.759 -21.384 1.00 1.00 C +ATOM 771 O GLU 52 -20.245 10.665 -21.740 1.00 1.00 O +ATOM 777 H GLU 52 -16.700 12.652 -21.832 1.00 1.00 H +ATOM 778 HA GLU 52 -18.696 12.258 -19.876 1.00 1.00 H +ATOM 772 CB GLU 52 -19.126 13.256 -21.731 1.00 1.00 C +ATOM 773 CG GLU 52 -18.988 14.581 -20.978 1.00 1.00 C +ATOM 774 CD GLU 52 -18.317 15.642 -21.853 1.00 1.00 C +ATOM 775 OE1 GLU 52 -17.069 15.698 -21.820 1.00 1.00 O +ATOM 776 OE2 GLU 52 -19.069 16.373 -22.535 1.00 1.00 O +ATOM 779 HB2 GLU 52 -18.644 13.336 -22.705 1.00 1.00 H +ATOM 780 HB3 GLU 52 -20.180 13.046 -21.913 1.00 1.00 H +ATOM 781 HG2 GLU 52 -19.972 14.930 -20.666 1.00 1.00 H +ATOM 782 HG3 GLU 52 -18.402 14.429 -20.071 1.00 1.00 H +ATOM 783 N GLY 53 -18.214 9.750 -21.351 1.00 1.00 N +ATOM 784 CA GLY 53 -18.618 8.412 -21.748 1.00 1.00 C +ATOM 785 C GLY 53 -17.442 7.641 -22.353 1.00 1.00 C +ATOM 786 O GLY 53 -17.471 6.413 -22.425 1.00 1.00 O +ATOM 787 H GLY 53 -17.260 9.835 -21.060 1.00 1.00 H +ATOM 788 HA2 GLY 53 -19.002 7.873 -20.882 1.00 1.00 H +ATOM 789 HA3 GLY 53 -19.429 8.473 -22.472 1.00 1.00 H +ATOM 790 N ARG 54 -16.437 8.394 -22.774 1.00 1.00 N +ATOM 791 CA ARG 54 -15.254 7.798 -23.371 1.00 1.00 C +ATOM 792 C ARG 54 -14.211 7.495 -22.294 1.00 1.00 C +ATOM 793 O ARG 54 -14.222 8.103 -21.225 1.00 1.00 O +ATOM 801 H ARG 54 -16.421 9.392 -22.712 1.00 1.00 H +ATOM 802 HA ARG 54 -15.611 6.880 -23.840 1.00 1.00 H +ATOM 794 CB ARG 54 -14.640 8.726 -24.421 1.00 1.00 C +ATOM 795 CG ARG 54 -15.065 8.315 -25.832 1.00 1.00 C +ATOM 796 CD ARG 54 -13.855 8.209 -26.762 1.00 1.00 C +ATOM 797 NE ARG 54 -14.304 8.046 -28.162 1.00 1.00 N +ATOM 798 CZ ARG 54 -14.862 9.021 -28.891 1.00 1.00 C +ATOM 799 NH1 ARG 54 -15.043 10.237 -28.357 1.00 1.00 N +ATOM 800 NH2 ARG 54 -15.239 8.781 -30.155 1.00 1.00 N +ATOM 803 HB2 ARG 54 -14.948 9.753 -24.229 1.00 1.00 H +ATOM 804 HB3 ARG 54 -13.553 8.699 -24.343 1.00 1.00 H +ATOM 805 HG2 ARG 54 -15.585 7.358 -25.795 1.00 1.00 H +ATOM 806 HG3 ARG 54 -15.771 9.045 -26.229 1.00 1.00 H +ATOM 807 HD2 ARG 54 -13.238 9.104 -26.672 1.00 1.00 H +ATOM 808 HD3 ARG 54 -13.234 7.363 -26.469 1.00 1.00 H +ATOM 809 HE ARG 54 -14.184 7.150 -28.591 1.00 1.00 H +ATOM 810 HH11 ARG 54 -14.761 10.416 -27.415 1.00 1.00 H +ATOM 811 HH12 ARG 54 -15.459 10.965 -28.902 1.00 1.00 H +ATOM 812 HH21 ARG 54 -15.105 7.874 -30.553 1.00 1.00 H +ATOM 813 HH22 ARG 54 -15.656 9.510 -30.699 1.00 1.00 H +ATOM 814 N VAL 55 -13.332 6.556 -22.614 1.00 1.00 N +ATOM 815 CA VAL 55 -12.284 6.166 -21.686 1.00 1.00 C +ATOM 816 C VAL 55 -10.960 6.040 -22.444 1.00 1.00 C +ATOM 817 O VAL 55 -10.806 5.162 -23.291 1.00 1.00 O +ATOM 821 H VAL 55 -13.329 6.066 -23.486 1.00 1.00 H +ATOM 822 HA VAL 55 -12.189 6.958 -20.943 1.00 1.00 H +ATOM 818 CB VAL 55 -12.681 4.879 -20.959 1.00 1.00 C +ATOM 819 CG1 VAL 55 -11.885 4.715 -19.662 1.00 1.00 C +ATOM 820 CG2 VAL 55 -14.186 4.845 -20.687 1.00 1.00 C +ATOM 823 HB VAL 55 -12.439 4.039 -21.610 1.00 1.00 H +ATOM 824 HG11 VAL 55 -11.040 5.404 -19.664 1.00 1.00 H +ATOM 825 HG12 VAL 55 -12.529 4.932 -18.811 1.00 1.00 H +ATOM 826 HG13 VAL 55 -11.518 3.690 -19.589 1.00 1.00 H +ATOM 827 HG21 VAL 55 -14.566 5.865 -20.622 1.00 1.00 H +ATOM 828 HG22 VAL 55 -14.690 4.320 -21.498 1.00 1.00 H +ATOM 829 HG23 VAL 55 -14.374 4.327 -19.747 1.00 1.00 H +ATOM 830 N TYR 56 -10.038 6.931 -22.111 1.00 1.00 N +ATOM 831 CA TYR 56 -8.732 6.931 -22.749 1.00 1.00 C +ATOM 832 C TYR 56 -7.694 6.227 -21.872 1.00 1.00 C +ATOM 833 O TYR 56 -7.857 6.142 -20.656 1.00 1.00 O +ATOM 842 H TYR 56 -10.170 7.642 -21.421 1.00 1.00 H +ATOM 843 HA TYR 56 -8.821 6.397 -23.695 1.00 1.00 H +ATOM 834 CB TYR 56 -8.338 8.401 -22.904 1.00 1.00 C +ATOM 835 CG TYR 56 -8.987 9.096 -24.103 1.00 1.00 C +ATOM 836 CD1 TYR 56 -10.241 9.661 -23.978 1.00 1.00 C +ATOM 837 CD2 TYR 56 -8.320 9.157 -25.310 1.00 1.00 C +ATOM 838 CE1 TYR 56 -10.851 10.314 -25.107 1.00 1.00 C +ATOM 839 CE2 TYR 56 -8.931 9.811 -26.438 1.00 1.00 C +ATOM 840 CZ TYR 56 -10.165 10.357 -26.281 1.00 1.00 C +ATOM 841 OH TYR 56 -10.742 10.974 -27.347 1.00 1.00 O +ATOM 844 HB2 TYR 56 -8.612 8.938 -21.996 1.00 1.00 H +ATOM 845 HB3 TYR 56 -7.255 8.469 -23.001 1.00 1.00 H +ATOM 846 HD1 TYR 56 -10.767 9.613 -23.026 1.00 1.00 H +ATOM 847 HD2 TYR 56 -7.330 8.710 -25.408 1.00 1.00 H +ATOM 848 HE1 TYR 56 -11.840 10.765 -25.022 1.00 1.00 H +ATOM 849 HE2 TYR 56 -8.414 9.866 -27.396 1.00 1.00 H +ATOM 850 HH TYR 56 -10.174 10.854 -28.161 1.00 1.00 H +ATOM 851 N HIS 57 -6.648 5.741 -22.525 1.00 1.00 N +ATOM 852 CA HIS 57 -5.583 5.047 -21.820 1.00 1.00 C +ATOM 853 C HIS 57 -4.240 5.704 -22.146 1.00 1.00 C +ATOM 854 O HIS 57 -3.771 5.639 -23.281 1.00 1.00 O +ATOM 861 H HIS 57 -6.523 5.814 -23.514 1.00 1.00 H +ATOM 862 HA HIS 57 -5.786 5.162 -20.756 1.00 1.00 H +ATOM 855 CB HIS 57 -5.604 3.551 -22.142 1.00 1.00 C +ATOM 856 CG HIS 57 -6.963 2.910 -21.990 1.00 1.00 C +ATOM 857 ND1 HIS 57 -7.452 2.468 -20.773 1.00 1.00 N +ATOM 858 CD2 HIS 57 -7.930 2.640 -22.914 1.00 1.00 C +ATOM 859 CE1 HIS 57 -8.660 1.958 -20.969 1.00 1.00 C +ATOM 860 NE2 HIS 57 -8.953 2.065 -22.296 1.00 1.00 N +ATOM 863 HB2 HIS 57 -5.256 3.404 -23.164 1.00 1.00 H +ATOM 864 HB3 HIS 57 -4.898 3.040 -21.488 1.00 1.00 H +ATOM 865 HD1 HIS 57 -6.976 2.525 -19.896 1.00 1.00 H +ATOM 866 HD2 HIS 57 -7.871 2.861 -23.980 1.00 1.00 H +ATOM 867 HE1 HIS 57 -9.304 1.528 -20.202 1.00 1.00 H +ATOM 868 N TYR 58 -3.659 6.322 -21.128 1.00 1.00 N +ATOM 869 CA TYR 58 -2.379 6.992 -21.291 1.00 1.00 C +ATOM 870 C TYR 58 -1.389 6.549 -20.212 1.00 1.00 C +ATOM 871 O TYR 58 -1.273 7.192 -19.170 1.00 1.00 O +ATOM 880 H TYR 58 -4.048 6.372 -20.208 1.00 1.00 H +ATOM 881 HA TYR 58 -1.982 6.724 -22.270 1.00 1.00 H +ATOM 872 CB TYR 58 -2.661 8.486 -21.126 1.00 1.00 C +ATOM 873 CG TYR 58 -2.385 9.314 -22.383 1.00 1.00 C +ATOM 874 CD1 TYR 58 -1.103 9.746 -22.656 1.00 1.00 C +ATOM 875 CD2 TYR 58 -3.417 9.627 -23.243 1.00 1.00 C +ATOM 876 CE1 TYR 58 -0.843 10.525 -23.839 1.00 1.00 C +ATOM 877 CE2 TYR 58 -3.158 10.406 -24.426 1.00 1.00 C +ATOM 878 CZ TYR 58 -1.883 10.816 -24.666 1.00 1.00 C +ATOM 879 OH TYR 58 -1.638 11.552 -25.783 1.00 1.00 O +ATOM 882 HB2 TYR 58 -3.704 8.619 -20.838 1.00 1.00 H +ATOM 883 HB3 TYR 58 -2.052 8.872 -20.308 1.00 1.00 H +ATOM 884 HD1 TYR 58 -0.287 9.498 -21.977 1.00 1.00 H +ATOM 885 HD2 TYR 58 -4.430 9.285 -23.028 1.00 1.00 H +ATOM 886 HE1 TYR 58 0.164 10.874 -24.067 1.00 1.00 H +ATOM 887 HE2 TYR 58 -3.963 10.661 -25.114 1.00 1.00 H +ATOM 888 HH TYR 58 -1.781 10.992 -26.599 1.00 1.00 H +ATOM 889 N ARG 59 -0.700 5.454 -20.499 1.00 1.00 N +ATOM 890 CA ARG 59 0.277 4.918 -19.568 1.00 1.00 C +ATOM 891 C ARG 59 1.103 6.051 -18.954 1.00 1.00 C +ATOM 892 O ARG 59 1.104 7.170 -19.466 1.00 1.00 O +ATOM 900 H ARG 59 -0.800 4.937 -21.350 1.00 1.00 H +ATOM 901 HA ARG 59 -0.314 4.408 -18.807 1.00 1.00 H +ATOM 893 CB ARG 59 1.216 3.930 -20.261 1.00 1.00 C +ATOM 894 CG ARG 59 1.321 4.231 -21.758 1.00 1.00 C +ATOM 895 CD ARG 59 2.674 3.784 -22.313 1.00 1.00 C +ATOM 896 NE ARG 59 2.480 2.732 -23.335 1.00 1.00 N +ATOM 897 CZ ARG 59 2.053 2.966 -24.584 1.00 1.00 C +ATOM 898 NH1 ARG 59 1.774 4.218 -24.972 1.00 1.00 N +ATOM 899 NH2 ARG 59 1.906 1.949 -25.444 1.00 1.00 N +ATOM 902 HB2 ARG 59 2.205 3.981 -19.806 1.00 1.00 H +ATOM 903 HB3 ARG 59 0.851 2.913 -20.117 1.00 1.00 H +ATOM 904 HG2 ARG 59 0.519 3.723 -22.292 1.00 1.00 H +ATOM 905 HG3 ARG 59 1.189 5.300 -21.927 1.00 1.00 H +ATOM 906 HD2 ARG 59 3.197 4.636 -22.751 1.00 1.00 H +ATOM 907 HD3 ARG 59 3.302 3.407 -21.506 1.00 1.00 H +ATOM 908 HE ARG 59 2.680 1.786 -23.078 1.00 1.00 H +ATOM 909 HH11 ARG 59 1.885 4.977 -24.330 1.00 1.00 H +ATOM 910 HH12 ARG 59 1.455 4.393 -25.903 1.00 1.00 H +ATOM 911 HH21 ARG 59 2.113 1.015 -25.154 1.00 1.00 H +ATOM 912 HH22 ARG 59 1.586 2.124 -26.375 1.00 1.00 H +ATOM 913 N ILE 60 1.786 5.722 -17.868 1.00 1.00 N +ATOM 914 CA ILE 60 2.614 6.698 -17.179 1.00 1.00 C +ATOM 915 C ILE 60 3.788 7.088 -18.078 1.00 1.00 C +ATOM 916 O ILE 60 4.088 8.270 -18.238 1.00 1.00 O +ATOM 921 H ILE 60 1.779 4.810 -17.458 1.00 1.00 H +ATOM 922 HA ILE 60 2.001 7.583 -17.009 1.00 1.00 H +ATOM 917 CB ILE 60 3.037 6.169 -15.808 1.00 1.00 C +ATOM 918 CG1 ILE 60 1.830 6.023 -14.879 1.00 1.00 C +ATOM 919 CG2 ILE 60 4.130 7.048 -15.195 1.00 1.00 C +ATOM 920 CD1 ILE 60 1.393 7.382 -14.330 1.00 1.00 C +ATOM 923 HB ILE 60 3.463 5.175 -15.942 1.00 1.00 H +ATOM 924 HG12 ILE 60 1.004 5.563 -15.422 1.00 1.00 H +ATOM 925 HG13 ILE 60 2.080 5.356 -14.055 1.00 1.00 H +ATOM 926 HG21 ILE 60 3.833 8.095 -15.263 1.00 1.00 H +ATOM 927 HG22 ILE 60 4.269 6.777 -14.149 1.00 1.00 H +ATOM 928 HG23 ILE 60 5.062 6.899 -15.737 1.00 1.00 H +ATOM 929 HD11 ILE 60 1.428 8.124 -15.128 1.00 1.00 H +ATOM 930 HD12 ILE 60 0.375 7.309 -13.947 1.00 1.00 H +ATOM 931 HD13 ILE 60 2.064 7.682 -13.526 1.00 1.00 H +ATOM 932 N ASN 61 4.422 6.071 -18.643 1.00 1.00 N +ATOM 933 CA ASN 61 5.558 6.291 -19.523 1.00 1.00 C +ATOM 934 C ASN 61 6.760 6.748 -18.692 1.00 1.00 C +ATOM 935 O ASN 61 6.676 7.737 -17.966 1.00 1.00 O +ATOM 940 H ASN 61 4.172 5.111 -18.510 1.00 1.00 H +ATOM 941 HA ASN 61 5.731 5.333 -20.014 1.00 1.00 H +ATOM 936 CB ASN 61 5.254 7.381 -20.553 1.00 1.00 C +ATOM 937 CG ASN 61 6.393 7.513 -21.565 1.00 1.00 C +ATOM 938 OD1 ASN 61 7.500 7.042 -21.357 1.00 1.00 O +ATOM 939 ND2 ASN 61 6.063 8.177 -22.669 1.00 1.00 N +ATOM 942 HB2 ASN 61 4.325 7.145 -21.073 1.00 1.00 H +ATOM 943 HB3 ASN 61 5.102 8.334 -20.045 1.00 1.00 H +ATOM 944 HD21 ASN 61 5.136 8.537 -22.777 1.00 1.00 H +ATOM 945 HD22 ASN 61 6.740 8.315 -23.391 1.00 1.00 H +ATOM 946 N THR 62 7.848 6.006 -18.827 1.00 1.00 N +ATOM 947 CA THR 62 9.065 6.322 -18.098 1.00 1.00 C +ATOM 948 C THR 62 10.137 6.848 -19.054 1.00 1.00 C +ATOM 949 O THR 62 10.081 6.596 -20.256 1.00 1.00 O +ATOM 953 H THR 62 7.907 5.202 -19.420 1.00 1.00 H +ATOM 954 HA THR 62 8.844 7.123 -17.393 1.00 1.00 H +ATOM 950 CB THR 62 9.495 5.070 -17.331 1.00 1.00 C +ATOM 951 OG1 THR 62 8.275 4.532 -16.830 1.00 1.00 O +ATOM 952 CG2 THR 62 10.300 5.402 -16.073 1.00 1.00 C +ATOM 955 HB THR 62 10.048 4.388 -17.977 1.00 1.00 H +ATOM 956 HG1 THR 62 7.801 5.217 -16.277 1.00 1.00 H +ATOM 957 HG21 THR 62 10.664 6.428 -16.134 1.00 1.00 H +ATOM 958 HG22 THR 62 9.662 5.295 -15.195 1.00 1.00 H +ATOM 959 HG23 THR 62 11.147 4.720 -15.992 1.00 1.00 H +ATOM 960 N ALA 63 11.090 7.570 -18.482 1.00 1.00 N +ATOM 961 CA ALA 63 12.174 8.135 -19.268 1.00 1.00 C +ATOM 962 C ALA 63 13.329 7.132 -19.330 1.00 1.00 C +ATOM 963 O ALA 63 13.177 5.980 -18.926 1.00 1.00 O +ATOM 965 H ALA 63 11.129 7.771 -17.504 1.00 1.00 H +ATOM 966 HA ALA 63 11.799 8.306 -20.276 1.00 1.00 H +ATOM 964 CB ALA 63 12.598 9.474 -18.664 1.00 1.00 C +ATOM 967 HB1 ALA 63 11.750 9.927 -18.151 1.00 1.00 H +ATOM 968 HB2 ALA 63 13.409 9.313 -17.954 1.00 1.00 H +ATOM 969 HB3 ALA 63 12.940 10.139 -19.459 1.00 1.00 H +ATOM 970 N SER 64 14.455 7.606 -19.842 1.00 1.00 N +ATOM 971 CA SER 64 15.634 6.765 -19.963 1.00 1.00 C +ATOM 972 C SER 64 16.500 6.894 -18.707 1.00 1.00 C +ATOM 973 O SER 64 17.725 6.833 -18.785 1.00 1.00 O +ATOM 976 H SER 64 14.569 8.544 -20.169 1.00 1.00 H +ATOM 977 HA SER 64 15.255 5.749 -20.064 1.00 1.00 H +ATOM 974 CB SER 64 16.446 7.132 -21.207 1.00 1.00 C +ATOM 975 OG SER 64 16.642 8.538 -21.321 1.00 1.00 O +ATOM 978 HB2 SER 64 17.414 6.632 -21.168 1.00 1.00 H +ATOM 979 HB3 SER 64 15.934 6.764 -22.095 1.00 1.00 H +ATOM 980 HG SER 64 16.593 8.965 -20.418 1.00 1.00 H +ATOM 981 N ASP 65 15.827 7.070 -17.579 1.00 1.00 N +ATOM 982 CA ASP 65 16.519 7.207 -16.309 1.00 1.00 C +ATOM 983 C ASP 65 15.633 6.659 -15.189 1.00 1.00 C +ATOM 984 O ASP 65 16.053 5.787 -14.431 1.00 1.00 O +ATOM 989 H ASP 65 14.829 7.118 -17.525 1.00 1.00 H +ATOM 990 HA ASP 65 17.443 6.641 -16.424 1.00 1.00 H +ATOM 985 CB ASP 65 16.818 8.675 -16.001 1.00 1.00 C +ATOM 986 CG ASP 65 17.076 8.986 -14.525 1.00 1.00 C +ATOM 987 OD1 ASP 65 18.159 8.590 -14.042 1.00 1.00 O +ATOM 988 OD2 ASP 65 16.184 9.614 -13.914 1.00 1.00 O +ATOM 991 HB2 ASP 65 17.689 8.983 -16.579 1.00 1.00 H +ATOM 992 HB3 ASP 65 15.979 9.281 -16.343 1.00 1.00 H +ATOM 993 N GLY 66 14.422 7.193 -15.120 1.00 1.00 N +ATOM 994 CA GLY 66 13.473 6.769 -14.105 1.00 1.00 C +ATOM 995 C GLY 66 12.241 7.675 -14.095 1.00 1.00 C +ATOM 996 O GLY 66 11.117 7.198 -13.936 1.00 1.00 O +ATOM 997 H GLY 66 14.088 7.903 -15.741 1.00 1.00 H +ATOM 998 HA2 GLY 66 13.171 5.739 -14.293 1.00 1.00 H +ATOM 999 HA3 GLY 66 13.951 6.788 -13.125 1.00 1.00 H +ATOM 1000 N LYS 67 12.491 8.964 -14.266 1.00 1.00 N +ATOM 1001 CA LYS 67 11.415 9.941 -14.279 1.00 1.00 C +ATOM 1002 C LYS 67 10.252 9.402 -15.116 1.00 1.00 C +ATOM 1003 O LYS 67 10.458 8.602 -16.028 1.00 1.00 O +ATOM 1009 H LYS 67 13.408 9.344 -14.394 1.00 1.00 H +ATOM 1010 HA LYS 67 11.073 10.064 -13.251 1.00 1.00 H +ATOM 1004 CB LYS 67 11.932 11.302 -14.748 1.00 1.00 C +ATOM 1005 CG LYS 67 12.988 11.139 -15.844 1.00 1.00 C +ATOM 1006 CD LYS 67 14.362 11.600 -15.355 1.00 1.00 C +ATOM 1007 CE LYS 67 14.862 12.794 -16.170 1.00 1.00 C +ATOM 1008 NZ LYS 67 15.516 12.334 -17.416 1.00 1.00 N +ATOM 1011 HB2 LYS 67 11.102 11.901 -15.124 1.00 1.00 H +ATOM 1012 HB3 LYS 67 12.359 11.844 -13.905 1.00 1.00 H +ATOM 1013 HG2 LYS 67 13.039 10.095 -16.152 1.00 1.00 H +ATOM 1014 HG3 LYS 67 12.698 11.716 -16.723 1.00 1.00 H +ATOM 1015 HD2 LYS 67 14.304 11.873 -14.301 1.00 1.00 H +ATOM 1016 HD3 LYS 67 15.074 10.779 -15.432 1.00 1.00 H +ATOM 1017 HE2 LYS 67 14.027 13.453 -16.411 1.00 1.00 H +ATOM 1018 HE3 LYS 67 15.567 13.378 -15.577 1.00 1.00 H +ATOM 1019 HZ1 LYS 67 15.207 11.408 -17.632 1.00 1.00 H +ATOM 1020 HZ2 LYS 67 15.272 12.949 -18.166 1.00 1.00 H +ATOM 1021 HZ3 LYS 67 16.508 12.335 -17.292 1.00 1.00 H +ATOM 1022 N LEU 68 9.058 9.862 -14.775 1.00 1.00 N +ATOM 1023 CA LEU 68 7.862 9.436 -15.483 1.00 1.00 C +ATOM 1024 C LEU 68 7.406 10.554 -16.423 1.00 1.00 C +ATOM 1025 O LEU 68 6.817 11.539 -15.981 1.00 1.00 O +ATOM 1030 H LEU 68 8.899 10.512 -14.031 1.00 1.00 H +ATOM 1031 HA LEU 68 8.131 8.567 -16.084 1.00 1.00 H +ATOM 1026 CB LEU 68 6.785 8.986 -14.494 1.00 1.00 C +ATOM 1027 CG LEU 68 7.242 8.019 -13.400 1.00 1.00 C +ATOM 1028 CD1 LEU 68 6.335 8.115 -12.171 1.00 1.00 C +ATOM 1029 CD2 LEU 68 7.334 6.589 -13.934 1.00 1.00 C +ATOM 1032 HB2 LEU 68 6.365 9.871 -14.018 1.00 1.00 H +ATOM 1033 HB3 LEU 68 5.980 8.513 -15.055 1.00 1.00 H +ATOM 1034 HG LEU 68 8.244 8.310 -13.083 1.00 1.00 H +ATOM 1035 HD11 LEU 68 5.903 9.115 -12.115 1.00 1.00 H +ATOM 1036 HD12 LEU 68 5.535 7.378 -12.251 1.00 1.00 H +ATOM 1037 HD13 LEU 68 6.919 7.920 -11.272 1.00 1.00 H +ATOM 1038 HD21 LEU 68 6.877 6.541 -14.923 1.00 1.00 H +ATOM 1039 HD22 LEU 68 8.380 6.292 -14.003 1.00 1.00 H +ATOM 1040 HD23 LEU 68 6.808 5.915 -13.258 1.00 1.00 H +ATOM 1041 N TYR 69 7.696 10.364 -17.701 1.00 1.00 N +ATOM 1042 CA TYR 69 7.324 11.344 -18.707 1.00 1.00 C +ATOM 1043 C TYR 69 6.294 10.766 -19.681 1.00 1.00 C +ATOM 1044 O TYR 69 6.551 9.756 -20.335 1.00 1.00 O +ATOM 1053 H TYR 69 8.176 9.560 -18.053 1.00 1.00 H +ATOM 1054 HA TYR 69 6.887 12.201 -18.196 1.00 1.00 H +ATOM 1045 CB TYR 69 8.606 11.671 -19.474 1.00 1.00 C +ATOM 1046 CG TYR 69 8.828 10.802 -20.714 1.00 1.00 C +ATOM 1047 CD1 TYR 69 8.048 10.992 -21.837 1.00 1.00 C +ATOM 1048 CD2 TYR 69 9.807 9.829 -20.709 1.00 1.00 C +ATOM 1049 CE1 TYR 69 8.257 10.174 -23.005 1.00 1.00 C +ATOM 1050 CE2 TYR 69 10.015 9.012 -21.877 1.00 1.00 C +ATOM 1051 CZ TYR 69 9.230 9.225 -22.967 1.00 1.00 C +ATOM 1052 OH TYR 69 9.427 8.453 -24.069 1.00 1.00 O +ATOM 1055 HB2 TYR 69 8.580 12.718 -19.777 1.00 1.00 H +ATOM 1056 HB3 TYR 69 9.457 11.553 -18.805 1.00 1.00 H +ATOM 1057 HD1 TYR 69 7.276 11.760 -21.841 1.00 1.00 H +ATOM 1058 HD2 TYR 69 10.421 9.679 -19.823 1.00 1.00 H +ATOM 1059 HE1 TYR 69 7.649 10.314 -23.899 1.00 1.00 H +ATOM 1060 HE2 TYR 69 10.784 8.239 -21.887 1.00 1.00 H +ATOM 1061 HH TYR 69 8.930 7.590 -23.975 1.00 1.00 H +ATOM 1062 N VAL 70 5.150 11.431 -19.746 1.00 1.00 N +ATOM 1063 CA VAL 70 4.081 10.997 -20.629 1.00 1.00 C +ATOM 1064 C VAL 70 4.419 11.397 -22.067 1.00 1.00 C +ATOM 1065 O VAL 70 4.293 10.588 -22.985 1.00 1.00 O +ATOM 1069 H VAL 70 4.949 12.252 -19.211 1.00 1.00 H +ATOM 1070 HA VAL 70 4.028 9.910 -20.570 1.00 1.00 H +ATOM 1066 CB VAL 70 2.743 11.563 -20.149 1.00 1.00 C +ATOM 1067 CG1 VAL 70 1.630 11.268 -21.156 1.00 1.00 C +ATOM 1068 CG2 VAL 70 2.385 11.025 -18.762 1.00 1.00 C +ATOM 1071 HB VAL 70 2.847 12.646 -20.071 1.00 1.00 H +ATOM 1072 HG11 VAL 70 1.668 10.217 -21.442 1.00 1.00 H +ATOM 1073 HG12 VAL 70 0.663 11.487 -20.703 1.00 1.00 H +ATOM 1074 HG13 VAL 70 1.766 11.891 -22.041 1.00 1.00 H +ATOM 1075 HG21 VAL 70 2.831 10.038 -18.630 1.00 1.00 H +ATOM 1076 HG22 VAL 70 2.769 11.702 -17.999 1.00 1.00 H +ATOM 1077 HG23 VAL 70 1.302 10.950 -18.670 1.00 1.00 H +ATOM 1078 N SER 71 4.840 12.644 -22.217 1.00 1.00 N +ATOM 1079 CA SER 71 5.196 13.160 -23.528 1.00 1.00 C +ATOM 1080 C SER 71 6.702 13.011 -23.757 1.00 1.00 C +ATOM 1081 O SER 71 7.128 12.217 -24.595 1.00 1.00 O +ATOM 1084 H SER 71 4.939 13.295 -21.465 1.00 1.00 H +ATOM 1085 HA SER 71 4.637 12.553 -24.239 1.00 1.00 H +ATOM 1082 CB SER 71 4.781 14.626 -23.673 1.00 1.00 C +ATOM 1083 OG SER 71 5.261 15.199 -24.886 1.00 1.00 O +ATOM 1086 HB2 SER 71 3.694 14.699 -23.643 1.00 1.00 H +ATOM 1087 HB3 SER 71 5.161 15.197 -22.826 1.00 1.00 H +ATOM 1088 HG SER 71 5.114 16.188 -24.879 1.00 1.00 H +ATOM 1089 N SER 72 7.464 13.785 -23.000 1.00 1.00 N +ATOM 1090 CA SER 72 8.912 13.747 -23.111 1.00 1.00 C +ATOM 1091 C SER 72 9.506 15.082 -22.657 1.00 1.00 C +ATOM 1092 O SER 72 10.648 15.135 -22.202 1.00 1.00 O +ATOM 1095 H SER 72 7.108 14.427 -22.320 1.00 1.00 H +ATOM 1096 HA SER 72 9.232 12.942 -22.450 1.00 1.00 H +ATOM 1093 CB SER 72 9.347 13.433 -24.544 1.00 1.00 C +ATOM 1094 OG SER 72 9.635 12.049 -24.723 1.00 1.00 O +ATOM 1097 HB2 SER 72 8.559 13.731 -25.235 1.00 1.00 H +ATOM 1098 HB3 SER 72 10.229 14.022 -24.792 1.00 1.00 H +ATOM 1099 HG SER 72 10.622 11.896 -24.674 1.00 1.00 H +ATOM 1100 N GLU 73 8.705 16.128 -22.796 1.00 1.00 N +ATOM 1101 CA GLU 73 9.137 17.459 -22.406 1.00 1.00 C +ATOM 1102 C GLU 73 8.636 17.788 -20.998 1.00 1.00 C +ATOM 1103 O GLU 73 8.965 18.839 -20.448 1.00 1.00 O +ATOM 1109 H GLU 73 7.777 16.077 -23.167 1.00 1.00 H +ATOM 1110 HA GLU 73 10.226 17.424 -22.413 1.00 1.00 H +ATOM 1104 CB GLU 73 8.663 18.507 -23.415 1.00 1.00 C +ATOM 1105 CG GLU 73 7.487 17.982 -24.240 1.00 1.00 C +ATOM 1106 CD GLU 73 6.938 19.068 -25.168 1.00 1.00 C +ATOM 1107 OE1 GLU 73 7.774 19.808 -25.731 1.00 1.00 O +ATOM 1108 OE2 GLU 73 5.697 19.134 -25.292 1.00 1.00 O +ATOM 1111 HB2 GLU 73 8.367 19.415 -22.890 1.00 1.00 H +ATOM 1112 HB3 GLU 73 9.485 18.777 -24.078 1.00 1.00 H +ATOM 1113 HG2 GLU 73 7.806 17.123 -24.830 1.00 1.00 H +ATOM 1114 HG3 GLU 73 6.697 17.634 -23.574 1.00 1.00 H +ATOM 1115 N SER 74 7.850 16.871 -20.454 1.00 1.00 N +ATOM 1116 CA SER 74 7.302 17.051 -19.121 1.00 1.00 C +ATOM 1117 C SER 74 7.530 15.789 -18.287 1.00 1.00 C +ATOM 1118 O SER 74 6.579 15.092 -17.936 1.00 1.00 O +ATOM 1121 H SER 74 7.588 16.019 -20.908 1.00 1.00 H +ATOM 1122 HA SER 74 7.846 17.894 -18.696 1.00 1.00 H +ATOM 1119 CB SER 74 5.810 17.385 -19.179 1.00 1.00 C +ATOM 1120 OG SER 74 5.508 18.600 -18.499 1.00 1.00 O +ATOM 1123 HB2 SER 74 5.497 17.465 -20.221 1.00 1.00 H +ATOM 1124 HB3 SER 74 5.238 16.570 -18.737 1.00 1.00 H +ATOM 1125 HG SER 74 6.026 18.653 -17.646 1.00 1.00 H +ATOM 1126 N ARG 75 8.797 15.533 -17.993 1.00 1.00 N +ATOM 1127 CA ARG 75 9.162 14.368 -17.206 1.00 1.00 C +ATOM 1128 C ARG 75 8.964 14.650 -15.716 1.00 1.00 C +ATOM 1129 O ARG 75 9.178 15.771 -15.258 1.00 1.00 O +ATOM 1137 H ARG 75 9.564 16.105 -18.282 1.00 1.00 H +ATOM 1138 HA ARG 75 8.492 13.579 -17.549 1.00 1.00 H +ATOM 1130 CB ARG 75 10.619 13.970 -17.454 1.00 1.00 C +ATOM 1131 CG ARG 75 11.188 14.703 -18.670 1.00 1.00 C +ATOM 1132 CD ARG 75 12.363 13.933 -19.275 1.00 1.00 C +ATOM 1133 NE ARG 75 13.096 14.794 -20.229 1.00 1.00 N +ATOM 1134 CZ ARG 75 14.216 14.426 -20.866 1.00 1.00 C +ATOM 1135 NH1 ARG 75 14.738 13.210 -20.655 1.00 1.00 N +ATOM 1136 NH2 ARG 75 14.814 15.273 -21.715 1.00 1.00 N +ATOM 1139 HB2 ARG 75 11.218 14.203 -16.573 1.00 1.00 H +ATOM 1140 HB3 ARG 75 10.685 12.894 -17.610 1.00 1.00 H +ATOM 1141 HG2 ARG 75 10.407 14.831 -19.421 1.00 1.00 H +ATOM 1142 HG3 ARG 75 11.515 15.702 -18.379 1.00 1.00 H +ATOM 1143 HD2 ARG 75 13.035 13.599 -18.484 1.00 1.00 H +ATOM 1144 HD3 ARG 75 12.000 13.040 -19.784 1.00 1.00 H +ATOM 1145 HE ARG 75 12.734 15.709 -20.409 1.00 1.00 H +ATOM 1146 HH11 ARG 75 14.291 12.577 -20.023 1.00 1.00 H +ATOM 1147 HH12 ARG 75 15.573 12.935 -21.131 1.00 1.00 H +ATOM 1148 HH21 ARG 75 14.425 16.181 -21.872 1.00 1.00 H +ATOM 1149 HH22 ARG 75 15.650 14.999 -22.190 1.00 1.00 H +ATOM 1150 N PHE 76 8.557 13.612 -14.998 1.00 1.00 N +ATOM 1151 CA PHE 76 8.328 13.734 -13.570 1.00 1.00 C +ATOM 1152 C PHE 76 8.907 12.535 -12.817 1.00 1.00 C +ATOM 1153 O PHE 76 9.703 11.777 -13.369 1.00 1.00 O +ATOM 1161 H PHE 76 8.385 12.703 -15.378 1.00 1.00 H +ATOM 1162 HA PHE 76 8.827 14.644 -13.238 1.00 1.00 H +ATOM 1154 CB PHE 76 6.812 13.769 -13.361 1.00 1.00 C +ATOM 1155 CG PHE 76 6.088 14.801 -14.228 1.00 1.00 C +ATOM 1156 CD1 PHE 76 6.123 16.118 -13.889 1.00 1.00 C +ATOM 1157 CD2 PHE 76 5.411 14.402 -15.337 1.00 1.00 C +ATOM 1158 CE1 PHE 76 5.451 17.076 -14.692 1.00 1.00 C +ATOM 1159 CE2 PHE 76 4.739 15.360 -16.141 1.00 1.00 C +ATOM 1160 CZ PHE 76 4.772 16.677 -15.802 1.00 1.00 C +ATOM 1163 HB2 PHE 76 6.404 12.780 -13.574 1.00 1.00 H +ATOM 1164 HB3 PHE 76 6.605 13.980 -12.312 1.00 1.00 H +ATOM 1165 HD1 PHE 76 6.665 16.437 -12.999 1.00 1.00 H +ATOM 1166 HD2 PHE 76 5.383 13.347 -15.609 1.00 1.00 H +ATOM 1167 HE1 PHE 76 5.478 18.131 -14.420 1.00 1.00 H +ATOM 1168 HE2 PHE 76 4.195 15.041 -17.031 1.00 1.00 H +ATOM 1169 HZ PHE 76 4.257 17.412 -16.419 1.00 1.00 H +ATOM 1170 N ASN 77 8.484 12.400 -11.568 1.00 1.00 N +ATOM 1171 CA ASN 77 8.951 11.306 -10.734 1.00 1.00 C +ATOM 1172 C ASN 77 7.760 10.686 -9.999 1.00 1.00 C +ATOM 1173 O ASN 77 7.654 9.465 -9.902 1.00 1.00 O +ATOM 1178 H ASN 77 7.837 13.021 -11.127 1.00 1.00 H +ATOM 1179 HA ASN 77 9.427 10.606 -11.420 1.00 1.00 H +ATOM 1174 CB ASN 77 9.949 11.800 -9.685 1.00 1.00 C +ATOM 1175 CG ASN 77 11.386 11.684 -10.197 1.00 1.00 C +ATOM 1176 OD1 ASN 77 12.072 12.667 -10.426 1.00 1.00 O +ATOM 1177 ND2 ASN 77 11.802 10.431 -10.364 1.00 1.00 N +ATOM 1180 HB2 ASN 77 9.732 12.837 -9.431 1.00 1.00 H +ATOM 1181 HB3 ASN 77 9.838 11.218 -8.769 1.00 1.00 H +ATOM 1182 HD21 ASN 77 11.188 9.670 -10.157 1.00 1.00 H +ATOM 1183 HD22 ASN 77 12.728 10.252 -10.696 1.00 1.00 H +ATOM 1184 N THR 78 6.896 11.557 -9.500 1.00 1.00 N +ATOM 1185 CA THR 78 5.717 11.111 -8.777 1.00 1.00 C +ATOM 1186 C THR 78 4.454 11.384 -9.596 1.00 1.00 C +ATOM 1187 O THR 78 4.356 12.409 -10.269 1.00 1.00 O +ATOM 1191 H THR 78 6.990 12.549 -9.584 1.00 1.00 H +ATOM 1192 HA THR 78 5.784 10.031 -8.643 1.00 1.00 H +ATOM 1188 CB THR 78 5.714 11.796 -7.409 1.00 1.00 C +ATOM 1189 OG1 THR 78 5.089 10.848 -6.548 1.00 1.00 O +ATOM 1190 CG2 THR 78 4.784 13.010 -7.363 1.00 1.00 C +ATOM 1193 HB THR 78 6.726 12.069 -7.109 1.00 1.00 H +ATOM 1194 HG1 THR 78 5.441 10.949 -5.617 1.00 1.00 H +ATOM 1195 HG21 THR 78 3.833 12.757 -7.831 1.00 1.00 H +ATOM 1196 HG22 THR 78 4.615 13.300 -6.326 1.00 1.00 H +ATOM 1197 HG23 THR 78 5.244 13.839 -7.902 1.00 1.00 H +ATOM 1198 N LEU 79 3.518 10.450 -9.511 1.00 1.00 N +ATOM 1199 CA LEU 79 2.266 10.577 -10.235 1.00 1.00 C +ATOM 1200 C LEU 79 1.726 11.999 -10.066 1.00 1.00 C +ATOM 1201 O LEU 79 1.387 12.660 -11.047 1.00 1.00 O +ATOM 1206 H LEU 79 3.606 9.619 -8.961 1.00 1.00 H +ATOM 1207 HA LEU 79 2.481 10.413 -11.292 1.00 1.00 H +ATOM 1202 CB LEU 79 1.281 9.490 -9.800 1.00 1.00 C +ATOM 1203 CG LEU 79 0.046 9.310 -10.684 1.00 1.00 C +ATOM 1204 CD1 LEU 79 -0.733 10.620 -10.812 1.00 1.00 C +ATOM 1205 CD2 LEU 79 0.427 8.734 -12.049 1.00 1.00 C +ATOM 1208 HB2 LEU 79 1.815 8.540 -9.758 1.00 1.00 H +ATOM 1209 HB3 LEU 79 0.949 9.713 -8.786 1.00 1.00 H +ATOM 1210 HG LEU 79 -0.616 8.588 -10.204 1.00 1.00 H +ATOM 1211 HD11 LEU 79 -0.526 11.251 -9.948 1.00 1.00 H +ATOM 1212 HD12 LEU 79 -0.426 11.138 -11.721 1.00 1.00 H +ATOM 1213 HD13 LEU 79 -1.801 10.406 -10.858 1.00 1.00 H +ATOM 1214 HD21 LEU 79 1.164 9.383 -12.524 1.00 1.00 H +ATOM 1215 HD22 LEU 79 0.852 7.739 -11.918 1.00 1.00 H +ATOM 1216 HD23 LEU 79 -0.460 8.671 -12.679 1.00 1.00 H +ATOM 1217 N ALA 80 1.661 12.428 -8.814 1.00 1.00 N +ATOM 1218 CA ALA 80 1.169 13.759 -8.504 1.00 1.00 C +ATOM 1219 C ALA 80 1.757 14.761 -9.498 1.00 1.00 C +ATOM 1220 O ALA 80 1.031 15.342 -10.302 1.00 1.00 O +ATOM 1222 H ALA 80 1.938 11.884 -8.022 1.00 1.00 H +ATOM 1223 HA ALA 80 0.084 13.745 -8.614 1.00 1.00 H +ATOM 1221 CB ALA 80 1.512 14.105 -7.054 1.00 1.00 C +ATOM 1224 HB1 ALA 80 2.402 13.555 -6.750 1.00 1.00 H +ATOM 1225 HB2 ALA 80 1.701 15.175 -6.971 1.00 1.00 H +ATOM 1226 HB3 ALA 80 0.678 13.833 -6.408 1.00 1.00 H +ATOM 1227 N GLU 81 3.068 14.933 -9.411 1.00 1.00 N +ATOM 1228 CA GLU 81 3.764 15.855 -10.293 1.00 1.00 C +ATOM 1229 C GLU 81 3.254 15.702 -11.727 1.00 1.00 C +ATOM 1230 O GLU 81 3.303 16.650 -12.511 1.00 1.00 O +ATOM 1236 H GLU 81 3.652 14.456 -8.753 1.00 1.00 H +ATOM 1237 HA GLU 81 3.523 16.850 -9.918 1.00 1.00 H +ATOM 1231 CB GLU 81 5.277 15.645 -10.223 1.00 1.00 C +ATOM 1232 CG GLU 81 5.958 16.800 -9.486 1.00 1.00 C +ATOM 1233 CD GLU 81 6.219 16.439 -8.023 1.00 1.00 C +ATOM 1234 OE1 GLU 81 6.822 15.367 -7.801 1.00 1.00 O +ATOM 1235 OE2 GLU 81 5.809 17.245 -7.159 1.00 1.00 O +ATOM 1238 HB2 GLU 81 5.494 14.705 -9.714 1.00 1.00 H +ATOM 1239 HB3 GLU 81 5.683 15.561 -11.231 1.00 1.00 H +ATOM 1240 HG2 GLU 81 6.900 17.044 -9.978 1.00 1.00 H +ATOM 1241 HG3 GLU 81 5.330 17.689 -9.540 1.00 1.00 H +ATOM 1242 N LEU 82 2.776 14.504 -12.027 1.00 1.00 N +ATOM 1243 CA LEU 82 2.258 14.216 -13.354 1.00 1.00 C +ATOM 1244 C LEU 82 0.938 14.963 -13.554 1.00 1.00 C +ATOM 1245 O LEU 82 0.770 15.683 -14.537 1.00 1.00 O +ATOM 1250 H LEU 82 2.739 13.739 -11.384 1.00 1.00 H +ATOM 1251 HA LEU 82 2.981 14.594 -14.077 1.00 1.00 H +ATOM 1246 CB LEU 82 2.149 12.705 -13.571 1.00 1.00 C +ATOM 1247 CG LEU 82 2.446 12.207 -14.986 1.00 1.00 C +ATOM 1248 CD1 LEU 82 3.747 11.402 -15.022 1.00 1.00 C +ATOM 1249 CD2 LEU 82 1.265 11.414 -15.547 1.00 1.00 C +ATOM 1252 HB2 LEU 82 2.833 12.209 -12.881 1.00 1.00 H +ATOM 1253 HB3 LEU 82 1.141 12.391 -13.300 1.00 1.00 H +ATOM 1254 HG LEU 82 2.588 13.074 -15.631 1.00 1.00 H +ATOM 1255 HD11 LEU 82 4.333 11.619 -14.129 1.00 1.00 H +ATOM 1256 HD12 LEU 82 3.515 10.337 -15.054 1.00 1.00 H +ATOM 1257 HD13 LEU 82 4.319 11.675 -15.908 1.00 1.00 H +ATOM 1258 HD21 LEU 82 0.335 11.922 -15.297 1.00 1.00 H +ATOM 1259 HD22 LEU 82 1.360 11.339 -16.631 1.00 1.00 H +ATOM 1260 HD23 LEU 82 1.261 10.413 -15.114 1.00 1.00 H +ATOM 1261 N VAL 83 0.032 14.764 -12.607 1.00 1.00 N +ATOM 1262 CA VAL 83 -1.268 15.409 -12.668 1.00 1.00 C +ATOM 1263 C VAL 83 -1.090 16.920 -12.509 1.00 1.00 C +ATOM 1264 O VAL 83 -1.732 17.701 -13.210 1.00 1.00 O +ATOM 1268 H VAL 83 0.177 14.176 -11.811 1.00 1.00 H +ATOM 1269 HA VAL 83 -1.690 15.207 -13.651 1.00 1.00 H +ATOM 1265 CB VAL 83 -2.202 14.804 -11.617 1.00 1.00 C +ATOM 1266 CG1 VAL 83 -3.561 15.505 -11.623 1.00 1.00 C +ATOM 1267 CG2 VAL 83 -2.362 13.296 -11.829 1.00 1.00 C +ATOM 1270 HB VAL 83 -1.749 14.958 -10.637 1.00 1.00 H +ATOM 1271 HG11 VAL 83 -3.847 15.735 -12.650 1.00 1.00 H +ATOM 1272 HG12 VAL 83 -4.309 14.851 -11.176 1.00 1.00 H +ATOM 1273 HG13 VAL 83 -3.496 16.429 -11.049 1.00 1.00 H +ATOM 1274 HG21 VAL 83 -2.128 13.049 -12.865 1.00 1.00 H +ATOM 1275 HG22 VAL 83 -1.680 12.762 -11.167 1.00 1.00 H +ATOM 1276 HG23 VAL 83 -3.388 13.005 -11.608 1.00 1.00 H +ATOM 1277 N HIS 84 -0.216 17.287 -11.583 1.00 1.00 N +ATOM 1278 CA HIS 84 0.054 18.691 -11.323 1.00 1.00 C +ATOM 1279 C HIS 84 0.209 19.438 -12.649 1.00 1.00 C +ATOM 1280 O HIS 84 -0.499 20.411 -12.905 1.00 1.00 O +ATOM 1287 H HIS 84 0.302 16.646 -11.017 1.00 1.00 H +ATOM 1288 HA HIS 84 -0.815 19.084 -10.795 1.00 1.00 H +ATOM 1281 CB HIS 84 1.269 18.851 -10.407 1.00 1.00 C +ATOM 1282 CG HIS 84 0.972 19.567 -9.111 1.00 1.00 C +ATOM 1283 ND1 HIS 84 1.935 19.798 -8.145 1.00 1.00 N +ATOM 1284 CD2 HIS 84 -0.189 20.102 -8.634 1.00 1.00 C +ATOM 1285 CE1 HIS 84 1.368 20.442 -7.136 1.00 1.00 C +ATOM 1286 NE2 HIS 84 0.052 20.628 -7.440 1.00 1.00 N +ATOM 1289 HB2 HIS 84 1.672 17.864 -10.181 1.00 1.00 H +ATOM 1290 HB3 HIS 84 2.046 19.397 -10.943 1.00 1.00 H +ATOM 1291 HD1 HIS 84 2.895 19.525 -8.199 1.00 1.00 H +ATOM 1292 HD2 HIS 84 -1.150 20.096 -9.148 1.00 1.00 H +ATOM 1293 HE1 HIS 84 1.866 20.766 -6.222 1.00 1.00 H +ATOM 1294 N HIS 85 1.141 18.954 -13.459 1.00 1.00 N +ATOM 1295 CA HIS 85 1.398 19.563 -14.752 1.00 1.00 C +ATOM 1296 C HIS 85 0.232 19.271 -15.699 1.00 1.00 C +ATOM 1297 O HIS 85 -0.223 20.156 -16.421 1.00 1.00 O +ATOM 1304 H HIS 85 1.712 18.163 -13.244 1.00 1.00 H +ATOM 1305 HA HIS 85 1.458 20.639 -14.585 1.00 1.00 H +ATOM 1298 CB HIS 85 2.746 19.103 -15.312 1.00 1.00 C +ATOM 1299 CG HIS 85 2.969 19.471 -16.759 1.00 1.00 C +ATOM 1300 ND1 HIS 85 3.143 20.777 -17.182 1.00 1.00 N +ATOM 1301 CD2 HIS 85 3.044 18.691 -17.875 1.00 1.00 C +ATOM 1302 CE1 HIS 85 3.315 20.772 -18.495 1.00 1.00 C +ATOM 1303 NE2 HIS 85 3.252 19.478 -18.923 1.00 1.00 N +ATOM 1306 HB2 HIS 85 3.544 19.538 -14.709 1.00 1.00 H +ATOM 1307 HB3 HIS 85 2.821 18.021 -15.206 1.00 1.00 H +ATOM 1308 HD1 HIS 85 3.141 21.587 -16.595 1.00 1.00 H +ATOM 1309 HD2 HIS 85 2.949 17.606 -17.902 1.00 1.00 H +ATOM 1310 HE1 HIS 85 3.477 21.648 -19.125 1.00 1.00 H +ATOM 1311 N HIS 86 -0.217 18.025 -15.664 1.00 1.00 N +ATOM 1312 CA HIS 86 -1.320 17.603 -16.510 1.00 1.00 C +ATOM 1313 C HIS 86 -2.632 18.166 -15.960 1.00 1.00 C +ATOM 1314 O HIS 86 -3.713 17.759 -16.384 1.00 1.00 O +ATOM 1321 H HIS 86 0.160 17.311 -15.073 1.00 1.00 H +ATOM 1322 HA HIS 86 -1.138 18.027 -17.497 1.00 1.00 H +ATOM 1315 CB HIS 86 -1.344 16.080 -16.654 1.00 1.00 C +ATOM 1316 CG HIS 86 -0.139 15.511 -17.364 1.00 1.00 C +ATOM 1317 ND1 HIS 86 0.547 16.202 -18.348 1.00 1.00 N +ATOM 1318 CD2 HIS 86 0.497 14.313 -17.222 1.00 1.00 C +ATOM 1319 CE1 HIS 86 1.547 15.445 -18.772 1.00 1.00 C +ATOM 1320 NE2 HIS 86 1.514 14.273 -18.073 1.00 1.00 N +ATOM 1323 HB2 HIS 86 -1.414 15.632 -15.663 1.00 1.00 H +ATOM 1324 HB3 HIS 86 -2.243 15.791 -17.198 1.00 1.00 H +ATOM 1325 HD1 HIS 86 0.325 17.119 -18.681 1.00 1.00 H +ATOM 1326 HD2 HIS 86 0.216 13.522 -16.526 1.00 1.00 H +ATOM 1327 HE1 HIS 86 2.270 15.710 -19.544 1.00 1.00 H +ATOM 1328 N SER 87 -2.495 19.095 -15.025 1.00 1.00 N +ATOM 1329 CA SER 87 -3.655 19.719 -14.413 1.00 1.00 C +ATOM 1330 C SER 87 -4.047 20.976 -15.194 1.00 1.00 C +ATOM 1331 O SER 87 -5.231 21.273 -15.345 1.00 1.00 O +ATOM 1334 H SER 87 -1.612 19.420 -14.687 1.00 1.00 H +ATOM 1335 HA SER 87 -4.447 18.972 -14.468 1.00 1.00 H +ATOM 1332 CB SER 87 -3.385 20.067 -12.948 1.00 1.00 C +ATOM 1333 OG SER 87 -4.565 20.502 -12.276 1.00 1.00 O +ATOM 1336 HB2 SER 87 -2.978 19.194 -12.438 1.00 1.00 H +ATOM 1337 HB3 SER 87 -2.629 20.850 -12.895 1.00 1.00 H +ATOM 1338 HG SER 87 -5.330 20.542 -12.919 1.00 1.00 H +ATOM 1339 N THR 88 -3.030 21.679 -15.670 1.00 1.00 N +ATOM 1340 CA THR 88 -3.253 22.896 -16.431 1.00 1.00 C +ATOM 1341 C THR 88 -2.665 22.761 -17.836 1.00 1.00 C +ATOM 1342 O THR 88 -3.101 23.442 -18.764 1.00 1.00 O +ATOM 1346 H THR 88 -2.070 21.429 -15.542 1.00 1.00 H +ATOM 1347 HA THR 88 -4.328 23.038 -16.545 1.00 1.00 H +ATOM 1343 CB THR 88 -2.665 24.065 -15.636 1.00 1.00 C +ATOM 1344 OG1 THR 88 -3.755 24.528 -14.845 1.00 1.00 O +ATOM 1345 CG2 THR 88 -2.315 25.260 -16.525 1.00 1.00 C +ATOM 1348 HB THR 88 -1.800 23.745 -15.056 1.00 1.00 H +ATOM 1349 HG1 THR 88 -3.810 24.002 -13.996 1.00 1.00 H +ATOM 1350 HG21 THR 88 -2.970 25.269 -17.397 1.00 1.00 H +ATOM 1351 HG22 THR 88 -2.448 26.183 -15.962 1.00 1.00 H +ATOM 1352 HG23 THR 88 -1.279 25.178 -16.852 1.00 1.00 H +ATOM 1353 N VAL 89 -1.685 21.877 -17.951 1.00 1.00 N +ATOM 1354 CA VAL 89 -1.034 21.644 -19.229 1.00 1.00 C +ATOM 1355 C VAL 89 -0.848 20.139 -19.435 1.00 1.00 C +ATOM 1356 O VAL 89 0.212 19.594 -19.133 1.00 1.00 O +ATOM 1360 H VAL 89 -1.337 21.327 -17.193 1.00 1.00 H +ATOM 1361 HA VAL 89 -1.692 22.026 -20.009 1.00 1.00 H +ATOM 1357 CB VAL 89 0.282 22.422 -19.295 1.00 1.00 C +ATOM 1358 CG1 VAL 89 1.166 21.910 -20.434 1.00 1.00 C +ATOM 1359 CG2 VAL 89 0.023 23.924 -19.436 1.00 1.00 C +ATOM 1362 HB VAL 89 0.815 22.261 -18.358 1.00 1.00 H +ATOM 1363 HG11 VAL 89 0.556 21.746 -21.322 1.00 1.00 H +ATOM 1364 HG12 VAL 89 1.938 22.646 -20.653 1.00 1.00 H +ATOM 1365 HG13 VAL 89 1.633 20.971 -20.137 1.00 1.00 H +ATOM 1366 HG21 VAL 89 -0.937 24.172 -18.984 1.00 1.00 H +ATOM 1367 HG22 VAL 89 0.816 24.478 -18.932 1.00 1.00 H +ATOM 1368 HG23 VAL 89 0.008 24.193 -20.492 1.00 1.00 H +ATOM 1369 N ALA 90 -1.896 19.510 -19.948 1.00 1.00 N +ATOM 1370 CA ALA 90 -1.862 18.079 -20.198 1.00 1.00 C +ATOM 1371 C ALA 90 -1.008 17.803 -21.436 1.00 1.00 C +ATOM 1372 O ALA 90 -1.512 17.319 -22.448 1.00 1.00 O +ATOM 1374 H ALA 90 -2.755 19.962 -20.190 1.00 1.00 H +ATOM 1375 HA ALA 90 -1.400 17.602 -19.333 1.00 1.00 H +ATOM 1373 CB ALA 90 -3.291 17.552 -20.345 1.00 1.00 C +ATOM 1376 HB1 ALA 90 -3.997 18.365 -20.176 1.00 1.00 H +ATOM 1377 HB2 ALA 90 -3.430 17.155 -21.352 1.00 1.00 H +ATOM 1378 HB3 ALA 90 -3.464 16.762 -19.615 1.00 1.00 H +ATOM 1379 N ASP 91 0.273 18.120 -21.315 1.00 1.00 N +ATOM 1380 CA ASP 91 1.203 17.911 -22.411 1.00 1.00 C +ATOM 1381 C ASP 91 1.407 16.410 -22.622 1.00 1.00 C +ATOM 1382 O ASP 91 1.982 15.993 -23.627 1.00 1.00 O +ATOM 1387 H ASP 91 0.676 18.513 -20.488 1.00 1.00 H +ATOM 1388 HA ASP 91 0.743 18.394 -23.273 1.00 1.00 H +ATOM 1383 CB ASP 91 2.566 18.536 -22.105 1.00 1.00 C +ATOM 1384 CG ASP 91 3.772 17.699 -22.536 1.00 1.00 C +ATOM 1385 OD1 ASP 91 4.066 16.717 -21.821 1.00 1.00 O +ATOM 1386 OD2 ASP 91 4.373 18.062 -23.570 1.00 1.00 O +ATOM 1389 HB2 ASP 91 2.622 19.507 -22.596 1.00 1.00 H +ATOM 1390 HB3 ASP 91 2.633 18.717 -21.032 1.00 1.00 H +ATOM 1391 N GLY 92 0.926 15.639 -21.659 1.00 1.00 N +ATOM 1392 CA GLY 92 1.048 14.192 -21.727 1.00 1.00 C +ATOM 1393 C GLY 92 -0.317 13.535 -21.933 1.00 1.00 C +ATOM 1394 O GLY 92 -0.622 13.057 -23.025 1.00 1.00 O +ATOM 1395 H GLY 92 0.460 15.985 -20.846 1.00 1.00 H +ATOM 1396 HA2 GLY 92 1.715 13.918 -22.544 1.00 1.00 H +ATOM 1397 HA3 GLY 92 1.500 13.819 -20.808 1.00 1.00 H +ATOM 1398 N LEU 93 -1.105 13.533 -20.867 1.00 1.00 N +ATOM 1399 CA LEU 93 -2.432 12.943 -20.918 1.00 1.00 C +ATOM 1400 C LEU 93 -3.338 13.809 -21.797 1.00 1.00 C +ATOM 1401 O LEU 93 -3.383 15.028 -21.635 1.00 1.00 O +ATOM 1406 H LEU 93 -0.850 13.925 -19.983 1.00 1.00 H +ATOM 1407 HA LEU 93 -2.336 11.962 -21.383 1.00 1.00 H +ATOM 1402 CB LEU 93 -2.974 12.722 -19.504 1.00 1.00 C +ATOM 1403 CG LEU 93 -1.997 13.000 -18.360 1.00 1.00 C +ATOM 1404 CD1 LEU 93 -2.700 12.907 -17.004 1.00 1.00 C +ATOM 1405 CD2 LEU 93 -0.782 12.073 -18.441 1.00 1.00 C +ATOM 1408 HB2 LEU 93 -3.851 13.357 -19.370 1.00 1.00 H +ATOM 1409 HB3 LEU 93 -3.314 11.689 -19.424 1.00 1.00 H +ATOM 1410 HG LEU 93 -1.631 14.021 -18.464 1.00 1.00 H +ATOM 1411 HD11 LEU 93 -3.372 12.048 -17.001 1.00 1.00 H +ATOM 1412 HD12 LEU 93 -1.956 12.789 -16.217 1.00 1.00 H +ATOM 1413 HD13 LEU 93 -3.274 13.818 -16.829 1.00 1.00 H +ATOM 1414 HD21 LEU 93 -1.070 11.136 -18.914 1.00 1.00 H +ATOM 1415 HD22 LEU 93 0.001 12.552 -19.028 1.00 1.00 H +ATOM 1416 HD23 LEU 93 -0.411 11.873 -17.435 1.00 1.00 H +ATOM 1417 N ILE 94 -4.036 13.145 -22.705 1.00 1.00 N +ATOM 1418 CA ILE 94 -4.938 13.839 -23.609 1.00 1.00 C +ATOM 1419 C ILE 94 -5.756 14.864 -22.820 1.00 1.00 C +ATOM 1420 O ILE 94 -5.394 16.038 -22.758 1.00 1.00 O +ATOM 1425 H ILE 94 -3.993 12.154 -22.830 1.00 1.00 H +ATOM 1426 HA ILE 94 -4.326 14.373 -24.336 1.00 1.00 H +ATOM 1421 CB ILE 94 -5.793 12.837 -24.387 1.00 1.00 C +ATOM 1422 CG1 ILE 94 -7.047 13.507 -24.951 1.00 1.00 C +ATOM 1423 CG2 ILE 94 -6.132 11.620 -23.524 1.00 1.00 C +ATOM 1424 CD1 ILE 94 -7.616 12.707 -26.125 1.00 1.00 C +ATOM 1427 HB ILE 94 -5.211 12.478 -25.235 1.00 1.00 H +ATOM 1428 HG12 ILE 94 -7.800 13.595 -24.167 1.00 1.00 H +ATOM 1429 HG13 ILE 94 -6.808 14.519 -25.277 1.00 1.00 H +ATOM 1430 HG21 ILE 94 -6.012 11.875 -22.471 1.00 1.00 H +ATOM 1431 HG22 ILE 94 -7.163 11.319 -23.709 1.00 1.00 H +ATOM 1432 HG23 ILE 94 -5.463 10.798 -23.777 1.00 1.00 H +ATOM 1433 HD11 ILE 94 -7.610 11.646 -25.878 1.00 1.00 H +ATOM 1434 HD12 ILE 94 -8.639 13.029 -26.322 1.00 1.00 H +ATOM 1435 HD13 ILE 94 -7.004 12.879 -27.010 1.00 1.00 H +ATOM 1436 N THR 95 -6.843 14.381 -22.236 1.00 1.00 N +ATOM 1437 CA THR 95 -7.716 15.240 -21.453 1.00 1.00 C +ATOM 1438 C THR 95 -6.948 15.854 -20.281 1.00 1.00 C +ATOM 1439 O THR 95 -5.951 15.294 -19.826 1.00 1.00 O +ATOM 1443 H THR 95 -7.130 13.424 -22.291 1.00 1.00 H +ATOM 1444 HA THR 95 -8.046 16.063 -22.086 1.00 1.00 H +ATOM 1440 CB THR 95 -8.928 14.413 -21.019 1.00 1.00 C +ATOM 1441 OG1 THR 95 -9.557 15.214 -20.023 1.00 1.00 O +ATOM 1442 CG2 THR 95 -8.530 13.138 -20.273 1.00 1.00 C +ATOM 1445 HB THR 95 -9.567 14.182 -21.871 1.00 1.00 H +ATOM 1446 HG1 THR 95 -10.259 15.791 -20.441 1.00 1.00 H +ATOM 1447 HG21 THR 95 -7.762 12.611 -20.840 1.00 1.00 H +ATOM 1448 HG22 THR 95 -8.141 13.398 -19.289 1.00 1.00 H +ATOM 1449 HG23 THR 95 -9.403 12.495 -20.161 1.00 1.00 H +ATOM 1450 N THR 96 -7.442 16.996 -19.825 1.00 1.00 N +ATOM 1451 CA THR 96 -6.814 17.692 -18.714 1.00 1.00 C +ATOM 1452 C THR 96 -7.530 17.360 -17.404 1.00 1.00 C +ATOM 1453 O THR 96 -8.698 17.699 -17.227 1.00 1.00 O +ATOM 1457 H THR 96 -8.253 17.444 -20.201 1.00 1.00 H +ATOM 1458 HA THR 96 -5.789 17.333 -18.618 1.00 1.00 H +ATOM 1454 CB THR 96 -6.803 19.186 -19.038 1.00 1.00 C +ATOM 1455 OG1 THR 96 -8.134 19.611 -18.760 1.00 1.00 O +ATOM 1456 CG2 THR 96 -6.629 19.460 -20.534 1.00 1.00 C +ATOM 1459 HB THR 96 -6.042 19.706 -18.457 1.00 1.00 H +ATOM 1460 HG1 THR 96 -8.774 18.862 -18.927 1.00 1.00 H +ATOM 1461 HG21 THR 96 -6.242 18.567 -21.024 1.00 1.00 H +ATOM 1462 HG22 THR 96 -7.592 19.725 -20.969 1.00 1.00 H +ATOM 1463 HG23 THR 96 -5.928 20.284 -20.674 1.00 1.00 H +ATOM 1464 N LEU 97 -6.799 16.699 -16.519 1.00 1.00 N +ATOM 1465 CA LEU 97 -7.349 16.316 -15.230 1.00 1.00 C +ATOM 1466 C LEU 97 -8.276 17.425 -14.726 1.00 1.00 C +ATOM 1467 O LEU 97 -7.844 18.561 -14.535 1.00 1.00 O +ATOM 1472 H LEU 97 -5.849 16.425 -16.669 1.00 1.00 H +ATOM 1473 HA LEU 97 -7.941 15.414 -15.381 1.00 1.00 H +ATOM 1468 CB LEU 97 -6.228 15.962 -14.251 1.00 1.00 C +ATOM 1469 CG LEU 97 -5.277 14.849 -14.696 1.00 1.00 C +ATOM 1470 CD1 LEU 97 -3.923 15.421 -15.121 1.00 1.00 C +ATOM 1471 CD2 LEU 97 -5.132 13.783 -13.608 1.00 1.00 C +ATOM 1474 HB2 LEU 97 -5.640 16.860 -14.062 1.00 1.00 H +ATOM 1475 HB3 LEU 97 -6.678 15.670 -13.302 1.00 1.00 H +ATOM 1476 HG LEU 97 -5.708 14.360 -15.570 1.00 1.00 H +ATOM 1477 HD11 LEU 97 -3.743 16.358 -14.593 1.00 1.00 H +ATOM 1478 HD12 LEU 97 -3.135 14.710 -14.876 1.00 1.00 H +ATOM 1479 HD13 LEU 97 -3.927 15.605 -16.195 1.00 1.00 H +ATOM 1480 HD21 LEU 97 -5.575 14.148 -12.681 1.00 1.00 H +ATOM 1481 HD22 LEU 97 -5.644 12.872 -13.921 1.00 1.00 H +ATOM 1482 HD23 LEU 97 -4.076 13.569 -13.446 1.00 1.00 H +ATOM 1483 N HIS 98 -9.533 17.057 -14.526 1.00 1.00 N +ATOM 1484 CA HIS 98 -10.524 18.006 -14.049 1.00 1.00 C +ATOM 1485 C HIS 98 -10.772 17.784 -12.555 1.00 1.00 C +ATOM 1486 O HIS 98 -10.242 18.514 -11.720 1.00 1.00 O +ATOM 1493 H HIS 98 -9.876 16.131 -14.684 1.00 1.00 H +ATOM 1494 HA HIS 98 -10.101 19.001 -14.194 1.00 1.00 H +ATOM 1487 CB HIS 98 -11.805 17.919 -14.882 1.00 1.00 C +ATOM 1488 CG HIS 98 -12.972 18.678 -14.295 1.00 1.00 C +ATOM 1489 ND1 HIS 98 -12.840 19.934 -13.729 1.00 1.00 N +ATOM 1490 CD2 HIS 98 -14.290 18.345 -14.194 1.00 1.00 C +ATOM 1491 CE1 HIS 98 -14.033 20.329 -13.309 1.00 1.00 C +ATOM 1492 NE2 HIS 98 -14.930 19.343 -13.597 1.00 1.00 N +ATOM 1495 HB2 HIS 98 -11.602 18.302 -15.882 1.00 1.00 H +ATOM 1496 HB3 HIS 98 -12.084 16.871 -14.991 1.00 1.00 H +ATOM 1497 HD1 HIS 98 -11.990 20.454 -13.650 1.00 1.00 H +ATOM 1498 HD2 HIS 98 -14.742 17.418 -14.544 1.00 1.00 H +ATOM 1499 HE1 HIS 98 -14.258 21.276 -12.818 1.00 1.00 H +ATOM 1500 N TYR 99 -11.576 16.771 -12.267 1.00 1.00 N +ATOM 1501 CA TYR 99 -11.899 16.442 -10.889 1.00 1.00 C +ATOM 1502 C TYR 99 -12.184 14.948 -10.734 1.00 1.00 C +ATOM 1503 O TYR 99 -13.223 14.462 -11.176 1.00 1.00 O +ATOM 1512 H TYR 99 -12.001 16.182 -12.953 1.00 1.00 H +ATOM 1513 HA TYR 99 -11.043 16.707 -10.270 1.00 1.00 H +ATOM 1504 CB TYR 99 -13.169 17.229 -10.555 1.00 1.00 C +ATOM 1505 CG TYR 99 -14.465 16.464 -10.827 1.00 1.00 C +ATOM 1506 CD1 TYR 99 -14.806 16.124 -12.121 1.00 1.00 C +ATOM 1507 CD2 TYR 99 -15.292 16.113 -9.780 1.00 1.00 C +ATOM 1508 CE1 TYR 99 -16.026 15.403 -12.377 1.00 1.00 C +ATOM 1509 CE2 TYR 99 -16.512 15.392 -10.037 1.00 1.00 C +ATOM 1510 CZ TYR 99 -16.819 15.073 -11.323 1.00 1.00 C +ATOM 1511 OH TYR 99 -17.971 14.392 -11.565 1.00 1.00 O +ATOM 1514 HB2 TYR 99 -13.141 17.514 -9.503 1.00 1.00 H +ATOM 1515 HB3 TYR 99 -13.175 18.152 -11.134 1.00 1.00 H +ATOM 1516 HD1 TYR 99 -14.153 16.400 -12.948 1.00 1.00 H +ATOM 1517 HD2 TYR 99 -15.022 16.381 -8.758 1.00 1.00 H +ATOM 1518 HE1 TYR 99 -16.308 15.128 -13.394 1.00 1.00 H +ATOM 1519 HE2 TYR 99 -17.175 15.109 -9.219 1.00 1.00 H +ATOM 1520 HH TYR 99 -17.831 13.415 -11.408 1.00 1.00 H +ATOM 1521 N PRO 100 -11.218 14.242 -10.086 1.00 1.00 N +ATOM 1522 CA PRO 100 -11.355 12.812 -9.868 1.00 1.00 C +ATOM 1523 C PRO 100 -12.362 12.522 -8.752 1.00 1.00 C +ATOM 1524 O PRO 100 -11.991 12.433 -7.584 1.00 1.00 O +ATOM 1528 HA PRO 100 -11.719 12.370 -10.687 1.00 1.00 H +ATOM 1525 CB PRO 100 -9.952 12.328 -9.542 1.00 1.00 C +ATOM 1526 CG PRO 100 -9.169 13.565 -9.133 1.00 1.00 C +ATOM 1527 CD PRO 100 -9.975 14.785 -9.549 1.00 1.00 C +ATOM 1529 HB2 PRO 100 -9.970 11.594 -8.736 1.00 1.00 H +ATOM 1530 HB3 PRO 100 -9.495 11.844 -10.405 1.00 1.00 H +ATOM 1531 HG2 PRO 100 -8.996 13.570 -8.057 1.00 1.00 H +ATOM 1532 HG3 PRO 100 -8.190 13.572 -9.614 1.00 1.00 H +ATOM 1533 HD2 PRO 100 -10.164 15.442 -8.700 1.00 1.00 H +ATOM 1534 HD3 PRO 100 -9.444 15.375 -10.296 1.00 1.00 H +ATOM 1535 N ALA 101 -13.617 12.383 -9.154 1.00 1.00 N +ATOM 1536 CA ALA 101 -14.681 12.105 -8.204 1.00 1.00 C +ATOM 1537 C ALA 101 -14.245 10.969 -7.275 1.00 1.00 C +ATOM 1538 O ALA 101 -13.512 10.071 -7.688 1.00 1.00 O +ATOM 1540 H ALA 101 -13.911 12.456 -10.107 1.00 1.00 H +ATOM 1541 HA ALA 101 -14.841 13.005 -7.612 1.00 1.00 H +ATOM 1539 CB ALA 101 -15.969 11.776 -8.960 1.00 1.00 C +ATOM 1542 HB1 ALA 101 -15.721 11.326 -9.921 1.00 1.00 H +ATOM 1543 HB2 ALA 101 -16.566 11.077 -8.375 1.00 1.00 H +ATOM 1544 HB3 ALA 101 -16.538 12.692 -9.124 1.00 1.00 H +ATOM 1545 N PRO 102 -14.725 11.050 -6.005 1.00 1.00 N +ATOM 1546 CA PRO 102 -14.392 10.039 -5.015 1.00 1.00 C +ATOM 1547 C PRO 102 -15.172 8.748 -5.266 1.00 1.00 C +ATOM 1548 O PRO 102 -16.333 8.787 -5.669 1.00 1.00 O +ATOM 1552 HA PRO 102 -13.425 9.792 -5.082 1.00 1.00 H +ATOM 1549 CB PRO 102 -14.719 10.680 -3.675 1.00 1.00 C +ATOM 1550 CG PRO 102 -15.652 11.840 -3.984 1.00 1.00 C +ATOM 1551 CD PRO 102 -15.594 12.099 -5.481 1.00 1.00 C +ATOM 1553 HB2 PRO 102 -15.195 9.963 -3.006 1.00 1.00 H +ATOM 1554 HB3 PRO 102 -13.813 11.029 -3.178 1.00 1.00 H +ATOM 1555 HG2 PRO 102 -16.670 11.602 -3.677 1.00 1.00 H +ATOM 1556 HG3 PRO 102 -15.351 12.730 -3.431 1.00 1.00 H +ATOM 1557 HD2 PRO 102 -16.586 12.052 -5.929 1.00 1.00 H +ATOM 1558 HD3 PRO 102 -15.193 13.089 -5.696 1.00 1.00 H +ATOM 1559 N LYS 103 -14.503 7.632 -5.016 1.00 1.00 N +ATOM 1560 CA LYS 103 -15.118 6.330 -5.209 1.00 1.00 C +ATOM 1561 C LYS 103 -14.993 5.514 -3.921 1.00 1.00 C +ATOM 1562 O LYS 103 -14.530 4.375 -3.946 1.00 1.00 O +ATOM 1568 H LYS 103 -13.558 7.608 -4.688 1.00 1.00 H +ATOM 1569 HA LYS 103 -16.177 6.496 -5.411 1.00 1.00 H +ATOM 1563 CB LYS 103 -14.527 5.635 -6.437 1.00 1.00 C +ATOM 1564 CG LYS 103 -13.029 5.921 -6.560 1.00 1.00 C +ATOM 1565 CD LYS 103 -12.225 5.064 -5.581 1.00 1.00 C +ATOM 1566 CE LYS 103 -11.823 5.875 -4.347 1.00 1.00 C +ATOM 1567 NZ LYS 103 -10.889 5.099 -3.499 1.00 1.00 N +ATOM 1570 HB2 LYS 103 -14.691 4.560 -6.366 1.00 1.00 H +ATOM 1571 HB3 LYS 103 -15.042 5.976 -7.335 1.00 1.00 H +ATOM 1572 HG2 LYS 103 -12.700 5.720 -7.580 1.00 1.00 H +ATOM 1573 HG3 LYS 103 -12.840 6.976 -6.367 1.00 1.00 H +ATOM 1574 HD2 LYS 103 -12.816 4.201 -5.277 1.00 1.00 H +ATOM 1575 HD3 LYS 103 -11.332 4.681 -6.075 1.00 1.00 H +ATOM 1576 HE2 LYS 103 -11.353 6.809 -4.656 1.00 1.00 H +ATOM 1577 HE3 LYS 103 -12.711 6.139 -3.772 1.00 1.00 H +ATOM 1578 HZ1 LYS 103 -11.163 4.138 -3.495 1.00 1.00 H +ATOM 1579 HZ2 LYS 103 -9.962 5.181 -3.865 1.00 1.00 H +ATOM 1580 HZ3 LYS 103 -10.912 5.457 -2.566 1.00 1.00 H +ATOM 1581 N ARG 104 -15.413 6.130 -2.825 1.00 1.00 N +ATOM 1582 CA ARG 104 -15.354 5.475 -1.529 1.00 1.00 C +ATOM 1583 C ARG 104 -16.554 4.543 -1.350 1.00 1.00 C +ATOM 1584 O ARG 104 -16.390 3.371 -1.018 1.00 1.00 O +ATOM 1592 H ARG 104 -15.789 7.056 -2.813 1.00 1.00 H +ATOM 1593 HA ARG 104 -14.420 4.914 -1.544 1.00 1.00 H +ATOM 1585 CB ARG 104 -15.338 6.501 -0.395 1.00 1.00 C +ATOM 1586 CG ARG 104 -15.988 7.816 -0.834 1.00 1.00 C +ATOM 1587 CD ARG 104 -16.367 8.671 0.376 1.00 1.00 C +ATOM 1588 NE ARG 104 -17.700 9.280 0.167 1.00 1.00 N +ATOM 1589 CZ ARG 104 -17.905 10.433 -0.484 1.00 1.00 C +ATOM 1590 NH1 ARG 104 -16.867 11.108 -0.995 1.00 1.00 N +ATOM 1591 NH2 ARG 104 -19.150 10.909 -0.626 1.00 1.00 N +ATOM 1594 HB2 ARG 104 -15.870 6.101 0.470 1.00 1.00 H +ATOM 1595 HB3 ARG 104 -14.312 6.685 -0.080 1.00 1.00 H +ATOM 1596 HG2 ARG 104 -15.299 8.368 -1.473 1.00 1.00 H +ATOM 1597 HG3 ARG 104 -16.876 7.605 -1.429 1.00 1.00 H +ATOM 1598 HD2 ARG 104 -16.375 8.058 1.277 1.00 1.00 H +ATOM 1599 HD3 ARG 104 -15.621 9.452 0.529 1.00 1.00 H +ATOM 1600 HE ARG 104 -18.497 8.801 0.535 1.00 1.00 H +ATOM 1601 HH11 ARG 104 -15.938 10.752 -0.888 1.00 1.00 H +ATOM 1602 HH12 ARG 104 -17.020 11.969 -1.481 1.00 1.00 H +ATOM 1603 HH21 ARG 104 -19.924 10.405 -0.246 1.00 1.00 H +ATOM 1604 HH22 ARG 104 -19.303 11.769 -1.112 1.00 1.00 H +ATOM 1605 N GLY 105 -17.735 5.101 -1.577 1.00 1.00 N +ATOM 1606 CA GLY 105 -18.962 4.335 -1.445 1.00 1.00 C +ATOM 1607 C GLY 105 -19.614 4.102 -2.810 1.00 1.00 C +ATOM 1608 O GLY 105 -20.590 4.764 -3.157 1.00 1.00 O +ATOM 1609 H GLY 105 -17.860 6.056 -1.847 1.00 1.00 H +ATOM 1610 HA2 GLY 105 -18.748 3.377 -0.971 1.00 1.00 H +ATOM 1611 HA3 GLY 105 -19.657 4.865 -0.792 1.00 1.00 H +ATOM 1612 N ILE 106 -19.047 3.158 -3.546 1.00 1.00 N +ATOM 1613 CA ILE 106 -19.559 2.829 -4.865 1.00 1.00 C +ATOM 1614 C ILE 106 -20.610 1.724 -4.738 1.00 1.00 C +ATOM 1615 O ILE 106 -21.640 1.761 -5.409 1.00 1.00 O +ATOM 1620 H ILE 106 -18.252 2.624 -3.256 1.00 1.00 H +ATOM 1621 HA ILE 106 -20.043 3.722 -5.260 1.00 1.00 H +ATOM 1616 CB ILE 106 -18.411 2.480 -5.815 1.00 1.00 C +ATOM 1617 CG1 ILE 106 -18.938 2.139 -7.210 1.00 1.00 C +ATOM 1618 CG2 ILE 106 -17.545 1.357 -5.239 1.00 1.00 C +ATOM 1619 CD1 ILE 106 -19.423 0.690 -7.274 1.00 1.00 C +ATOM 1622 HB ILE 106 -17.774 3.357 -5.916 1.00 1.00 H +ATOM 1623 HG12 ILE 106 -19.756 2.811 -7.467 1.00 1.00 H +ATOM 1624 HG13 ILE 106 -18.152 2.297 -7.948 1.00 1.00 H +ATOM 1625 HG21 ILE 106 -18.185 0.605 -4.777 1.00 1.00 H +ATOM 1626 HG22 ILE 106 -16.966 0.898 -6.040 1.00 1.00 H +ATOM 1627 HG23 ILE 106 -16.868 1.768 -4.490 1.00 1.00 H +ATOM 1628 HD11 ILE 106 -19.444 0.269 -6.269 1.00 1.00 H +ATOM 1629 HD12 ILE 106 -20.425 0.660 -7.702 1.00 1.00 H +ATOM 1630 HD13 ILE 106 -18.744 0.107 -7.897 1.00 1.00 H +ATOM 1631 N HIS 107 -20.313 0.766 -3.872 1.00 1.00 N +ATOM 1632 CA HIS 107 -21.218 -0.348 -3.648 1.00 1.00 C +ATOM 1633 C HIS 107 -20.514 -1.425 -2.820 1.00 1.00 C +ATOM 1634 O HIS 107 -19.400 -1.831 -3.143 1.00 1.00 O +ATOM 1641 H HIS 107 -19.473 0.742 -3.330 1.00 1.00 H +ATOM 1642 HA HIS 107 -22.061 0.043 -3.079 1.00 1.00 H +ATOM 1635 CB HIS 107 -21.761 -0.883 -4.976 1.00 1.00 C +ATOM 1636 CG HIS 107 -23.256 -0.745 -5.129 1.00 1.00 C +ATOM 1637 ND1 HIS 107 -24.087 -1.821 -5.385 1.00 1.00 N +ATOM 1638 CD2 HIS 107 -24.062 0.354 -5.056 1.00 1.00 C +ATOM 1639 CE1 HIS 107 -25.333 -1.380 -5.464 1.00 1.00 C +ATOM 1640 NE2 HIS 107 -25.316 -0.031 -5.260 1.00 1.00 N +ATOM 1643 HB2 HIS 107 -21.272 -0.355 -5.795 1.00 1.00 H +ATOM 1644 HB3 HIS 107 -21.492 -1.935 -5.069 1.00 1.00 H +ATOM 1645 HD1 HIS 107 -23.795 -2.772 -5.494 1.00 1.00 H +ATOM 1646 HD2 HIS 107 -23.731 1.374 -4.864 1.00 1.00 H +ATOM 1647 HE1 HIS 107 -26.217 -1.987 -5.657 1.00 1.00 H +ATOM 1648 N ARG 108 -21.194 -1.854 -1.766 1.00 1.00 N +ATOM 1649 CA ARG 108 -20.648 -2.875 -0.889 1.00 1.00 C +ATOM 1650 C ARG 108 -21.607 -3.146 0.272 1.00 1.00 C +ATOM 1651 O ARG 108 -21.332 -2.768 1.410 1.00 1.00 O +ATOM 1659 H ARG 108 -22.100 -1.517 -1.510 1.00 1.00 H +ATOM 1660 HA ARG 108 -20.537 -3.756 -1.521 1.00 1.00 H +ATOM 1652 CB ARG 108 -19.288 -2.450 -0.329 1.00 1.00 C +ATOM 1653 CG ARG 108 -19.372 -1.071 0.328 1.00 1.00 C +ATOM 1654 CD ARG 108 -19.024 0.034 -0.670 1.00 1.00 C +ATOM 1655 NE ARG 108 -18.368 1.162 0.030 1.00 1.00 N +ATOM 1656 CZ ARG 108 -18.980 1.942 0.932 1.00 1.00 C +ATOM 1657 NH1 ARG 108 -20.263 1.723 1.247 1.00 1.00 N +ATOM 1658 NH2 ARG 108 -18.307 2.942 1.518 1.00 1.00 N +ATOM 1661 HB2 ARG 108 -18.945 -3.184 0.400 1.00 1.00 H +ATOM 1662 HB3 ARG 108 -18.551 -2.429 -1.132 1.00 1.00 H +ATOM 1663 HG2 ARG 108 -20.378 -0.910 0.717 1.00 1.00 H +ATOM 1664 HG3 ARG 108 -18.691 -1.027 1.178 1.00 1.00 H +ATOM 1665 HD2 ARG 108 -18.362 -0.358 -1.444 1.00 1.00 H +ATOM 1666 HD3 ARG 108 -19.927 0.383 -1.171 1.00 1.00 H +ATOM 1667 HE ARG 108 -17.410 1.352 -0.181 1.00 1.00 H +ATOM 1668 HH11 ARG 108 -20.765 0.978 0.811 1.00 1.00 H +ATOM 1669 HH12 ARG 108 -20.719 2.306 1.921 1.00 1.00 H +ATOM 1670 HH21 ARG 108 -17.348 3.105 1.283 1.00 1.00 H +ATOM 1671 HH22 ARG 108 -18.763 3.525 2.191 1.00 1.00 H +ATOM 1672 N ASP 109 -22.713 -3.797 -0.056 1.00 1.00 N +ATOM 1673 CA ASP 109 -23.714 -4.123 0.944 1.00 1.00 C +ATOM 1674 C ASP 109 -24.243 -2.831 1.571 1.00 1.00 C +ATOM 1675 O ASP 109 -23.690 -1.765 1.224 1.00 1.00 O +ATOM 1681 H ASP 109 -22.929 -4.100 -0.984 1.00 1.00 H +ATOM 1682 HA ASP 109 -24.488 -4.673 0.408 1.00 1.00 H +ATOM 1676 CB ASP 109 -23.117 -4.981 2.063 1.00 1.00 C +ATOM 1677 CG ASP 109 -23.871 -4.924 3.393 1.00 1.00 C +ATOM 1678 OD1 ASP 109 -25.036 -5.475 3.383 1.00 1.00 O +ATOM 1679 OD2 ASP 109 -23.368 -4.382 4.389 1.00 1.00 O +ATOM 1683 HB2 ASP 109 -23.083 -6.017 1.726 1.00 1.00 H +ATOM 1684 HB3 ASP 109 -22.088 -4.666 2.231 1.00 1.00 H +ATOM 1680 OXT ASP 109 -25.170 -2.863 2.378 1.00 1.00 O +TER +END diff --git a/Mobi/data/stdout1 b/Mobi/data/stdout1 new file mode 100644 index 0000000..e82fce4 --- /dev/null +++ b/Mobi/data/stdout1 @@ -0,0 +1,1695 @@ +SEQRES 0 109 GLY SER GLY ASN SER LEU GLU LYS HIS SER TRP TYR HIS +SEQRES 1 109 GLY PRO VAL SER ARG ASN ALA ALA GLU TYR LEU LEU SER +SEQRES 2 109 SER GLY ILE ASN GLY SER PHE LEU VAL ARG GLU SER GLU +SEQRES 3 109 SER SER PRO GLY GLN ARG SER ILE SER LEU ARG TYR GLU +SEQRES 4 109 GLY ARG VAL TYR HIS TYR ARG ILE ASN THR ALA SER ASP +SEQRES 5 109 GLY LYS LEU TYR VAL SER SER GLU SER ARG PHE ASN THR +SEQRES 6 109 LEU ALA GLU LEU VAL HIS HIS HIS SER THR VAL ALA ASP +SEQRES 7 109 GLY LEU ILE THR THR LEU HIS TYR PRO ALA PRO LYS ARG +SEQRES 9 109 GLY ILE HIS ARG ASP +ATOM 1 N GLY 1 -12.301 -1.087 1.440 1.00 1.00 N +ATOM 2 CA GLY 1 -12.028 -1.646 0.126 1.00 1.00 C +ATOM 3 C GLY 1 -11.475 -0.579 -0.821 1.00 1.00 C +ATOM 4 O GLY 1 -11.210 0.547 -0.405 1.00 1.00 O +ATOM 5 H1 GLY 1 -11.478 -0.598 1.776 1.00 1.00 H +ATOM 6 H2 GLY 1 -13.077 -0.437 1.375 1.00 1.00 H +ATOM 7 H3 GLY 1 -12.537 -1.833 2.083 1.00 1.00 H +ATOM 8 HA2 GLY 1 -11.312 -2.463 0.217 1.00 1.00 H +ATOM 9 HA3 GLY 1 -12.942 -2.070 -0.289 1.00 1.00 H +ATOM 10 N SER 2 -11.320 -0.972 -2.077 1.00 1.00 N +ATOM 11 CA SER 2 -10.804 -0.064 -3.086 1.00 1.00 C +ATOM 12 C SER 2 -9.349 0.291 -2.777 1.00 1.00 C +ATOM 13 O SER 2 -8.443 -0.078 -3.523 1.00 1.00 O +ATOM 16 H SER 2 -11.538 -1.891 -2.406 1.00 1.00 H +ATOM 17 HA SER 2 -10.872 -0.609 -4.028 1.00 1.00 H +ATOM 14 CB SER 2 -11.654 1.206 -3.172 1.00 1.00 C +ATOM 15 OG SER 2 -12.907 0.968 -3.807 1.00 1.00 O +ATOM 18 HB2 SER 2 -11.826 1.595 -2.167 1.00 1.00 H +ATOM 19 HB3 SER 2 -11.108 1.972 -3.720 1.00 1.00 H +ATOM 20 HG SER 2 -12.976 0.008 -4.080 1.00 1.00 H +ATOM 21 N GLY 3 -9.169 1.005 -1.674 1.00 1.00 N +ATOM 22 CA GLY 3 -7.838 1.414 -1.257 1.00 1.00 C +ATOM 23 C GLY 3 -6.846 0.255 -1.371 1.00 1.00 C +ATOM 24 O GLY 3 -7.169 -0.880 -1.021 1.00 1.00 O +ATOM 25 H GLY 3 -9.910 1.302 -1.073 1.00 1.00 H +ATOM 26 HA2 GLY 3 -7.501 2.249 -1.871 1.00 1.00 H +ATOM 27 HA3 GLY 3 -7.871 1.769 -0.227 1.00 1.00 H +ATOM 28 N ASN 4 -5.660 0.579 -1.863 1.00 1.00 N +ATOM 29 CA ASN 4 -4.619 -0.420 -2.029 1.00 1.00 C +ATOM 30 C ASN 4 -3.249 0.255 -1.929 1.00 1.00 C +ATOM 31 O ASN 4 -2.410 -0.151 -1.128 1.00 1.00 O +ATOM 36 H ASN 4 -5.406 1.506 -2.144 1.00 1.00 H +ATOM 37 HA ASN 4 -4.787 -1.143 -1.230 1.00 1.00 H +ATOM 32 CB ASN 4 -4.715 -1.095 -3.398 1.00 1.00 C +ATOM 33 CG ASN 4 -3.651 -2.183 -3.550 1.00 1.00 C +ATOM 34 OD1 ASN 4 -2.474 -1.973 -3.309 1.00 1.00 O +ATOM 35 ND2 ASN 4 -4.128 -3.354 -3.963 1.00 1.00 N +ATOM 38 HB2 ASN 4 -5.707 -1.531 -3.523 1.00 1.00 H +ATOM 39 HB3 ASN 4 -4.595 -0.349 -4.184 1.00 1.00 H +ATOM 40 HD21 ASN 4 -5.107 -3.459 -4.144 1.00 1.00 H +ATOM 41 HD22 ASN 4 -3.510 -4.128 -4.093 1.00 1.00 H +ATOM 42 N SER 5 -3.067 1.274 -2.756 1.00 1.00 N +ATOM 43 CA SER 5 -1.813 2.009 -2.773 1.00 1.00 C +ATOM 44 C SER 5 -1.983 3.348 -2.051 1.00 1.00 C +ATOM 45 O SER 5 -1.519 4.379 -2.534 1.00 1.00 O +ATOM 48 H SER 5 -3.755 1.597 -3.405 1.00 1.00 H +ATOM 49 HA SER 5 -1.102 1.377 -2.243 1.00 1.00 H +ATOM 46 CB SER 5 -1.325 2.236 -4.205 1.00 1.00 C +ATOM 47 OG SER 5 -2.352 2.762 -5.040 1.00 1.00 O +ATOM 50 HB2 SER 5 -0.477 2.920 -4.195 1.00 1.00 H +ATOM 51 HB3 SER 5 -0.969 1.293 -4.619 1.00 1.00 H +ATOM 52 HG SER 5 -2.016 3.570 -5.527 1.00 1.00 H +ATOM 53 N LEU 6 -2.648 3.287 -0.907 1.00 1.00 N +ATOM 54 CA LEU 6 -2.884 4.483 -0.114 1.00 1.00 C +ATOM 55 C LEU 6 -3.750 5.458 -0.916 1.00 1.00 C +ATOM 56 O LEU 6 -3.617 5.553 -2.135 1.00 1.00 O +ATOM 61 H LEU 6 -3.021 2.444 -0.522 1.00 1.00 H +ATOM 62 HA LEU 6 -3.437 4.180 0.775 1.00 1.00 H +ATOM 57 CB LEU 6 -1.558 5.083 0.358 1.00 1.00 C +ATOM 58 CG LEU 6 -1.026 4.563 1.695 1.00 1.00 C +ATOM 59 CD1 LEU 6 -1.997 4.884 2.834 1.00 1.00 C +ATOM 60 CD2 LEU 6 -0.710 3.068 1.616 1.00 1.00 C +ATOM 63 HB2 LEU 6 -0.805 4.896 -0.407 1.00 1.00 H +ATOM 64 HB3 LEU 6 -1.677 6.163 0.431 1.00 1.00 H +ATOM 65 HG LEU 6 -0.091 5.079 1.914 1.00 1.00 H +ATOM 66 HD11 LEU 6 -2.582 5.766 2.574 1.00 1.00 H +ATOM 67 HD12 LEU 6 -2.665 4.037 2.990 1.00 1.00 H +ATOM 68 HD13 LEU 6 -1.433 5.077 3.747 1.00 1.00 H +ATOM 69 HD21 LEU 6 -0.128 2.867 0.717 1.00 1.00 H +ATOM 70 HD22 LEU 6 -0.136 2.772 2.494 1.00 1.00 H +ATOM 71 HD23 LEU 6 -1.640 2.501 1.581 1.00 1.00 H +ATOM 72 N GLU 7 -4.616 6.156 -0.199 1.00 1.00 N +ATOM 73 CA GLU 7 -5.502 7.120 -0.827 1.00 1.00 C +ATOM 74 C GLU 7 -4.734 8.394 -1.185 1.00 1.00 C +ATOM 75 O GLU 7 -4.973 9.452 -0.604 1.00 1.00 O +ATOM 81 H GLU 7 -4.717 6.074 0.793 1.00 1.00 H +ATOM 82 HA GLU 7 -5.860 6.637 -1.735 1.00 1.00 H +ATOM 76 CB GLU 7 -6.697 7.437 0.076 1.00 1.00 C +ATOM 77 CG GLU 7 -8.001 6.932 -0.544 1.00 1.00 C +ATOM 78 CD GLU 7 -9.206 7.685 0.023 1.00 1.00 C +ATOM 79 OE1 GLU 7 -9.205 8.957 -0.191 1.00 1.00 O +ATOM 80 OE2 GLU 7 -10.090 7.068 0.637 1.00 1.00 O +ATOM 83 HB2 GLU 7 -6.551 6.975 1.053 1.00 1.00 H +ATOM 84 HB3 GLU 7 -6.760 8.513 0.238 1.00 1.00 H +ATOM 85 HG2 GLU 7 -7.967 7.058 -1.626 1.00 1.00 H +ATOM 86 HG3 GLU 7 -8.111 5.864 -0.350 1.00 1.00 H +ATOM 87 N LYS 8 -3.826 8.251 -2.140 1.00 1.00 N +ATOM 88 CA LYS 8 -3.021 9.377 -2.582 1.00 1.00 C +ATOM 89 C LYS 8 -3.932 10.578 -2.840 1.00 1.00 C +ATOM 90 O LYS 8 -4.310 11.286 -1.907 1.00 1.00 O +ATOM 96 H LYS 8 -3.638 7.387 -2.607 1.00 1.00 H +ATOM 97 HA LYS 8 -2.338 9.627 -1.771 1.00 1.00 H +ATOM 91 CB LYS 8 -2.167 8.982 -3.788 1.00 1.00 C +ATOM 92 CG LYS 8 -0.787 9.639 -3.720 1.00 1.00 C +ATOM 93 CD LYS 8 -0.844 11.089 -4.202 1.00 1.00 C +ATOM 94 CE LYS 8 -0.514 12.059 -3.067 1.00 1.00 C +ATOM 95 NZ LYS 8 0.948 12.272 -2.977 1.00 1.00 N +ATOM 98 HB2 LYS 8 -2.056 7.899 -3.823 1.00 1.00 H +ATOM 99 HB3 LYS 8 -2.671 9.281 -4.708 1.00 1.00 H +ATOM 100 HG2 LYS 8 -0.416 9.607 -2.696 1.00 1.00 H +ATOM 101 HG3 LYS 8 -0.082 9.076 -4.332 1.00 1.00 H +ATOM 102 HD2 LYS 8 -0.140 11.231 -5.023 1.00 1.00 H +ATOM 103 HD3 LYS 8 -1.837 11.306 -4.594 1.00 1.00 H +ATOM 104 HE2 LYS 8 -1.016 13.011 -3.236 1.00 1.00 H +ATOM 105 HE3 LYS 8 -0.889 11.664 -2.124 1.00 1.00 H +ATOM 106 HZ1 LYS 8 1.346 12.275 -3.904 1.00 1.00 H +ATOM 107 HZ2 LYS 8 1.131 13.159 -2.529 1.00 1.00 H +ATOM 108 HZ3 LYS 8 1.405 11.546 -2.438 1.00 1.00 H +ATOM 109 N HIS 9 -4.256 10.774 -4.110 1.00 1.00 N +ATOM 110 CA HIS 9 -5.114 11.879 -4.502 1.00 1.00 C +ATOM 111 C HIS 9 -6.581 11.480 -4.316 1.00 1.00 C +ATOM 112 O HIS 9 -6.880 10.328 -4.006 1.00 1.00 O +ATOM 119 H HIS 9 -3.944 10.194 -4.861 1.00 1.00 H +ATOM 120 HA HIS 9 -4.884 12.707 -3.831 1.00 1.00 H +ATOM 113 CB HIS 9 -4.800 12.332 -5.927 1.00 1.00 C +ATOM 114 CG HIS 9 -3.612 13.259 -6.030 1.00 1.00 C +ATOM 115 ND1 HIS 9 -2.675 13.389 -5.020 1.00 1.00 N +ATOM 116 CD2 HIS 9 -3.219 14.096 -7.032 1.00 1.00 C +ATOM 117 CE1 HIS 9 -1.763 14.270 -5.407 1.00 1.00 C +ATOM 118 NE2 HIS 9 -2.102 14.707 -6.654 1.00 1.00 N +ATOM 121 HB2 HIS 9 -4.615 11.452 -6.545 1.00 1.00 H +ATOM 122 HB3 HIS 9 -5.675 12.833 -6.341 1.00 1.00 H +ATOM 123 HD1 HIS 9 -2.683 12.903 -4.146 1.00 1.00 H +ATOM 124 HD2 HIS 9 -3.734 14.239 -7.981 1.00 1.00 H +ATOM 125 HE1 HIS 9 -0.895 14.589 -4.830 1.00 1.00 H +ATOM 126 N SER 10 -7.454 12.456 -4.513 1.00 1.00 N +ATOM 127 CA SER 10 -8.882 12.222 -4.371 1.00 1.00 C +ATOM 128 C SER 10 -9.443 11.619 -5.660 1.00 1.00 C +ATOM 129 O SER 10 -10.607 11.837 -5.997 1.00 1.00 O +ATOM 132 H SER 10 -7.203 13.391 -4.765 1.00 1.00 H +ATOM 133 HA SER 10 -8.979 11.517 -3.545 1.00 1.00 H +ATOM 130 CB SER 10 -9.621 13.516 -4.025 1.00 1.00 C +ATOM 131 OG SER 10 -9.781 13.679 -2.619 1.00 1.00 O +ATOM 134 HB2 SER 10 -9.072 14.366 -4.429 1.00 1.00 H +ATOM 135 HB3 SER 10 -10.600 13.513 -4.503 1.00 1.00 H +ATOM 136 HG SER 10 -9.450 14.582 -2.339 1.00 1.00 H +ATOM 137 N TRP 11 -8.592 10.870 -6.346 1.00 1.00 N +ATOM 138 CA TRP 11 -8.989 10.235 -7.590 1.00 1.00 C +ATOM 139 C TRP 11 -8.217 8.919 -7.717 1.00 1.00 C +ATOM 140 O TRP 11 -8.292 8.247 -8.743 1.00 1.00 O +ATOM 151 H TRP 11 -7.648 10.698 -6.065 1.00 1.00 H +ATOM 152 HA TRP 11 -10.059 10.035 -7.536 1.00 1.00 H +ATOM 141 CB TRP 11 -8.771 11.171 -8.780 1.00 1.00 C +ATOM 142 CG TRP 11 -7.418 11.888 -8.767 1.00 1.00 C +ATOM 143 CD1 TRP 11 -7.183 13.202 -8.649 1.00 1.00 C +ATOM 144 CD2 TRP 11 -6.118 11.273 -8.882 1.00 1.00 C +ATOM 145 NE1 TRP 11 -5.831 13.478 -8.680 1.00 1.00 N +ATOM 146 CE2 TRP 11 -5.163 12.269 -8.825 1.00 1.00 C +ATOM 147 CE3 TRP 11 -5.760 9.922 -9.029 1.00 1.00 C +ATOM 148 CZ2 TRP 11 -3.788 12.016 -8.909 1.00 1.00 C +ATOM 149 CZ3 TRP 11 -4.383 9.687 -9.111 1.00 1.00 C +ATOM 150 CH2 TRP 11 -3.408 10.677 -9.055 1.00 1.00 C +ATOM 153 HB2 TRP 11 -8.857 10.597 -9.702 1.00 1.00 H +ATOM 154 HB3 TRP 11 -9.566 11.918 -8.793 1.00 1.00 H +ATOM 155 HD1 TRP 11 -7.960 13.958 -8.542 1.00 1.00 H +ATOM 156 HE1 TRP 11 -5.371 14.463 -8.604 1.00 1.00 H +ATOM 157 HE3 TRP 11 -6.495 9.119 -9.077 1.00 1.00 H +ATOM 158 HZ2 TRP 11 -3.053 12.819 -8.861 1.00 1.00 H +ATOM 159 HZ3 TRP 11 -4.051 8.655 -9.225 1.00 1.00 H +ATOM 160 HH2 TRP 11 -2.354 10.411 -9.126 1.00 1.00 H +ATOM 161 N TYR 12 -7.492 8.593 -6.657 1.00 1.00 N +ATOM 162 CA TYR 12 -6.706 7.369 -6.636 1.00 1.00 C +ATOM 163 C TYR 12 -7.098 6.487 -5.449 1.00 1.00 C +ATOM 164 O TYR 12 -6.888 6.863 -4.296 1.00 1.00 O +ATOM 173 H TYR 12 -7.435 9.145 -5.825 1.00 1.00 H +ATOM 174 HA TYR 12 -6.902 6.828 -7.561 1.00 1.00 H +ATOM 165 CB TYR 12 -5.249 7.808 -6.473 1.00 1.00 C +ATOM 166 CG TYR 12 -4.230 6.732 -6.859 1.00 1.00 C +ATOM 167 CD1 TYR 12 -4.576 5.746 -7.758 1.00 1.00 C +ATOM 168 CD2 TYR 12 -2.966 6.752 -6.306 1.00 1.00 C +ATOM 169 CE1 TYR 12 -3.617 4.734 -8.121 1.00 1.00 C +ATOM 170 CE2 TYR 12 -2.006 5.741 -6.669 1.00 1.00 C +ATOM 171 CZ TYR 12 -2.379 4.781 -7.559 1.00 1.00 C +ATOM 172 OH TYR 12 -1.474 3.827 -7.901 1.00 1.00 O +ATOM 175 HB2 TYR 12 -5.076 8.693 -7.083 1.00 1.00 H +ATOM 176 HB3 TYR 12 -5.082 8.097 -5.435 1.00 1.00 H +ATOM 177 HD1 TYR 12 -5.576 5.731 -8.194 1.00 1.00 H +ATOM 178 HD2 TYR 12 -2.692 7.531 -5.595 1.00 1.00 H +ATOM 179 HE1 TYR 12 -3.877 3.949 -8.831 1.00 1.00 H +ATOM 180 HE2 TYR 12 -1.004 5.744 -6.241 1.00 1.00 H +ATOM 181 HH TYR 12 -1.318 3.843 -8.889 1.00 1.00 H +ATOM 182 N HIS 13 -7.659 5.330 -5.771 1.00 1.00 N +ATOM 183 CA HIS 13 -8.080 4.392 -4.746 1.00 1.00 C +ATOM 184 C HIS 13 -7.310 3.081 -4.903 1.00 1.00 C +ATOM 185 O HIS 13 -7.696 2.058 -4.338 1.00 1.00 O +ATOM 192 H HIS 13 -7.824 5.033 -6.711 1.00 1.00 H +ATOM 193 HA HIS 13 -7.824 4.842 -3.786 1.00 1.00 H +ATOM 186 CB HIS 13 -9.598 4.197 -4.779 1.00 1.00 C +ATOM 187 CG HIS 13 -10.261 4.753 -6.016 1.00 1.00 C +ATOM 188 ND1 HIS 13 -11.015 3.975 -6.877 1.00 1.00 N +ATOM 189 CD2 HIS 13 -10.277 6.017 -6.527 1.00 1.00 C +ATOM 190 CE1 HIS 13 -11.459 4.747 -7.858 1.00 1.00 C +ATOM 191 NE2 HIS 13 -10.999 6.013 -7.640 1.00 1.00 N +ATOM 194 HB2 HIS 13 -9.817 3.132 -4.708 1.00 1.00 H +ATOM 195 HB3 HIS 13 -10.034 4.671 -3.900 1.00 1.00 H +ATOM 196 HD1 HIS 13 -11.195 2.996 -6.775 1.00 1.00 H +ATOM 197 HD2 HIS 13 -9.779 6.886 -6.094 1.00 1.00 H +ATOM 198 HE1 HIS 13 -12.082 4.427 -8.693 1.00 1.00 H +ATOM 199 N GLY 14 -6.235 3.151 -5.674 1.00 1.00 N +ATOM 200 CA GLY 14 -5.407 1.981 -5.912 1.00 1.00 C +ATOM 201 C GLY 14 -5.423 1.590 -7.392 1.00 1.00 C +ATOM 202 O GLY 14 -6.147 2.187 -8.187 1.00 1.00 O +ATOM 203 H GLY 14 -5.927 3.986 -6.129 1.00 1.00 H +ATOM 204 HA2 GLY 14 -4.383 2.185 -5.598 1.00 1.00 H +ATOM 205 HA3 GLY 14 -5.766 1.148 -5.308 1.00 1.00 H +ATOM 206 N PRO 15 -4.595 0.564 -7.724 1.00 1.00 N +ATOM 207 CA PRO 15 -4.508 0.086 -9.094 1.00 1.00 C +ATOM 208 C PRO 15 -5.739 -0.742 -9.465 1.00 1.00 C +ATOM 209 O PRO 15 -6.052 -1.727 -8.800 1.00 1.00 O +ATOM 213 HA PRO 15 -4.494 0.858 -9.730 1.00 1.00 H +ATOM 210 CB PRO 15 -3.215 -0.712 -9.150 1.00 1.00 C +ATOM 211 CG PRO 15 -2.866 -1.042 -7.707 1.00 1.00 C +ATOM 212 CD PRO 15 -3.723 -0.166 -6.809 1.00 1.00 C +ATOM 214 HB2 PRO 15 -3.343 -1.620 -9.739 1.00 1.00 H +ATOM 215 HB3 PRO 15 -2.420 -0.136 -9.622 1.00 1.00 H +ATOM 216 HG2 PRO 15 -3.050 -2.096 -7.503 1.00 1.00 H +ATOM 217 HG3 PRO 15 -1.807 -0.861 -7.521 1.00 1.00 H +ATOM 218 HD2 PRO 15 -4.300 -0.765 -6.106 1.00 1.00 H +ATOM 219 HD3 PRO 15 -3.109 0.515 -6.219 1.00 1.00 H +ATOM 220 N VAL 16 -6.404 -0.310 -10.527 1.00 1.00 N +ATOM 221 CA VAL 16 -7.594 -0.999 -10.995 1.00 1.00 C +ATOM 222 C VAL 16 -7.397 -1.415 -12.455 1.00 1.00 C +ATOM 223 O VAL 16 -6.661 -0.764 -13.196 1.00 1.00 O +ATOM 227 H VAL 16 -6.143 0.492 -11.064 1.00 1.00 H +ATOM 228 HA VAL 16 -7.714 -1.897 -10.388 1.00 1.00 H +ATOM 224 CB VAL 16 -8.826 -0.117 -10.786 1.00 1.00 C +ATOM 225 CG1 VAL 16 -10.054 -0.716 -11.476 1.00 1.00 C +ATOM 226 CG2 VAL 16 -9.091 0.110 -9.296 1.00 1.00 C +ATOM 229 HB VAL 16 -8.625 0.853 -11.240 1.00 1.00 H +ATOM 230 HG11 VAL 16 -9.985 -1.805 -11.460 1.00 1.00 H +ATOM 231 HG12 VAL 16 -10.955 -0.401 -10.951 1.00 1.00 H +ATOM 232 HG13 VAL 16 -10.094 -0.371 -12.509 1.00 1.00 H +ATOM 233 HG21 VAL 16 -9.169 -0.853 -8.791 1.00 1.00 H +ATOM 234 HG22 VAL 16 -8.271 0.682 -8.864 1.00 1.00 H +ATOM 235 HG23 VAL 16 -10.024 0.660 -9.172 1.00 1.00 H +ATOM 236 N SER 17 -8.068 -2.496 -12.825 1.00 1.00 N +ATOM 237 CA SER 17 -7.976 -3.004 -14.183 1.00 1.00 C +ATOM 238 C SER 17 -8.760 -2.100 -15.134 1.00 1.00 C +ATOM 239 O SER 17 -9.765 -1.505 -14.746 1.00 1.00 O +ATOM 242 H SER 17 -8.665 -3.019 -12.217 1.00 1.00 H +ATOM 243 HA SER 17 -6.914 -2.986 -14.426 1.00 1.00 H +ATOM 240 CB SER 17 -8.494 -4.441 -14.269 1.00 1.00 C +ATOM 241 OG SER 17 -8.571 -4.902 -15.614 1.00 1.00 O +ATOM 244 HB2 SER 17 -7.837 -5.099 -13.698 1.00 1.00 H +ATOM 245 HB3 SER 17 -9.481 -4.500 -13.808 1.00 1.00 H +ATOM 246 HG SER 17 -7.813 -5.526 -15.807 1.00 1.00 H +ATOM 247 N ARG 18 -8.274 -2.025 -16.365 1.00 1.00 N +ATOM 248 CA ARG 18 -8.917 -1.203 -17.376 1.00 1.00 C +ATOM 249 C ARG 18 -10.411 -1.523 -17.449 1.00 1.00 C +ATOM 250 O ARG 18 -11.234 -0.623 -17.610 1.00 1.00 O +ATOM 258 H ARG 18 -7.456 -2.512 -16.674 1.00 1.00 H +ATOM 259 HA ARG 18 -8.750 -0.177 -17.048 1.00 1.00 H +ATOM 251 CB ARG 18 -8.287 -1.429 -18.752 1.00 1.00 C +ATOM 252 CG ARG 18 -9.199 -2.278 -19.640 1.00 1.00 C +ATOM 253 CD ARG 18 -8.549 -2.545 -20.999 1.00 1.00 C +ATOM 254 NE ARG 18 -7.534 -3.615 -20.873 1.00 1.00 N +ATOM 255 CZ ARG 18 -6.423 -3.688 -21.617 1.00 1.00 C +ATOM 256 NH1 ARG 18 -6.176 -2.753 -22.546 1.00 1.00 N +ATOM 257 NH2 ARG 18 -5.558 -4.695 -21.434 1.00 1.00 N +ATOM 260 HB2 ARG 18 -8.098 -0.469 -19.232 1.00 1.00 H +ATOM 261 HB3 ARG 18 -7.322 -1.924 -18.638 1.00 1.00 H +ATOM 262 HG2 ARG 18 -9.416 -3.225 -19.144 1.00 1.00 H +ATOM 263 HG3 ARG 18 -10.152 -1.768 -19.782 1.00 1.00 H +ATOM 264 HD2 ARG 18 -9.309 -2.836 -21.724 1.00 1.00 H +ATOM 265 HD3 ARG 18 -8.084 -1.633 -21.374 1.00 1.00 H +ATOM 266 HE ARG 18 -7.687 -4.328 -20.189 1.00 1.00 H +ATOM 267 HH11 ARG 18 -6.822 -2.002 -22.683 1.00 1.00 H +ATOM 268 HH12 ARG 18 -5.346 -2.808 -23.102 1.00 1.00 H +ATOM 269 HH21 ARG 18 -5.741 -5.391 -20.742 1.00 1.00 H +ATOM 270 HH22 ARG 18 -4.728 -4.749 -21.990 1.00 1.00 H +ATOM 271 N ASN 19 -10.716 -2.806 -17.323 1.00 1.00 N +ATOM 272 CA ASN 19 -12.097 -3.256 -17.371 1.00 1.00 C +ATOM 273 C ASN 19 -12.932 -2.433 -16.387 1.00 1.00 C +ATOM 274 O ASN 19 -13.847 -1.717 -16.790 1.00 1.00 O +ATOM 279 H ASN 19 -10.040 -3.531 -17.191 1.00 1.00 H +ATOM 280 HA ASN 19 -12.410 -3.110 -18.406 1.00 1.00 H +ATOM 275 CB ASN 19 -12.211 -4.728 -16.974 1.00 1.00 C +ATOM 276 CG ASN 19 -11.934 -5.642 -18.169 1.00 1.00 C +ATOM 277 OD1 ASN 19 -12.834 -6.109 -18.849 1.00 1.00 O +ATOM 278 ND2 ASN 19 -10.643 -5.870 -18.387 1.00 1.00 N +ATOM 281 HB2 ASN 19 -11.506 -4.948 -16.172 1.00 1.00 H +ATOM 282 HB3 ASN 19 -13.209 -4.926 -16.584 1.00 1.00 H +ATOM 283 HD21 ASN 19 -9.953 -5.456 -17.792 1.00 1.00 H +ATOM 284 HD22 ASN 19 -10.360 -6.456 -19.147 1.00 1.00 H +ATOM 285 N ALA 20 -12.585 -2.563 -15.116 1.00 1.00 N +ATOM 286 CA ALA 20 -13.290 -1.841 -14.069 1.00 1.00 C +ATOM 287 C ALA 20 -13.107 -0.337 -14.283 1.00 1.00 C +ATOM 288 O ALA 20 -14.044 0.439 -14.093 1.00 1.00 O +ATOM 290 H ALA 20 -11.839 -3.147 -14.796 1.00 1.00 H +ATOM 291 HA ALA 20 -14.349 -2.085 -14.154 1.00 1.00 H +ATOM 289 CB ALA 20 -12.786 -2.303 -12.701 1.00 1.00 C +ATOM 292 HB1 ALA 20 -12.204 -3.218 -12.817 1.00 1.00 H +ATOM 293 HB2 ALA 20 -12.157 -1.527 -12.264 1.00 1.00 H +ATOM 294 HB3 ALA 20 -13.636 -2.494 -12.045 1.00 1.00 H +ATOM 295 N ALA 21 -11.894 0.030 -14.670 1.00 1.00 N +ATOM 296 CA ALA 21 -11.577 1.427 -14.910 1.00 1.00 C +ATOM 297 C ALA 21 -12.681 2.058 -15.762 1.00 1.00 C +ATOM 298 O ALA 21 -13.091 3.191 -15.512 1.00 1.00 O +ATOM 300 H ALA 21 -11.139 -0.608 -14.821 1.00 1.00 H +ATOM 301 HA ALA 21 -11.543 1.930 -13.944 1.00 1.00 H +ATOM 299 CB ALA 21 -10.199 1.532 -15.569 1.00 1.00 C +ATOM 302 HB1 ALA 21 -9.624 0.632 -15.353 1.00 1.00 H +ATOM 303 HB2 ALA 21 -10.320 1.636 -16.647 1.00 1.00 H +ATOM 304 HB3 ALA 21 -9.675 2.403 -15.177 1.00 1.00 H +ATOM 305 N GLU 22 -13.129 1.297 -16.749 1.00 1.00 N +ATOM 306 CA GLU 22 -14.178 1.767 -17.640 1.00 1.00 C +ATOM 307 C GLU 22 -15.525 1.776 -16.915 1.00 1.00 C +ATOM 308 O GLU 22 -16.358 2.648 -17.157 1.00 1.00 O +ATOM 314 H GLU 22 -12.790 0.377 -16.945 1.00 1.00 H +ATOM 315 HA GLU 22 -13.894 2.785 -17.907 1.00 1.00 H +ATOM 309 CB GLU 22 -14.242 0.915 -18.908 1.00 1.00 C +ATOM 310 CG GLU 22 -13.426 1.547 -20.037 1.00 1.00 C +ATOM 311 CD GLU 22 -14.228 1.584 -21.339 1.00 1.00 C +ATOM 312 OE1 GLU 22 -15.117 2.457 -21.435 1.00 1.00 O +ATOM 313 OE2 GLU 22 -13.932 0.737 -22.211 1.00 1.00 O +ATOM 316 HB2 GLU 22 -13.864 -0.086 -18.699 1.00 1.00 H +ATOM 317 HB3 GLU 22 -15.280 0.804 -19.223 1.00 1.00 H +ATOM 318 HG2 GLU 22 -13.135 2.561 -19.757 1.00 1.00 H +ATOM 319 HG3 GLU 22 -12.506 0.982 -20.187 1.00 1.00 H +ATOM 320 N TYR 23 -15.696 0.797 -16.040 1.00 1.00 N +ATOM 321 CA TYR 23 -16.928 0.681 -15.279 1.00 1.00 C +ATOM 322 C TYR 23 -16.980 1.721 -14.157 1.00 1.00 C +ATOM 323 O TYR 23 -17.834 2.605 -14.165 1.00 1.00 O +ATOM 332 H TYR 23 -15.013 0.091 -15.848 1.00 1.00 H +ATOM 333 HA TYR 23 -17.762 0.851 -15.960 1.00 1.00 H +ATOM 324 CB TYR 23 -16.912 -0.718 -14.660 1.00 1.00 C +ATOM 325 CG TYR 23 -18.175 -1.064 -13.870 1.00 1.00 C +ATOM 326 CD1 TYR 23 -19.419 -0.869 -14.436 1.00 1.00 C +ATOM 327 CD2 TYR 23 -18.072 -1.573 -12.590 1.00 1.00 C +ATOM 328 CE1 TYR 23 -20.608 -1.195 -13.693 1.00 1.00 C +ATOM 329 CE2 TYR 23 -19.262 -1.898 -11.847 1.00 1.00 C +ATOM 330 CZ TYR 23 -20.471 -1.693 -12.435 1.00 1.00 C +ATOM 331 OH TYR 23 -21.594 -2.001 -11.733 1.00 1.00 O +ATOM 334 HB2 TYR 23 -16.779 -1.455 -15.453 1.00 1.00 H +ATOM 335 HB3 TYR 23 -16.048 -0.803 -13.999 1.00 1.00 H +ATOM 336 HD1 TYR 23 -19.500 -0.469 -15.447 1.00 1.00 H +ATOM 337 HD2 TYR 23 -17.090 -1.726 -12.143 1.00 1.00 H +ATOM 338 HE1 TYR 23 -21.596 -1.046 -14.128 1.00 1.00 H +ATOM 339 HE2 TYR 23 -19.194 -2.300 -10.836 1.00 1.00 H +ATOM 340 HH TYR 23 -21.907 -2.920 -11.973 1.00 1.00 H +ATOM 341 N LEU 24 -16.054 1.579 -13.220 1.00 1.00 N +ATOM 342 CA LEU 24 -15.982 2.495 -12.095 1.00 1.00 C +ATOM 343 C LEU 24 -15.936 3.932 -12.614 1.00 1.00 C +ATOM 344 O LEU 24 -16.400 4.855 -11.944 1.00 1.00 O +ATOM 349 H LEU 24 -15.363 0.857 -13.220 1.00 1.00 H +ATOM 350 HA LEU 24 -16.895 2.367 -11.511 1.00 1.00 H +ATOM 345 CB LEU 24 -14.809 2.133 -11.181 1.00 1.00 C +ATOM 346 CG LEU 24 -13.415 2.456 -11.723 1.00 1.00 C +ATOM 347 CD1 LEU 24 -13.027 3.902 -11.411 1.00 1.00 C +ATOM 348 CD2 LEU 24 -12.379 1.458 -11.199 1.00 1.00 C +ATOM 351 HB2 LEU 24 -14.938 2.653 -10.232 1.00 1.00 H +ATOM 352 HB3 LEU 24 -14.857 1.065 -10.968 1.00 1.00 H +ATOM 353 HG LEU 24 -13.437 2.355 -12.808 1.00 1.00 H +ATOM 354 HD11 LEU 24 -13.252 4.122 -10.367 1.00 1.00 H +ATOM 355 HD12 LEU 24 -11.960 4.039 -11.590 1.00 1.00 H +ATOM 356 HD13 LEU 24 -13.593 4.576 -12.054 1.00 1.00 H +ATOM 357 HD21 LEU 24 -12.890 0.591 -10.782 1.00 1.00 H +ATOM 358 HD22 LEU 24 -11.734 1.142 -12.017 1.00 1.00 H +ATOM 359 HD23 LEU 24 -11.778 1.934 -10.424 1.00 1.00 H +ATOM 360 N LEU 25 -15.374 4.080 -13.805 1.00 1.00 N +ATOM 361 CA LEU 25 -15.262 5.390 -14.423 1.00 1.00 C +ATOM 362 C LEU 25 -16.637 6.058 -14.446 1.00 1.00 C +ATOM 363 O LEU 25 -17.362 5.959 -15.435 1.00 1.00 O +ATOM 368 H LEU 25 -15.000 3.325 -14.343 1.00 1.00 H +ATOM 369 HA LEU 25 -14.596 5.990 -13.800 1.00 1.00 H +ATOM 364 CB LEU 25 -14.608 5.278 -15.802 1.00 1.00 C +ATOM 365 CG LEU 25 -15.010 6.344 -16.823 1.00 1.00 C +ATOM 366 CD1 LEU 25 -14.925 7.745 -16.216 1.00 1.00 C +ATOM 367 CD2 LEU 25 -14.177 6.221 -18.101 1.00 1.00 C +ATOM 370 HB2 LEU 25 -13.526 5.315 -15.674 1.00 1.00 H +ATOM 371 HB3 LEU 25 -14.847 4.298 -16.216 1.00 1.00 H +ATOM 372 HG LEU 25 -16.051 6.175 -17.100 1.00 1.00 H +ATOM 373 HD11 LEU 25 -14.200 7.745 -15.402 1.00 1.00 H +ATOM 374 HD12 LEU 25 -14.611 8.455 -16.981 1.00 1.00 H +ATOM 375 HD13 LEU 25 -15.903 8.035 -15.831 1.00 1.00 H +ATOM 376 HD21 LEU 25 -13.119 6.315 -17.855 1.00 1.00 H +ATOM 377 HD22 LEU 25 -14.358 5.248 -18.560 1.00 1.00 H +ATOM 378 HD23 LEU 25 -14.460 7.010 -18.796 1.00 1.00 H +ATOM 379 N SER 26 -16.956 6.724 -13.346 1.00 1.00 N +ATOM 380 CA SER 26 -18.232 7.408 -13.228 1.00 1.00 C +ATOM 381 C SER 26 -19.285 6.704 -14.088 1.00 1.00 C +ATOM 382 O SER 26 -19.739 5.613 -13.750 1.00 1.00 O +ATOM 385 H SER 26 -16.360 6.799 -12.546 1.00 1.00 H +ATOM 386 HA SER 26 -18.496 7.345 -12.172 1.00 1.00 H +ATOM 383 CB SER 26 -18.109 8.877 -13.635 1.00 1.00 C +ATOM 384 OG SER 26 -17.471 9.659 -12.630 1.00 1.00 O +ATOM 387 HB2 SER 26 -17.542 8.949 -14.564 1.00 1.00 H +ATOM 388 HB3 SER 26 -19.101 9.282 -13.837 1.00 1.00 H +ATOM 389 HG SER 26 -18.117 10.325 -12.254 1.00 1.00 H +ATOM 390 N SER 27 -19.640 7.359 -15.184 1.00 1.00 N +ATOM 391 CA SER 27 -20.631 6.809 -16.094 1.00 1.00 C +ATOM 392 C SER 27 -20.925 7.811 -17.213 1.00 1.00 C +ATOM 393 O SER 27 -22.058 7.909 -17.682 1.00 1.00 O +ATOM 396 H SER 27 -19.266 8.246 -15.452 1.00 1.00 H +ATOM 397 HA SER 27 -20.178 5.905 -16.501 1.00 1.00 H +ATOM 394 CB SER 27 -21.918 6.447 -15.354 1.00 1.00 C +ATOM 395 OG SER 27 -21.983 5.058 -15.043 1.00 1.00 O +ATOM 398 HB2 SER 27 -21.984 7.027 -14.435 1.00 1.00 H +ATOM 399 HB3 SER 27 -22.779 6.720 -15.966 1.00 1.00 H +ATOM 400 HG SER 27 -22.854 4.846 -14.600 1.00 1.00 H +ATOM 401 N GLY 28 -19.885 8.530 -17.609 1.00 1.00 N +ATOM 402 CA GLY 28 -20.017 9.522 -18.663 1.00 1.00 C +ATOM 403 C GLY 28 -20.095 10.934 -18.081 1.00 1.00 C +ATOM 404 O GLY 28 -21.168 11.535 -18.044 1.00 1.00 O +ATOM 405 H GLY 28 -18.966 8.445 -17.223 1.00 1.00 H +ATOM 406 HA2 GLY 28 -19.169 9.451 -19.343 1.00 1.00 H +ATOM 407 HA3 GLY 28 -20.912 9.315 -19.250 1.00 1.00 H +ATOM 408 N ILE 29 -18.945 11.423 -17.642 1.00 1.00 N +ATOM 409 CA ILE 29 -18.871 12.754 -17.064 1.00 1.00 C +ATOM 410 C ILE 29 -18.241 13.712 -18.078 1.00 1.00 C +ATOM 411 O ILE 29 -17.950 13.322 -19.207 1.00 1.00 O +ATOM 416 H ILE 29 -18.077 10.929 -17.677 1.00 1.00 H +ATOM 417 HA ILE 29 -19.892 13.083 -16.867 1.00 1.00 H +ATOM 412 CB ILE 29 -18.140 12.716 -15.720 1.00 1.00 C +ATOM 413 CG1 ILE 29 -17.179 11.526 -15.653 1.00 1.00 C +ATOM 414 CG2 ILE 29 -19.134 12.714 -14.556 1.00 1.00 C +ATOM 415 CD1 ILE 29 -16.313 11.591 -14.393 1.00 1.00 C +ATOM 418 HB ILE 29 -17.542 13.620 -15.630 1.00 1.00 H +ATOM 419 HG12 ILE 29 -17.745 10.595 -15.663 1.00 1.00 H +ATOM 420 HG13 ILE 29 -16.540 11.521 -16.537 1.00 1.00 H +ATOM 421 HG21 ILE 29 -20.040 13.244 -14.850 1.00 1.00 H +ATOM 422 HG22 ILE 29 -19.384 11.685 -14.293 1.00 1.00 H +ATOM 423 HG23 ILE 29 -18.686 13.210 -13.696 1.00 1.00 H +ATOM 424 HD11 ILE 29 -16.870 12.086 -13.597 1.00 1.00 H +ATOM 425 HD12 ILE 29 -16.053 10.581 -14.079 1.00 1.00 H +ATOM 426 HD13 ILE 29 -15.404 12.153 -14.606 1.00 1.00 H +ATOM 427 N ASN 30 -18.049 14.947 -17.638 1.00 1.00 N +ATOM 428 CA ASN 30 -17.459 15.963 -18.493 1.00 1.00 C +ATOM 429 C ASN 30 -15.965 15.678 -18.659 1.00 1.00 C +ATOM 430 O ASN 30 -15.274 16.379 -19.397 1.00 1.00 O +ATOM 435 H ASN 30 -18.289 15.256 -16.718 1.00 1.00 H +ATOM 436 HA ASN 30 -18.003 15.896 -19.435 1.00 1.00 H +ATOM 431 CB ASN 30 -17.609 17.354 -17.878 1.00 1.00 C +ATOM 432 CG ASN 30 -19.082 17.695 -17.641 1.00 1.00 C +ATOM 433 OD1 ASN 30 -19.563 17.743 -16.520 1.00 1.00 O +ATOM 434 ND2 ASN 30 -19.769 17.925 -18.756 1.00 1.00 N +ATOM 437 HB2 ASN 30 -17.066 17.401 -16.933 1.00 1.00 H +ATOM 438 HB3 ASN 30 -17.162 18.099 -18.537 1.00 1.00 H +ATOM 439 HD21 ASN 30 -19.314 17.869 -19.645 1.00 1.00 H +ATOM 440 HD22 ASN 30 -20.741 18.156 -18.706 1.00 1.00 H +ATOM 441 N GLY 31 -15.510 14.648 -17.961 1.00 1.00 N +ATOM 442 CA GLY 31 -14.110 14.262 -18.022 1.00 1.00 C +ATOM 443 C GLY 31 -13.699 13.492 -16.765 1.00 1.00 C +ATOM 444 O GLY 31 -13.969 13.931 -15.648 1.00 1.00 O +ATOM 445 H GLY 31 -16.079 14.083 -17.363 1.00 1.00 H +ATOM 446 HA2 GLY 31 -13.937 13.645 -18.904 1.00 1.00 H +ATOM 447 HA3 GLY 31 -13.488 15.151 -18.129 1.00 1.00 H +ATOM 448 N SER 32 -13.052 12.358 -16.990 1.00 1.00 N +ATOM 449 CA SER 32 -12.600 11.523 -15.890 1.00 1.00 C +ATOM 450 C SER 32 -11.255 10.881 -16.238 1.00 1.00 C +ATOM 451 O SER 32 -11.060 10.406 -17.355 1.00 1.00 O +ATOM 454 H SER 32 -12.836 12.008 -17.902 1.00 1.00 H +ATOM 455 HA SER 32 -12.494 12.198 -15.041 1.00 1.00 H +ATOM 452 CB SER 32 -13.633 10.444 -15.558 1.00 1.00 C +ATOM 453 OG SER 32 -13.869 10.345 -14.156 1.00 1.00 O +ATOM 456 HB2 SER 32 -14.568 10.668 -16.069 1.00 1.00 H +ATOM 457 HB3 SER 32 -13.285 9.481 -15.935 1.00 1.00 H +ATOM 458 HG SER 32 -13.267 9.654 -13.755 1.00 1.00 H +ATOM 459 N PHE 33 -10.361 10.890 -15.260 1.00 1.00 N +ATOM 460 CA PHE 33 -9.039 10.316 -15.448 1.00 1.00 C +ATOM 461 C PHE 33 -8.647 9.444 -14.255 1.00 1.00 C +ATOM 462 O PHE 33 -8.346 9.957 -13.177 1.00 1.00 O +ATOM 470 H PHE 33 -10.527 11.280 -14.353 1.00 1.00 H +ATOM 471 HA PHE 33 -9.080 9.702 -16.347 1.00 1.00 H +ATOM 463 CB PHE 33 -8.056 11.482 -15.559 1.00 1.00 C +ATOM 464 CG PHE 33 -8.596 12.680 -16.343 1.00 1.00 C +ATOM 465 CD1 PHE 33 -9.848 13.148 -16.091 1.00 1.00 C +ATOM 466 CD2 PHE 33 -7.825 13.276 -17.291 1.00 1.00 C +ATOM 467 CE1 PHE 33 -10.350 14.261 -16.819 1.00 1.00 C +ATOM 468 CE2 PHE 33 -8.326 14.387 -18.019 1.00 1.00 C +ATOM 469 CZ PHE 33 -9.578 14.856 -17.767 1.00 1.00 C +ATOM 472 HB2 PHE 33 -7.784 11.811 -14.555 1.00 1.00 H +ATOM 473 HB3 PHE 33 -7.142 11.129 -16.038 1.00 1.00 H +ATOM 474 HD1 PHE 33 -10.466 12.671 -15.331 1.00 1.00 H +ATOM 475 HD2 PHE 33 -6.823 12.900 -17.493 1.00 1.00 H +ATOM 476 HE1 PHE 33 -11.353 14.636 -16.617 1.00 1.00 H +ATOM 477 HE2 PHE 33 -7.708 14.865 -18.780 1.00 1.00 H +ATOM 478 HZ PHE 33 -9.963 15.709 -18.326 1.00 1.00 H +ATOM 479 N LEU 34 -8.660 8.139 -14.486 1.00 1.00 N +ATOM 480 CA LEU 34 -8.308 7.191 -13.443 1.00 1.00 C +ATOM 481 C LEU 34 -6.991 6.503 -13.809 1.00 1.00 C +ATOM 482 O LEU 34 -6.858 5.946 -14.898 1.00 1.00 O +ATOM 487 H LEU 34 -8.905 7.729 -15.365 1.00 1.00 H +ATOM 488 HA LEU 34 -8.158 7.757 -12.524 1.00 1.00 H +ATOM 483 CB LEU 34 -9.461 6.217 -13.192 1.00 1.00 C +ATOM 484 CG LEU 34 -9.456 4.939 -14.036 1.00 1.00 C +ATOM 485 CD1 LEU 34 -9.122 3.717 -13.177 1.00 1.00 C +ATOM 486 CD2 LEU 34 -10.780 4.770 -14.784 1.00 1.00 C +ATOM 489 HB2 LEU 34 -9.449 5.934 -12.140 1.00 1.00 H +ATOM 490 HB3 LEU 34 -10.399 6.742 -13.372 1.00 1.00 H +ATOM 491 HG LEU 34 -8.672 5.029 -14.787 1.00 1.00 H +ATOM 492 HD11 LEU 34 -8.927 4.036 -12.153 1.00 1.00 H +ATOM 493 HD12 LEU 34 -9.963 3.025 -13.189 1.00 1.00 H +ATOM 494 HD13 LEU 34 -8.238 3.222 -13.580 1.00 1.00 H +ATOM 495 HD21 LEU 34 -11.519 5.459 -14.374 1.00 1.00 H +ATOM 496 HD22 LEU 34 -10.629 4.985 -15.842 1.00 1.00 H +ATOM 497 HD23 LEU 34 -11.134 3.747 -14.667 1.00 1.00 H +ATOM 498 N VAL 35 -6.049 6.563 -12.877 1.00 1.00 N +ATOM 499 CA VAL 35 -4.748 5.955 -13.088 1.00 1.00 C +ATOM 500 C VAL 35 -4.899 4.431 -13.098 1.00 1.00 C +ATOM 501 O VAL 35 -5.735 3.882 -12.383 1.00 1.00 O +ATOM 505 H VAL 35 -6.166 7.018 -11.994 1.00 1.00 H +ATOM 506 HA VAL 35 -4.388 6.277 -14.064 1.00 1.00 H +ATOM 502 CB VAL 35 -3.760 6.450 -12.029 1.00 1.00 C +ATOM 503 CG1 VAL 35 -3.839 5.596 -10.763 1.00 1.00 C +ATOM 504 CG2 VAL 35 -2.335 6.481 -12.582 1.00 1.00 C +ATOM 507 HB VAL 35 -4.039 7.470 -11.764 1.00 1.00 H +ATOM 508 HG11 VAL 35 -4.832 5.155 -10.684 1.00 1.00 H +ATOM 509 HG12 VAL 35 -3.092 4.804 -10.813 1.00 1.00 H +ATOM 510 HG13 VAL 35 -3.648 6.221 -9.891 1.00 1.00 H +ATOM 511 HG21 VAL 35 -2.366 6.425 -13.671 1.00 1.00 H +ATOM 512 HG22 VAL 35 -1.847 7.408 -12.281 1.00 1.00 H +ATOM 513 HG23 VAL 35 -1.774 5.633 -12.191 1.00 1.00 H +ATOM 514 N ARG 36 -4.074 3.793 -13.915 1.00 1.00 N +ATOM 515 CA ARG 36 -4.105 2.343 -14.027 1.00 1.00 C +ATOM 516 C ARG 36 -2.708 1.764 -13.794 1.00 1.00 C +ATOM 517 O ARG 36 -1.726 2.502 -13.747 1.00 1.00 O +ATOM 525 H ARG 36 -3.395 4.246 -14.492 1.00 1.00 H +ATOM 526 HA ARG 36 -4.798 2.019 -13.252 1.00 1.00 H +ATOM 518 CB ARG 36 -4.607 1.909 -15.405 1.00 1.00 C +ATOM 519 CG ARG 36 -5.414 0.612 -15.310 1.00 1.00 C +ATOM 520 CD ARG 36 -5.051 -0.343 -16.449 1.00 1.00 C +ATOM 521 NE ARG 36 -5.233 -1.745 -16.010 1.00 1.00 N +ATOM 522 CZ ARG 36 -5.153 -2.804 -16.827 1.00 1.00 C +ATOM 523 NH1 ARG 36 -4.894 -2.628 -18.129 1.00 1.00 N +ATOM 524 NH2 ARG 36 -5.334 -4.041 -16.342 1.00 1.00 N +ATOM 527 HB2 ARG 36 -5.227 2.696 -15.835 1.00 1.00 H +ATOM 528 HB3 ARG 36 -3.761 1.766 -16.076 1.00 1.00 H +ATOM 529 HG2 ARG 36 -5.222 0.131 -14.351 1.00 1.00 H +ATOM 530 HG3 ARG 36 -6.479 0.838 -15.346 1.00 1.00 H +ATOM 531 HD2 ARG 36 -5.677 -0.141 -17.317 1.00 1.00 H +ATOM 532 HD3 ARG 36 -4.018 -0.182 -16.755 1.00 1.00 H +ATOM 533 HE ARG 36 -5.428 -1.913 -15.043 1.00 1.00 H +ATOM 534 HH11 ARG 36 -4.761 -1.706 -18.492 1.00 1.00 H +ATOM 535 HH12 ARG 36 -4.836 -3.418 -18.739 1.00 1.00 H +ATOM 536 HH21 ARG 36 -5.526 -4.173 -15.369 1.00 1.00 H +ATOM 537 HH22 ARG 36 -5.274 -4.832 -16.952 1.00 1.00 H +ATOM 538 N GLU 37 -2.665 0.447 -13.656 1.00 1.00 N +ATOM 539 CA GLU 37 -1.405 -0.241 -13.429 1.00 1.00 C +ATOM 540 C GLU 37 -1.172 -1.293 -14.517 1.00 1.00 C +ATOM 541 O GLU 37 -1.945 -2.241 -14.643 1.00 1.00 O +ATOM 547 H GLU 37 -3.469 -0.146 -13.696 1.00 1.00 H +ATOM 548 HA GLU 37 -0.638 0.532 -13.492 1.00 1.00 H +ATOM 542 CB GLU 37 -1.369 -0.873 -12.037 1.00 1.00 C +ATOM 543 CG GLU 37 -0.211 -0.309 -11.209 1.00 1.00 C +ATOM 544 CD GLU 37 0.656 -1.435 -10.641 1.00 1.00 C +ATOM 545 OE1 GLU 37 0.763 -2.472 -11.330 1.00 1.00 O +ATOM 546 OE2 GLU 37 1.193 -1.232 -9.531 1.00 1.00 O +ATOM 549 HB2 GLU 37 -2.311 -0.686 -11.523 1.00 1.00 H +ATOM 550 HB3 GLU 37 -1.263 -1.954 -12.127 1.00 1.00 H +ATOM 551 HG2 GLU 37 0.400 0.346 -11.831 1.00 1.00 H +ATOM 552 HG3 GLU 37 -0.604 0.299 -10.395 1.00 1.00 H +ATOM 553 N SER 38 -0.103 -1.090 -15.271 1.00 1.00 N +ATOM 554 CA SER 38 0.241 -2.010 -16.342 1.00 1.00 C +ATOM 555 C SER 38 0.785 -3.315 -15.757 1.00 1.00 C +ATOM 556 O SER 38 1.072 -3.392 -14.563 1.00 1.00 O +ATOM 559 H SER 38 0.521 -0.317 -15.162 1.00 1.00 H +ATOM 560 HA SER 38 -0.690 -2.190 -16.879 1.00 1.00 H +ATOM 557 CB SER 38 1.265 -1.388 -17.295 1.00 1.00 C +ATOM 558 OG SER 38 1.191 -1.952 -18.600 1.00 1.00 O +ATOM 561 HB2 SER 38 1.097 -0.312 -17.355 1.00 1.00 H +ATOM 562 HB3 SER 38 2.267 -1.533 -16.894 1.00 1.00 H +ATOM 563 HG SER 38 2.107 -2.190 -18.924 1.00 1.00 H +ATOM 564 N GLU 39 0.912 -4.308 -16.625 1.00 1.00 N +ATOM 565 CA GLU 39 1.415 -5.605 -16.210 1.00 1.00 C +ATOM 566 C GLU 39 2.588 -6.029 -17.098 1.00 1.00 C +ATOM 567 O GLU 39 3.552 -6.624 -16.618 1.00 1.00 O +ATOM 573 H GLU 39 0.676 -4.237 -17.594 1.00 1.00 H +ATOM 574 HA GLU 39 1.760 -5.467 -15.184 1.00 1.00 H +ATOM 568 CB GLU 39 0.305 -6.658 -16.229 1.00 1.00 C +ATOM 569 CG GLU 39 -0.607 -6.514 -15.009 1.00 1.00 C +ATOM 570 CD GLU 39 -2.012 -6.074 -15.424 1.00 1.00 C +ATOM 571 OE1 GLU 39 -2.418 -6.455 -16.543 1.00 1.00 O +ATOM 572 OE2 GLU 39 -2.649 -5.366 -14.614 1.00 1.00 O +ATOM 575 HB2 GLU 39 -0.282 -6.554 -17.141 1.00 1.00 H +ATOM 576 HB3 GLU 39 0.745 -7.656 -16.243 1.00 1.00 H +ATOM 577 HG2 GLU 39 -0.661 -7.464 -14.477 1.00 1.00 H +ATOM 578 HG3 GLU 39 -0.183 -5.785 -14.317 1.00 1.00 H +ATOM 579 N SER 40 2.467 -5.705 -18.376 1.00 1.00 N +ATOM 580 CA SER 40 3.504 -6.044 -19.336 1.00 1.00 C +ATOM 581 C SER 40 4.882 -5.928 -18.681 1.00 1.00 C +ATOM 582 O SER 40 5.778 -6.719 -18.968 1.00 1.00 O +ATOM 585 H SER 40 1.680 -5.220 -18.759 1.00 1.00 H +ATOM 586 HA SER 40 3.303 -7.075 -19.625 1.00 1.00 H +ATOM 583 CB SER 40 3.427 -5.145 -20.572 1.00 1.00 C +ATOM 584 OG SER 40 3.519 -5.891 -21.782 1.00 1.00 O +ATOM 587 HB2 SER 40 2.488 -4.590 -20.558 1.00 1.00 H +ATOM 588 HB3 SER 40 4.231 -4.410 -20.536 1.00 1.00 H +ATOM 589 HG SER 40 3.782 -6.835 -21.582 1.00 1.00 H +ATOM 590 N SER 41 5.006 -4.936 -17.811 1.00 1.00 N +ATOM 591 CA SER 41 6.260 -4.707 -17.113 1.00 1.00 C +ATOM 592 C SER 41 6.091 -5.012 -15.624 1.00 1.00 C +ATOM 593 O SER 41 5.052 -4.712 -15.037 1.00 1.00 O +ATOM 596 H SER 41 4.272 -4.296 -17.583 1.00 1.00 H +ATOM 597 HA SER 41 6.973 -5.394 -17.567 1.00 1.00 H +ATOM 594 CB SER 41 6.744 -3.269 -17.309 1.00 1.00 C +ATOM 595 OG SER 41 7.947 -3.210 -18.071 1.00 1.00 O +ATOM 598 HB2 SER 41 5.969 -2.690 -17.810 1.00 1.00 H +ATOM 599 HB3 SER 41 6.908 -2.806 -16.335 1.00 1.00 H +ATOM 600 HG SER 41 7.825 -3.689 -18.939 1.00 1.00 H +ATOM 601 N PRO 42 7.158 -5.621 -15.038 1.00 1.00 N +ATOM 602 CA PRO 42 7.139 -5.969 -13.627 1.00 1.00 C +ATOM 603 C PRO 42 7.322 -4.728 -12.752 1.00 1.00 C +ATOM 604 O PRO 42 8.263 -4.653 -11.965 1.00 1.00 O +ATOM 608 HA PRO 42 6.249 -6.351 -13.377 1.00 1.00 H +ATOM 605 CB PRO 42 8.255 -6.985 -13.458 1.00 1.00 C +ATOM 606 CG PRO 42 9.157 -6.821 -14.672 1.00 1.00 C +ATOM 607 CD PRO 42 8.405 -5.990 -15.699 1.00 1.00 C +ATOM 609 HB2 PRO 42 8.809 -6.808 -12.535 1.00 1.00 H +ATOM 610 HB3 PRO 42 7.858 -7.997 -13.402 1.00 1.00 H +ATOM 611 HG2 PRO 42 10.089 -6.331 -14.392 1.00 1.00 H +ATOM 612 HG3 PRO 42 9.420 -7.794 -15.087 1.00 1.00 H +ATOM 613 HD2 PRO 42 8.977 -5.108 -15.989 1.00 1.00 H +ATOM 614 HD3 PRO 42 8.217 -6.560 -16.608 1.00 1.00 H +ATOM 615 N GLY 43 6.406 -3.784 -12.920 1.00 1.00 N +ATOM 616 CA GLY 43 6.456 -2.549 -12.156 1.00 1.00 C +ATOM 617 C GLY 43 6.229 -1.336 -13.058 1.00 1.00 C +ATOM 618 O GLY 43 7.075 -0.446 -13.132 1.00 1.00 O +ATOM 619 H GLY 43 5.644 -3.853 -13.562 1.00 1.00 H +ATOM 620 HA2 GLY 43 5.698 -2.572 -11.373 1.00 1.00 H +ATOM 621 HA3 GLY 43 7.422 -2.463 -11.659 1.00 1.00 H +ATOM 622 N GLN 44 5.083 -1.339 -13.723 1.00 1.00 N +ATOM 623 CA GLN 44 4.735 -0.249 -14.620 1.00 1.00 C +ATOM 624 C GLN 44 3.297 0.210 -14.362 1.00 1.00 C +ATOM 625 O GLN 44 2.473 -0.562 -13.871 1.00 1.00 O +ATOM 631 H GLN 44 4.400 -2.068 -13.659 1.00 1.00 H +ATOM 632 HA GLN 44 5.428 0.556 -14.379 1.00 1.00 H +ATOM 626 CB GLN 44 4.927 -0.659 -16.082 1.00 1.00 C +ATOM 627 CG GLN 44 5.921 0.269 -16.783 1.00 1.00 C +ATOM 628 CD GLN 44 5.236 1.066 -17.896 1.00 1.00 C +ATOM 629 OE1 GLN 44 4.088 1.465 -17.791 1.00 1.00 O +ATOM 630 NE2 GLN 44 6.003 1.275 -18.961 1.00 1.00 N +ATOM 633 HB2 GLN 44 5.284 -1.687 -16.131 1.00 1.00 H +ATOM 634 HB3 GLN 44 3.968 -0.629 -16.600 1.00 1.00 H +ATOM 635 HG2 GLN 44 6.360 0.953 -16.058 1.00 1.00 H +ATOM 636 HG3 GLN 44 6.738 -0.319 -17.202 1.00 1.00 H +ATOM 637 HE21 GLN 44 6.936 0.920 -18.982 1.00 1.00 H +ATOM 638 HE22 GLN 44 5.644 1.787 -19.742 1.00 1.00 H +ATOM 639 N ARG 45 3.039 1.462 -14.708 1.00 1.00 N +ATOM 640 CA ARG 45 1.717 2.033 -14.520 1.00 1.00 C +ATOM 641 C ARG 45 1.152 2.514 -15.859 1.00 1.00 C +ATOM 642 O ARG 45 1.876 2.589 -16.851 1.00 1.00 O +ATOM 650 H ARG 45 3.714 2.082 -15.107 1.00 1.00 H +ATOM 651 HA ARG 45 1.117 1.218 -14.113 1.00 1.00 H +ATOM 643 CB ARG 45 1.755 3.206 -13.539 1.00 1.00 C +ATOM 644 CG ARG 45 1.264 2.780 -12.154 1.00 1.00 C +ATOM 645 CD ARG 45 2.279 1.860 -11.471 1.00 1.00 C +ATOM 646 NE ARG 45 1.829 1.542 -10.098 1.00 1.00 N +ATOM 647 CZ ARG 45 1.791 2.430 -9.094 1.00 1.00 C +ATOM 648 NH1 ARG 45 2.176 3.696 -9.306 1.00 1.00 N +ATOM 649 NH2 ARG 45 1.367 2.052 -7.880 1.00 1.00 N +ATOM 652 HB2 ARG 45 2.774 3.590 -13.466 1.00 1.00 H +ATOM 653 HB3 ARG 45 1.136 4.020 -13.915 1.00 1.00 H +ATOM 654 HG2 ARG 45 1.094 3.663 -11.538 1.00 1.00 H +ATOM 655 HG3 ARG 45 0.307 2.266 -12.247 1.00 1.00 H +ATOM 656 HD2 ARG 45 2.394 0.942 -12.047 1.00 1.00 H +ATOM 657 HD3 ARG 45 3.256 2.343 -11.439 1.00 1.00 H +ATOM 658 HE ARG 45 1.534 0.606 -9.906 1.00 1.00 H +ATOM 659 HH11 ARG 45 2.492 3.978 -10.212 1.00 1.00 H +ATOM 660 HH12 ARG 45 2.149 4.358 -8.558 1.00 1.00 H +ATOM 661 HH21 ARG 45 1.080 1.107 -7.723 1.00 1.00 H +ATOM 662 HH22 ARG 45 1.340 2.715 -7.131 1.00 1.00 H +ATOM 663 N SER 46 -0.135 2.830 -15.843 1.00 1.00 N +ATOM 664 CA SER 46 -0.804 3.303 -17.042 1.00 1.00 C +ATOM 665 C SER 46 -1.674 4.518 -16.712 1.00 1.00 C +ATOM 666 O SER 46 -1.709 4.968 -15.569 1.00 1.00 O +ATOM 669 H SER 46 -0.715 2.768 -15.031 1.00 1.00 H +ATOM 670 HA SER 46 -0.005 3.580 -17.730 1.00 1.00 H +ATOM 667 CB SER 46 -1.654 2.196 -17.671 1.00 1.00 C +ATOM 668 OG SER 46 -1.831 1.093 -16.788 1.00 1.00 O +ATOM 671 HB2 SER 46 -2.627 2.600 -17.948 1.00 1.00 H +ATOM 672 HB3 SER 46 -1.178 1.852 -18.590 1.00 1.00 H +ATOM 673 HG SER 46 -1.581 1.357 -15.856 1.00 1.00 H +ATOM 674 N ILE 47 -2.354 5.014 -17.736 1.00 1.00 N +ATOM 675 CA ILE 47 -3.221 6.168 -17.569 1.00 1.00 C +ATOM 676 C ILE 47 -4.569 5.888 -18.235 1.00 1.00 C +ATOM 677 O ILE 47 -4.618 5.368 -19.349 1.00 1.00 O +ATOM 682 H ILE 47 -2.319 4.642 -18.663 1.00 1.00 H +ATOM 683 HA ILE 47 -3.386 6.301 -16.499 1.00 1.00 H +ATOM 678 CB ILE 47 -2.532 7.434 -18.082 1.00 1.00 C +ATOM 679 CG1 ILE 47 -2.619 8.562 -17.050 1.00 1.00 C +ATOM 680 CG2 ILE 47 -3.100 7.855 -19.439 1.00 1.00 C +ATOM 681 CD1 ILE 47 -1.222 9.018 -16.620 1.00 1.00 C +ATOM 684 HB ILE 47 -1.476 7.212 -18.229 1.00 1.00 H +ATOM 685 HG12 ILE 47 -3.167 9.403 -17.471 1.00 1.00 H +ATOM 686 HG13 ILE 47 -3.178 8.220 -16.179 1.00 1.00 H +ATOM 687 HG21 ILE 47 -4.181 7.723 -19.438 1.00 1.00 H +ATOM 688 HG22 ILE 47 -2.861 8.902 -19.623 1.00 1.00 H +ATOM 689 HG23 ILE 47 -2.659 7.238 -20.223 1.00 1.00 H +ATOM 690 HD11 ILE 47 -0.495 8.728 -17.377 1.00 1.00 H +ATOM 691 HD12 ILE 47 -1.215 10.103 -16.506 1.00 1.00 H +ATOM 692 HD13 ILE 47 -0.965 8.550 -15.669 1.00 1.00 H +ATOM 693 N SER 48 -5.630 6.245 -17.526 1.00 1.00 N +ATOM 694 CA SER 48 -6.975 6.039 -18.035 1.00 1.00 C +ATOM 695 C SER 48 -7.753 7.356 -18.005 1.00 1.00 C +ATOM 696 O SER 48 -8.246 7.766 -16.956 1.00 1.00 O +ATOM 699 H SER 48 -5.581 6.668 -16.621 1.00 1.00 H +ATOM 700 HA SER 48 -6.845 5.694 -19.060 1.00 1.00 H +ATOM 697 CB SER 48 -7.712 4.969 -17.226 1.00 1.00 C +ATOM 698 OG SER 48 -8.253 3.948 -18.061 1.00 1.00 O +ATOM 701 HB2 SER 48 -7.025 4.523 -16.506 1.00 1.00 H +ATOM 702 HB3 SER 48 -8.514 5.434 -16.655 1.00 1.00 H +ATOM 703 HG SER 48 -8.860 4.352 -18.746 1.00 1.00 H +ATOM 704 N LEU 49 -7.840 7.982 -19.169 1.00 1.00 N +ATOM 705 CA LEU 49 -8.551 9.243 -19.291 1.00 1.00 C +ATOM 706 C LEU 49 -9.935 8.989 -19.886 1.00 1.00 C +ATOM 707 O LEU 49 -10.097 8.121 -20.743 1.00 1.00 O +ATOM 712 H LEU 49 -7.436 7.641 -20.019 1.00 1.00 H +ATOM 713 HA LEU 49 -8.673 9.646 -18.286 1.00 1.00 H +ATOM 708 CB LEU 49 -7.716 10.253 -20.083 1.00 1.00 C +ATOM 709 CG LEU 49 -6.215 9.969 -20.161 1.00 1.00 C +ATOM 710 CD1 LEU 49 -5.457 11.177 -20.713 1.00 1.00 C +ATOM 711 CD2 LEU 49 -5.671 9.522 -18.803 1.00 1.00 C +ATOM 714 HB2 LEU 49 -8.111 10.302 -21.097 1.00 1.00 H +ATOM 715 HB3 LEU 49 -7.858 11.239 -19.638 1.00 1.00 H +ATOM 716 HG LEU 49 -6.059 9.146 -20.858 1.00 1.00 H +ATOM 717 HD11 LEU 49 -5.977 12.093 -20.431 1.00 1.00 H +ATOM 718 HD12 LEU 49 -4.447 11.192 -20.304 1.00 1.00 H +ATOM 719 HD13 LEU 49 -5.406 11.110 -21.800 1.00 1.00 H +ATOM 720 HD21 LEU 49 -6.236 10.005 -18.008 1.00 1.00 H +ATOM 721 HD22 LEU 49 -5.766 8.439 -18.713 1.00 1.00 H +ATOM 722 HD23 LEU 49 -4.619 9.801 -18.724 1.00 1.00 H +ATOM 723 N ARG 50 -10.900 9.761 -19.409 1.00 1.00 N +ATOM 724 CA ARG 50 -12.268 9.630 -19.883 1.00 1.00 C +ATOM 725 C ARG 50 -12.673 10.868 -20.684 1.00 1.00 C +ATOM 726 O ARG 50 -12.437 11.996 -20.253 1.00 1.00 O +ATOM 734 H ARG 50 -10.761 10.465 -18.712 1.00 1.00 H +ATOM 735 HA ARG 50 -12.260 8.740 -20.512 1.00 1.00 H +ATOM 727 CB ARG 50 -13.241 9.445 -18.716 1.00 1.00 C +ATOM 728 CG ARG 50 -14.672 9.778 -19.139 1.00 1.00 C +ATOM 729 CD ARG 50 -15.168 8.804 -20.209 1.00 1.00 C +ATOM 730 NE ARG 50 -16.303 8.010 -19.686 1.00 1.00 N +ATOM 731 CZ ARG 50 -17.033 7.164 -20.425 1.00 1.00 C +ATOM 732 NH1 ARG 50 -16.752 6.998 -21.726 1.00 1.00 N +ATOM 733 NH2 ARG 50 -18.044 6.486 -19.867 1.00 1.00 N +ATOM 736 HB2 ARG 50 -13.193 8.418 -18.356 1.00 1.00 H +ATOM 737 HB3 ARG 50 -12.944 10.087 -17.886 1.00 1.00 H +ATOM 738 HG2 ARG 50 -15.331 9.735 -18.271 1.00 1.00 H +ATOM 739 HG3 ARG 50 -14.716 10.797 -19.521 1.00 1.00 H +ATOM 740 HD2 ARG 50 -15.479 9.354 -21.098 1.00 1.00 H +ATOM 741 HD3 ARG 50 -14.358 8.140 -20.513 1.00 1.00 H +ATOM 742 HE ARG 50 -16.539 8.111 -18.720 1.00 1.00 H +ATOM 743 HH11 ARG 50 -15.997 7.505 -22.144 1.00 1.00 H +ATOM 744 HH12 ARG 50 -17.297 6.367 -22.277 1.00 1.00 H +ATOM 745 HH21 ARG 50 -18.253 6.611 -18.896 1.00 1.00 H +ATOM 746 HH22 ARG 50 -18.588 5.855 -20.419 1.00 1.00 H +ATOM 747 N TYR 51 -13.275 10.617 -21.838 1.00 1.00 N +ATOM 748 CA TYR 51 -13.715 11.697 -22.704 1.00 1.00 C +ATOM 749 C TYR 51 -15.242 11.801 -22.719 1.00 1.00 C +ATOM 750 O TYR 51 -15.894 11.565 -21.704 1.00 1.00 O +ATOM 759 H TYR 51 -13.464 9.697 -22.181 1.00 1.00 H +ATOM 760 HA TYR 51 -13.299 12.628 -22.317 1.00 1.00 H +ATOM 751 CB TYR 51 -13.226 11.338 -24.107 1.00 1.00 C +ATOM 752 CG TYR 51 -12.342 12.409 -24.751 1.00 1.00 C +ATOM 753 CD1 TYR 51 -12.908 13.572 -25.233 1.00 1.00 C +ATOM 754 CD2 TYR 51 -10.980 12.211 -24.850 1.00 1.00 C +ATOM 755 CE1 TYR 51 -12.077 14.579 -25.839 1.00 1.00 C +ATOM 756 CE2 TYR 51 -10.148 13.220 -25.457 1.00 1.00 C +ATOM 757 CZ TYR 51 -10.737 14.353 -25.921 1.00 1.00 C +ATOM 758 OH TYR 51 -9.952 15.305 -26.493 1.00 1.00 O +ATOM 761 HB2 TYR 51 -12.668 10.402 -24.059 1.00 1.00 H +ATOM 762 HB3 TYR 51 -14.089 11.161 -24.748 1.00 1.00 H +ATOM 763 HD1 TYR 51 -13.984 13.728 -25.155 1.00 1.00 H +ATOM 764 HD2 TYR 51 -10.534 11.293 -24.470 1.00 1.00 H +ATOM 765 HE1 TYR 51 -12.509 15.502 -26.224 1.00 1.00 H +ATOM 766 HE2 TYR 51 -9.071 13.076 -25.540 1.00 1.00 H +ATOM 767 HH TYR 51 -10.457 16.165 -26.567 1.00 1.00 H +ATOM 768 N GLU 52 -15.767 12.154 -23.883 1.00 1.00 N +ATOM 769 CA GLU 52 -17.204 12.291 -24.046 1.00 1.00 C +ATOM 770 C GLU 52 -17.901 10.962 -23.747 1.00 1.00 C +ATOM 771 O GLU 52 -18.431 10.766 -22.654 1.00 1.00 O +ATOM 777 H GLU 52 -15.229 12.344 -24.704 1.00 1.00 H +ATOM 778 HA GLU 52 -17.508 13.041 -23.314 1.00 1.00 H +ATOM 772 CB GLU 52 -17.554 12.790 -25.449 1.00 1.00 C +ATOM 773 CG GLU 52 -16.581 12.228 -26.488 1.00 1.00 C +ATOM 774 CD GLU 52 -17.324 11.794 -27.753 1.00 1.00 C +ATOM 775 OE1 GLU 52 -18.242 12.539 -28.157 1.00 1.00 O +ATOM 776 OE2 GLU 52 -16.953 10.726 -28.289 1.00 1.00 O +ATOM 779 HB2 GLU 52 -18.572 12.495 -25.700 1.00 1.00 H +ATOM 780 HB3 GLU 52 -17.523 13.880 -25.469 1.00 1.00 H +ATOM 781 HG2 GLU 52 -15.836 12.983 -26.740 1.00 1.00 H +ATOM 782 HG3 GLU 52 -16.044 11.379 -26.066 1.00 1.00 H +ATOM 783 N GLY 53 -17.878 10.083 -24.738 1.00 1.00 N +ATOM 784 CA GLY 53 -18.501 8.778 -24.595 1.00 1.00 C +ATOM 785 C GLY 53 -17.514 7.660 -24.932 1.00 1.00 C +ATOM 786 O GLY 53 -17.886 6.662 -25.550 1.00 1.00 O +ATOM 787 H GLY 53 -17.445 10.250 -25.623 1.00 1.00 H +ATOM 788 HA2 GLY 53 -18.863 8.654 -23.575 1.00 1.00 H +ATOM 789 HA3 GLY 53 -19.369 8.712 -25.252 1.00 1.00 H +ATOM 790 N ARG 54 -16.274 7.862 -24.512 1.00 1.00 N +ATOM 791 CA ARG 54 -15.230 6.882 -24.762 1.00 1.00 C +ATOM 792 C ARG 54 -14.164 6.951 -23.666 1.00 1.00 C +ATOM 793 O ARG 54 -14.116 7.914 -22.901 1.00 1.00 O +ATOM 801 H ARG 54 -15.980 8.675 -24.011 1.00 1.00 H +ATOM 802 HA ARG 54 -15.742 5.920 -24.750 1.00 1.00 H +ATOM 794 CB ARG 54 -14.571 7.114 -26.122 1.00 1.00 C +ATOM 795 CG ARG 54 -14.519 5.819 -26.936 1.00 1.00 C +ATOM 796 CD ARG 54 -15.783 5.654 -27.782 1.00 1.00 C +ATOM 797 NE ARG 54 -16.047 4.218 -28.022 1.00 1.00 N +ATOM 798 CZ ARG 54 -16.774 3.441 -27.208 1.00 1.00 C +ATOM 799 NH1 ARG 54 -17.314 3.957 -26.095 1.00 1.00 N +ATOM 800 NH2 ARG 54 -16.960 2.147 -27.506 1.00 1.00 N +ATOM 803 HB2 ARG 54 -15.125 7.873 -26.674 1.00 1.00 H +ATOM 804 HB3 ARG 54 -13.560 7.499 -25.980 1.00 1.00 H +ATOM 805 HG2 ARG 54 -13.642 5.827 -27.582 1.00 1.00 H +ATOM 806 HG3 ARG 54 -14.413 4.967 -26.264 1.00 1.00 H +ATOM 807 HD2 ARG 54 -16.634 6.108 -27.274 1.00 1.00 H +ATOM 808 HD3 ARG 54 -15.664 6.175 -28.732 1.00 1.00 H +ATOM 809 HE ARG 54 -15.658 3.801 -28.845 1.00 1.00 H +ATOM 810 HH11 ARG 54 -17.174 4.921 -25.873 1.00 1.00 H +ATOM 811 HH12 ARG 54 -17.856 3.377 -25.487 1.00 1.00 H +ATOM 812 HH21 ARG 54 -16.557 1.762 -28.336 1.00 1.00 H +ATOM 813 HH22 ARG 54 -17.503 1.568 -26.898 1.00 1.00 H +ATOM 814 N VAL 55 -13.333 5.921 -23.626 1.00 1.00 N +ATOM 815 CA VAL 55 -12.270 5.853 -22.638 1.00 1.00 C +ATOM 816 C VAL 55 -10.949 5.529 -23.337 1.00 1.00 C +ATOM 817 O VAL 55 -10.935 4.843 -24.358 1.00 1.00 O +ATOM 821 H VAL 55 -13.379 5.142 -24.252 1.00 1.00 H +ATOM 822 HA VAL 55 -12.190 6.836 -22.173 1.00 1.00 H +ATOM 818 CB VAL 55 -12.633 4.842 -21.548 1.00 1.00 C +ATOM 819 CG1 VAL 55 -11.627 4.892 -20.398 1.00 1.00 C +ATOM 820 CG2 VAL 55 -14.058 5.071 -21.039 1.00 1.00 C +ATOM 823 HB VAL 55 -12.591 3.845 -21.988 1.00 1.00 H +ATOM 824 HG11 VAL 55 -10.913 5.697 -20.573 1.00 1.00 H +ATOM 825 HG12 VAL 55 -12.153 5.071 -19.460 1.00 1.00 H +ATOM 826 HG13 VAL 55 -11.095 3.941 -20.339 1.00 1.00 H +ATOM 827 HG21 VAL 55 -14.745 5.099 -21.886 1.00 1.00 H +ATOM 828 HG22 VAL 55 -14.339 4.259 -20.369 1.00 1.00 H +ATOM 829 HG23 VAL 55 -14.104 6.018 -20.503 1.00 1.00 H +ATOM 830 N TYR 56 -9.870 6.038 -22.761 1.00 1.00 N +ATOM 831 CA TYR 56 -8.547 5.813 -23.316 1.00 1.00 C +ATOM 832 C TYR 56 -7.622 5.166 -22.283 1.00 1.00 C +ATOM 833 O TYR 56 -7.529 5.633 -21.150 1.00 1.00 O +ATOM 842 H TYR 56 -9.891 6.595 -21.931 1.00 1.00 H +ATOM 843 HA TYR 56 -8.650 5.143 -24.170 1.00 1.00 H +ATOM 834 CB TYR 56 -8.001 7.194 -23.678 1.00 1.00 C +ATOM 835 CG TYR 56 -8.576 7.772 -24.973 1.00 1.00 C +ATOM 836 CD1 TYR 56 -8.588 7.008 -26.123 1.00 1.00 C +ATOM 837 CD2 TYR 56 -9.083 9.054 -24.991 1.00 1.00 C +ATOM 838 CE1 TYR 56 -9.128 7.551 -27.342 1.00 1.00 C +ATOM 839 CE2 TYR 56 -9.625 9.597 -26.209 1.00 1.00 C +ATOM 840 CZ TYR 56 -9.621 8.819 -27.325 1.00 1.00 C +ATOM 841 OH TYR 56 -10.133 9.333 -28.476 1.00 1.00 O +ATOM 844 HB2 TYR 56 -8.211 7.883 -22.860 1.00 1.00 H +ATOM 845 HB3 TYR 56 -6.916 7.133 -23.771 1.00 1.00 H +ATOM 846 HD1 TYR 56 -8.186 5.995 -26.109 1.00 1.00 H +ATOM 847 HD2 TYR 56 -9.074 9.657 -24.083 1.00 1.00 H +ATOM 848 HE1 TYR 56 -9.143 6.959 -28.258 1.00 1.00 H +ATOM 849 HE2 TYR 56 -10.030 10.609 -26.237 1.00 1.00 H +ATOM 850 HH TYR 56 -10.330 8.594 -29.121 1.00 1.00 H +ATOM 851 N HIS 57 -6.962 4.100 -22.712 1.00 1.00 N +ATOM 852 CA HIS 57 -6.047 3.384 -21.838 1.00 1.00 C +ATOM 853 C HIS 57 -4.634 3.439 -22.420 1.00 1.00 C +ATOM 854 O HIS 57 -4.240 2.563 -23.189 1.00 1.00 O +ATOM 861 H HIS 57 -7.044 3.726 -23.635 1.00 1.00 H +ATOM 862 HA HIS 57 -6.058 3.906 -20.881 1.00 1.00 H +ATOM 855 CB HIS 57 -6.535 1.954 -21.597 1.00 1.00 C +ATOM 856 CG HIS 57 -7.546 1.830 -20.482 1.00 1.00 C +ATOM 857 ND1 HIS 57 -8.910 1.776 -20.710 1.00 1.00 N +ATOM 858 CD2 HIS 57 -7.377 1.750 -19.131 1.00 1.00 C +ATOM 859 CE1 HIS 57 -9.525 1.668 -19.541 1.00 1.00 C +ATOM 860 NE2 HIS 57 -8.574 1.652 -18.565 1.00 1.00 N +ATOM 863 HB2 HIS 57 -6.974 1.571 -22.517 1.00 1.00 H +ATOM 864 HB3 HIS 57 -5.676 1.323 -21.367 1.00 1.00 H +ATOM 865 HD1 HIS 57 -9.355 1.812 -21.605 1.00 1.00 H +ATOM 866 HD2 HIS 57 -6.422 1.762 -18.606 1.00 1.00 H +ATOM 867 HE1 HIS 57 -10.603 1.603 -19.388 1.00 1.00 H +ATOM 868 N TYR 58 -3.908 4.477 -22.030 1.00 1.00 N +ATOM 869 CA TYR 58 -2.545 4.656 -22.504 1.00 1.00 C +ATOM 870 C TYR 58 -1.550 4.600 -21.343 1.00 1.00 C +ATOM 871 O TYR 58 -1.662 5.362 -20.386 1.00 1.00 O +ATOM 880 H TYR 58 -4.234 5.184 -21.405 1.00 1.00 H +ATOM 881 HA TYR 58 -2.323 3.852 -23.203 1.00 1.00 H +ATOM 872 CB TYR 58 -2.498 6.051 -23.132 1.00 1.00 C +ATOM 873 CG TYR 58 -2.438 6.043 -24.660 1.00 1.00 C +ATOM 874 CD1 TYR 58 -3.399 5.368 -25.384 1.00 1.00 C +ATOM 875 CD2 TYR 58 -1.424 6.712 -25.314 1.00 1.00 C +ATOM 876 CE1 TYR 58 -3.342 5.360 -26.823 1.00 1.00 C +ATOM 877 CE2 TYR 58 -1.367 6.704 -26.753 1.00 1.00 C +ATOM 878 CZ TYR 58 -2.330 6.029 -27.436 1.00 1.00 C +ATOM 879 OH TYR 58 -2.276 6.022 -28.796 1.00 1.00 O +ATOM 882 HB2 TYR 58 -3.380 6.611 -22.816 1.00 1.00 H +ATOM 883 HB3 TYR 58 -1.628 6.582 -22.747 1.00 1.00 H +ATOM 884 HD1 TYR 58 -4.199 4.839 -24.868 1.00 1.00 H +ATOM 885 HD2 TYR 58 -0.665 7.246 -24.742 1.00 1.00 H +ATOM 886 HE1 TYR 58 -4.095 4.830 -27.408 1.00 1.00 H +ATOM 887 HE2 TYR 58 -0.571 7.228 -27.283 1.00 1.00 H +ATOM 888 HH TYR 58 -3.073 6.495 -29.171 1.00 1.00 H +ATOM 889 N ARG 59 -0.597 3.686 -21.467 1.00 1.00 N +ATOM 890 CA ARG 59 0.417 3.518 -20.440 1.00 1.00 C +ATOM 891 C ARG 59 1.090 4.859 -20.136 1.00 1.00 C +ATOM 892 O ARG 59 0.913 5.828 -20.873 1.00 1.00 O +ATOM 900 H ARG 59 -0.513 3.069 -22.249 1.00 1.00 H +ATOM 901 HA ARG 59 -0.124 3.144 -19.572 1.00 1.00 H +ATOM 893 CB ARG 59 1.481 2.510 -20.878 1.00 1.00 C +ATOM 894 CG ARG 59 1.913 2.759 -22.324 1.00 1.00 C +ATOM 895 CD ARG 59 1.815 1.478 -23.154 1.00 1.00 C +ATOM 896 NE ARG 59 2.739 1.551 -24.309 1.00 1.00 N +ATOM 897 CZ ARG 59 2.487 2.237 -25.430 1.00 1.00 C +ATOM 898 NH1 ARG 59 1.339 2.915 -25.558 1.00 1.00 N +ATOM 899 NH2 ARG 59 3.386 2.246 -26.426 1.00 1.00 N +ATOM 902 HB2 ARG 59 2.346 2.579 -20.219 1.00 1.00 H +ATOM 903 HB3 ARG 59 1.089 1.496 -20.781 1.00 1.00 H +ATOM 904 HG2 ARG 59 1.285 3.533 -22.766 1.00 1.00 H +ATOM 905 HG3 ARG 59 2.938 3.130 -22.342 1.00 1.00 H +ATOM 906 HD2 ARG 59 2.059 0.614 -22.536 1.00 1.00 H +ATOM 907 HD3 ARG 59 0.793 1.339 -23.506 1.00 1.00 H +ATOM 908 HE ARG 59 3.606 1.056 -24.245 1.00 1.00 H +ATOM 909 HH11 ARG 59 0.669 2.907 -24.815 1.00 1.00 H +ATOM 910 HH12 ARG 59 1.150 3.428 -26.397 1.00 1.00 H +ATOM 911 HH21 ARG 59 4.243 1.742 -26.331 1.00 1.00 H +ATOM 912 HH22 ARG 59 3.197 2.760 -27.264 1.00 1.00 H +ATOM 913 N ILE 60 1.847 4.870 -19.049 1.00 1.00 N +ATOM 914 CA ILE 60 2.547 6.076 -18.638 1.00 1.00 C +ATOM 915 C ILE 60 3.679 6.365 -19.625 1.00 1.00 C +ATOM 916 O ILE 60 3.439 6.521 -20.821 1.00 1.00 O +ATOM 921 H ILE 60 1.985 4.078 -18.455 1.00 1.00 H +ATOM 922 HA ILE 60 1.834 6.898 -18.679 1.00 1.00 H +ATOM 917 CB ILE 60 3.013 5.955 -17.186 1.00 1.00 C +ATOM 918 CG1 ILE 60 1.870 5.494 -16.278 1.00 1.00 C +ATOM 919 CG2 ILE 60 3.638 7.264 -16.699 1.00 1.00 C +ATOM 920 CD1 ILE 60 1.015 6.681 -15.829 1.00 1.00 C +ATOM 923 HB ILE 60 3.789 5.190 -17.138 1.00 1.00 H +ATOM 924 HG12 ILE 60 1.247 4.774 -16.810 1.00 1.00 H +ATOM 925 HG13 ILE 60 2.276 4.983 -15.406 1.00 1.00 H +ATOM 926 HG21 ILE 60 3.551 8.020 -17.480 1.00 1.00 H +ATOM 927 HG22 ILE 60 3.119 7.605 -15.804 1.00 1.00 H +ATOM 928 HG23 ILE 60 4.691 7.100 -16.469 1.00 1.00 H +ATOM 929 HD11 ILE 60 1.008 7.440 -16.610 1.00 1.00 H +ATOM 930 HD12 ILE 60 -0.004 6.344 -15.639 1.00 1.00 H +ATOM 931 HD13 ILE 60 1.434 7.104 -14.915 1.00 1.00 H +ATOM 932 N ASN 61 4.889 6.426 -19.088 1.00 1.00 N +ATOM 933 CA ASN 61 6.058 6.692 -19.907 1.00 1.00 C +ATOM 934 C ASN 61 7.251 7.002 -19.000 1.00 1.00 C +ATOM 935 O ASN 61 7.215 7.956 -18.224 1.00 1.00 O +ATOM 940 H ASN 61 5.075 6.296 -18.115 1.00 1.00 H +ATOM 941 HA ASN 61 6.207 5.790 -20.499 1.00 1.00 H +ATOM 936 CB ASN 61 5.830 7.902 -20.815 1.00 1.00 C +ATOM 937 CG ASN 61 7.106 8.262 -21.581 1.00 1.00 C +ATOM 938 OD1 ASN 61 8.208 7.903 -21.206 1.00 1.00 O +ATOM 939 ND2 ASN 61 6.893 8.990 -22.674 1.00 1.00 N +ATOM 942 HB2 ASN 61 5.026 7.686 -21.520 1.00 1.00 H +ATOM 943 HB3 ASN 61 5.509 8.756 -20.217 1.00 1.00 H +ATOM 944 HD21 ASN 61 5.961 9.252 -22.928 1.00 1.00 H +ATOM 945 HD22 ASN 61 7.664 9.275 -23.243 1.00 1.00 H +ATOM 946 N THR 62 8.280 6.178 -19.128 1.00 1.00 N +ATOM 947 CA THR 62 9.482 6.350 -18.329 1.00 1.00 C +ATOM 948 C THR 62 10.654 6.780 -19.215 1.00 1.00 C +ATOM 949 O THR 62 10.759 6.350 -20.363 1.00 1.00 O +ATOM 953 H THR 62 8.302 5.405 -19.763 1.00 1.00 H +ATOM 954 HA THR 62 9.308 7.156 -17.617 1.00 1.00 H +ATOM 950 CB THR 62 9.738 5.046 -17.572 1.00 1.00 C +ATOM 951 OG1 THR 62 8.475 4.723 -16.998 1.00 1.00 O +ATOM 952 CG2 THR 62 10.658 5.241 -16.364 1.00 1.00 C +ATOM 955 HB THR 62 10.131 4.279 -18.241 1.00 1.00 H +ATOM 956 HG1 THR 62 7.922 5.552 -16.900 1.00 1.00 H +ATOM 957 HG21 THR 62 10.393 6.166 -15.851 1.00 1.00 H +ATOM 958 HG22 THR 62 10.543 4.399 -15.682 1.00 1.00 H +ATOM 959 HG23 THR 62 11.693 5.297 -16.701 1.00 1.00 H +ATOM 960 N ALA 63 11.505 7.622 -18.647 1.00 1.00 N +ATOM 961 CA ALA 63 12.665 8.114 -19.371 1.00 1.00 C +ATOM 962 C ALA 63 13.800 7.094 -19.260 1.00 1.00 C +ATOM 963 O ALA 63 14.919 7.443 -18.884 1.00 1.00 O +ATOM 965 H ALA 63 11.413 7.967 -17.713 1.00 1.00 H +ATOM 966 HA ALA 63 12.383 8.219 -20.419 1.00 1.00 H +ATOM 964 CB ALA 63 13.061 9.488 -18.827 1.00 1.00 C +ATOM 967 HB1 ALA 63 12.190 10.144 -18.832 1.00 1.00 H +ATOM 968 HB2 ALA 63 13.431 9.383 -17.808 1.00 1.00 H +ATOM 969 HB3 ALA 63 13.843 9.916 -19.455 1.00 1.00 H +ATOM 970 N SER 64 13.473 5.854 -19.593 1.00 1.00 N +ATOM 971 CA SER 64 14.453 4.781 -19.535 1.00 1.00 C +ATOM 972 C SER 64 15.376 4.980 -18.333 1.00 1.00 C +ATOM 973 O SER 64 16.554 4.627 -18.386 1.00 1.00 O +ATOM 976 H SER 64 12.562 5.579 -19.897 1.00 1.00 H +ATOM 977 HA SER 64 13.870 3.866 -19.423 1.00 1.00 H +ATOM 974 CB SER 64 15.268 4.710 -20.828 1.00 1.00 C +ATOM 975 OG SER 64 16.200 5.784 -20.930 1.00 1.00 O +ATOM 978 HB2 SER 64 15.803 3.761 -20.867 1.00 1.00 H +ATOM 979 HB3 SER 64 14.595 4.732 -21.684 1.00 1.00 H +ATOM 980 HG SER 64 16.122 6.382 -20.132 1.00 1.00 H +ATOM 981 N ASP 65 14.810 5.546 -17.278 1.00 1.00 N +ATOM 982 CA ASP 65 15.569 5.795 -16.064 1.00 1.00 C +ATOM 983 C ASP 65 14.707 5.447 -14.849 1.00 1.00 C +ATOM 984 O ASP 65 15.104 4.632 -14.017 1.00 1.00 O +ATOM 989 H ASP 65 13.852 5.831 -17.243 1.00 1.00 H +ATOM 990 HA ASP 65 16.453 5.165 -16.144 1.00 1.00 H +ATOM 985 CB ASP 65 15.964 7.270 -15.956 1.00 1.00 C +ATOM 986 CG ASP 65 16.896 7.605 -14.790 1.00 1.00 C +ATOM 987 OD1 ASP 65 16.359 7.860 -13.690 1.00 1.00 O +ATOM 988 OD2 ASP 65 18.123 7.601 -15.025 1.00 1.00 O +ATOM 991 HB2 ASP 65 16.447 7.570 -16.886 1.00 1.00 H +ATOM 992 HB3 ASP 65 15.057 7.868 -15.860 1.00 1.00 H +ATOM 993 N GLY 66 13.546 6.081 -14.785 1.00 1.00 N +ATOM 994 CA GLY 66 12.626 5.847 -13.684 1.00 1.00 C +ATOM 995 C GLY 66 11.482 6.862 -13.700 1.00 1.00 C +ATOM 996 O GLY 66 10.311 6.486 -13.692 1.00 1.00 O +ATOM 997 H GLY 66 13.230 6.742 -15.466 1.00 1.00 H +ATOM 998 HA2 GLY 66 12.221 4.838 -13.752 1.00 1.00 H +ATOM 999 HA3 GLY 66 13.162 5.912 -12.737 1.00 1.00 H +ATOM 1000 N LYS 67 11.862 8.132 -13.723 1.00 1.00 N +ATOM 1001 CA LYS 67 10.883 9.207 -13.741 1.00 1.00 C +ATOM 1002 C LYS 67 9.820 8.904 -14.798 1.00 1.00 C +ATOM 1003 O LYS 67 10.118 8.309 -15.832 1.00 1.00 O +ATOM 1009 H LYS 67 12.816 8.431 -13.730 1.00 1.00 H +ATOM 1010 HA LYS 67 10.403 9.226 -12.762 1.00 1.00 H +ATOM 1004 CB LYS 67 11.573 10.558 -13.932 1.00 1.00 C +ATOM 1005 CG LYS 67 12.810 10.419 -14.821 1.00 1.00 C +ATOM 1006 CD LYS 67 14.089 10.394 -13.981 1.00 1.00 C +ATOM 1007 CE LYS 67 14.823 11.735 -14.057 1.00 1.00 C +ATOM 1008 NZ LYS 67 15.462 11.903 -15.381 1.00 1.00 N +ATOM 1011 HB2 LYS 67 10.876 11.266 -14.379 1.00 1.00 H +ATOM 1012 HB3 LYS 67 11.860 10.964 -12.962 1.00 1.00 H +ATOM 1013 HG2 LYS 67 12.740 9.506 -15.411 1.00 1.00 H +ATOM 1014 HG3 LYS 67 12.852 11.251 -15.526 1.00 1.00 H +ATOM 1015 HD2 LYS 67 13.843 10.168 -12.944 1.00 1.00 H +ATOM 1016 HD3 LYS 67 14.745 9.598 -14.333 1.00 1.00 H +ATOM 1017 HE2 LYS 67 14.121 12.550 -13.879 1.00 1.00 H +ATOM 1018 HE3 LYS 67 15.577 11.787 -13.273 1.00 1.00 H +ATOM 1019 HZ1 LYS 67 14.782 11.757 -16.100 1.00 1.00 H +ATOM 1020 HZ2 LYS 67 15.834 12.827 -15.457 1.00 1.00 H +ATOM 1021 HZ3 LYS 67 16.200 11.236 -15.481 1.00 1.00 H +ATOM 1022 N LEU 68 8.600 9.327 -14.502 1.00 1.00 N +ATOM 1023 CA LEU 68 7.489 9.110 -15.414 1.00 1.00 C +ATOM 1024 C LEU 68 7.168 10.417 -16.142 1.00 1.00 C +ATOM 1025 O LEU 68 6.671 11.364 -15.534 1.00 1.00 O +ATOM 1030 H LEU 68 8.365 9.811 -13.659 1.00 1.00 H +ATOM 1031 HA LEU 68 7.813 8.373 -16.151 1.00 1.00 H +ATOM 1026 CB LEU 68 6.294 8.510 -14.671 1.00 1.00 C +ATOM 1027 CG LEU 68 6.469 7.076 -14.164 1.00 1.00 C +ATOM 1028 CD1 LEU 68 7.483 7.019 -13.019 1.00 1.00 C +ATOM 1029 CD2 LEU 68 5.124 6.466 -13.769 1.00 1.00 C +ATOM 1032 HB2 LEU 68 6.063 9.149 -13.819 1.00 1.00 H +ATOM 1033 HB3 LEU 68 5.429 8.536 -15.333 1.00 1.00 H +ATOM 1034 HG LEU 68 6.871 6.473 -14.979 1.00 1.00 H +ATOM 1035 HD11 LEU 68 8.432 7.443 -13.351 1.00 1.00 H +ATOM 1036 HD12 LEU 68 7.106 7.593 -12.172 1.00 1.00 H +ATOM 1037 HD13 LEU 68 7.634 5.984 -12.718 1.00 1.00 H +ATOM 1038 HD21 LEU 68 4.637 7.104 -13.033 1.00 1.00 H +ATOM 1039 HD22 LEU 68 4.489 6.381 -14.652 1.00 1.00 H +ATOM 1040 HD23 LEU 68 5.285 5.475 -13.343 1.00 1.00 H +ATOM 1041 N TYR 69 7.466 10.427 -17.433 1.00 1.00 N +ATOM 1042 CA TYR 69 7.215 11.602 -18.249 1.00 1.00 C +ATOM 1043 C TYR 69 6.376 11.247 -19.478 1.00 1.00 C +ATOM 1044 O TYR 69 6.794 10.438 -20.308 1.00 1.00 O +ATOM 1053 H TYR 69 7.870 9.652 -17.919 1.00 1.00 H +ATOM 1054 HA TYR 69 6.669 12.323 -17.642 1.00 1.00 H +ATOM 1045 CB TYR 69 8.588 12.098 -18.709 1.00 1.00 C +ATOM 1046 CG TYR 69 9.116 11.392 -19.959 1.00 1.00 C +ATOM 1047 CD1 TYR 69 9.652 10.125 -19.863 1.00 1.00 C +ATOM 1048 CD2 TYR 69 9.058 12.026 -21.184 1.00 1.00 C +ATOM 1049 CE1 TYR 69 10.151 9.462 -21.041 1.00 1.00 C +ATOM 1050 CE2 TYR 69 9.556 11.362 -22.362 1.00 1.00 C +ATOM 1051 CZ TYR 69 10.077 10.114 -22.232 1.00 1.00 C +ATOM 1052 OH TYR 69 10.547 9.487 -23.343 1.00 1.00 O +ATOM 1055 HB2 TYR 69 8.530 13.167 -18.905 1.00 1.00 H +ATOM 1056 HB3 TYR 69 9.302 11.959 -17.897 1.00 1.00 H +ATOM 1057 HD1 TYR 69 9.699 9.625 -18.895 1.00 1.00 H +ATOM 1058 HD2 TYR 69 8.636 13.027 -21.260 1.00 1.00 H +ATOM 1059 HE1 TYR 69 10.576 8.461 -20.979 1.00 1.00 H +ATOM 1060 HE2 TYR 69 9.516 11.851 -23.335 1.00 1.00 H +ATOM 1061 HH TYR 69 10.578 10.129 -24.110 1.00 1.00 H +ATOM 1062 N VAL 70 5.208 11.868 -19.558 1.00 1.00 N +ATOM 1063 CA VAL 70 4.309 11.627 -20.673 1.00 1.00 C +ATOM 1064 C VAL 70 4.813 12.382 -21.904 1.00 1.00 C +ATOM 1065 O VAL 70 4.588 11.955 -23.035 1.00 1.00 O +ATOM 1069 H VAL 70 4.877 12.523 -18.881 1.00 1.00 H +ATOM 1070 HA VAL 70 4.325 10.557 -20.885 1.00 1.00 H +ATOM 1066 CB VAL 70 2.878 12.008 -20.282 1.00 1.00 C +ATOM 1067 CG1 VAL 70 1.879 11.549 -21.346 1.00 1.00 C +ATOM 1068 CG2 VAL 70 2.516 11.440 -18.908 1.00 1.00 C +ATOM 1071 HB VAL 70 2.827 13.095 -20.220 1.00 1.00 H +ATOM 1072 HG11 VAL 70 2.320 11.672 -22.336 1.00 1.00 H +ATOM 1073 HG12 VAL 70 1.633 10.500 -21.186 1.00 1.00 H +ATOM 1074 HG13 VAL 70 0.972 12.150 -21.275 1.00 1.00 H +ATOM 1075 HG21 VAL 70 3.416 11.060 -18.424 1.00 1.00 H +ATOM 1076 HG22 VAL 70 2.077 12.227 -18.295 1.00 1.00 H +ATOM 1077 HG23 VAL 70 1.798 10.629 -19.028 1.00 1.00 H +ATOM 1078 N SER 71 5.484 13.494 -21.642 1.00 1.00 N +ATOM 1079 CA SER 71 6.023 14.313 -22.713 1.00 1.00 C +ATOM 1080 C SER 71 7.553 14.340 -22.636 1.00 1.00 C +ATOM 1081 O SER 71 8.224 13.557 -23.306 1.00 1.00 O +ATOM 1084 H SER 71 5.664 13.835 -20.718 1.00 1.00 H +ATOM 1085 HA SER 71 5.696 13.833 -23.636 1.00 1.00 H +ATOM 1082 CB SER 71 5.465 15.737 -22.653 1.00 1.00 C +ATOM 1083 OG SER 71 5.971 16.554 -23.706 1.00 1.00 O +ATOM 1086 HB2 SER 71 4.377 15.701 -22.711 1.00 1.00 H +ATOM 1087 HB3 SER 71 5.718 16.185 -21.693 1.00 1.00 H +ATOM 1088 HG SER 71 5.820 17.518 -23.492 1.00 1.00 H +ATOM 1089 N SER 72 8.055 15.247 -21.812 1.00 1.00 N +ATOM 1090 CA SER 72 9.491 15.385 -21.637 1.00 1.00 C +ATOM 1091 C SER 72 9.794 16.557 -20.703 1.00 1.00 C +ATOM 1092 O SER 72 10.546 16.411 -19.741 1.00 1.00 O +ATOM 1095 H SER 72 7.501 15.878 -21.270 1.00 1.00 H +ATOM 1096 HA SER 72 9.820 14.446 -21.191 1.00 1.00 H +ATOM 1093 CB SER 72 10.193 15.582 -22.982 1.00 1.00 C +ATOM 1094 OG SER 72 11.076 14.505 -23.287 1.00 1.00 O +ATOM 1097 HB2 SER 72 9.445 15.672 -23.771 1.00 1.00 H +ATOM 1098 HB3 SER 72 10.753 16.516 -22.966 1.00 1.00 H +ATOM 1099 HG SER 72 12.021 14.777 -23.107 1.00 1.00 H +ATOM 1100 N GLU 73 9.192 17.695 -21.019 1.00 1.00 N +ATOM 1101 CA GLU 73 9.389 18.892 -20.220 1.00 1.00 C +ATOM 1102 C GLU 73 8.522 18.838 -18.960 1.00 1.00 C +ATOM 1103 O GLU 73 8.560 19.752 -18.137 1.00 1.00 O +ATOM 1109 H GLU 73 8.582 17.805 -21.803 1.00 1.00 H +ATOM 1110 HA GLU 73 10.444 18.887 -19.944 1.00 1.00 H +ATOM 1104 CB GLU 73 9.091 20.152 -21.037 1.00 1.00 C +ATOM 1105 CG GLU 73 7.881 20.898 -20.471 1.00 1.00 C +ATOM 1106 CD GLU 73 7.385 21.961 -21.454 1.00 1.00 C +ATOM 1107 OE1 GLU 73 8.224 22.792 -21.862 1.00 1.00 O +ATOM 1108 OE2 GLU 73 6.178 21.918 -21.776 1.00 1.00 O +ATOM 1111 HB2 GLU 73 9.962 20.807 -21.031 1.00 1.00 H +ATOM 1112 HB3 GLU 73 8.903 19.879 -22.075 1.00 1.00 H +ATOM 1113 HG2 GLU 73 7.080 20.190 -20.261 1.00 1.00 H +ATOM 1114 HG3 GLU 73 8.148 21.368 -19.526 1.00 1.00 H +ATOM 1115 N SER 74 7.764 17.758 -18.849 1.00 1.00 N +ATOM 1116 CA SER 74 6.889 17.573 -17.704 1.00 1.00 C +ATOM 1117 C SER 74 7.071 16.166 -17.129 1.00 1.00 C +ATOM 1118 O SER 74 6.161 15.341 -17.200 1.00 1.00 O +ATOM 1121 H SER 74 7.739 17.019 -19.522 1.00 1.00 H +ATOM 1122 HA SER 74 7.200 18.324 -16.979 1.00 1.00 H +ATOM 1119 CB SER 74 5.426 17.807 -18.084 1.00 1.00 C +ATOM 1120 OG SER 74 5.272 18.923 -18.955 1.00 1.00 O +ATOM 1123 HB2 SER 74 5.029 16.913 -18.567 1.00 1.00 H +ATOM 1124 HB3 SER 74 4.838 17.967 -17.181 1.00 1.00 H +ATOM 1125 HG SER 74 5.657 19.744 -18.531 1.00 1.00 H +ATOM 1126 N ARG 75 8.250 15.936 -16.573 1.00 1.00 N +ATOM 1127 CA ARG 75 8.563 14.644 -15.986 1.00 1.00 C +ATOM 1128 C ARG 75 8.119 14.604 -14.522 1.00 1.00 C +ATOM 1129 O ARG 75 8.158 15.620 -13.831 1.00 1.00 O +ATOM 1137 H ARG 75 8.985 16.613 -16.518 1.00 1.00 H +ATOM 1138 HA ARG 75 8.004 13.924 -16.585 1.00 1.00 H +ATOM 1130 CB ARG 75 10.062 14.350 -16.066 1.00 1.00 C +ATOM 1131 CG ARG 75 10.777 15.381 -16.940 1.00 1.00 C +ATOM 1132 CD ARG 75 12.089 14.819 -17.491 1.00 1.00 C +ATOM 1133 NE ARG 75 12.859 15.892 -18.159 1.00 1.00 N +ATOM 1134 CZ ARG 75 14.190 15.873 -18.317 1.00 1.00 C +ATOM 1135 NH1 ARG 75 14.905 14.838 -17.858 1.00 1.00 N +ATOM 1136 NH2 ARG 75 14.805 16.891 -18.935 1.00 1.00 N +ATOM 1139 HB2 ARG 75 10.492 14.358 -15.065 1.00 1.00 H +ATOM 1140 HB3 ARG 75 10.219 13.351 -16.473 1.00 1.00 H +ATOM 1141 HG2 ARG 75 10.128 15.675 -17.767 1.00 1.00 H +ATOM 1142 HG3 ARG 75 10.978 16.280 -16.358 1.00 1.00 H +ATOM 1143 HD2 ARG 75 12.676 14.388 -16.681 1.00 1.00 H +ATOM 1144 HD3 ARG 75 11.881 14.016 -18.197 1.00 1.00 H +ATOM 1145 HE ARG 75 12.356 16.680 -18.513 1.00 1.00 H +ATOM 1146 HH11 ARG 75 14.446 14.078 -17.396 1.00 1.00 H +ATOM 1147 HH12 ARG 75 15.898 14.825 -17.976 1.00 1.00 H +ATOM 1148 HH21 ARG 75 14.271 17.665 -19.277 1.00 1.00 H +ATOM 1149 HH22 ARG 75 15.798 16.879 -19.054 1.00 1.00 H +ATOM 1150 N PHE 76 7.708 13.419 -14.094 1.00 1.00 N +ATOM 1151 CA PHE 76 7.256 13.234 -12.725 1.00 1.00 C +ATOM 1152 C PHE 76 7.812 11.936 -12.136 1.00 1.00 C +ATOM 1153 O PHE 76 8.344 11.098 -12.863 1.00 1.00 O +ATOM 1161 H PHE 76 7.678 12.598 -14.663 1.00 1.00 H +ATOM 1162 HA PHE 76 7.626 14.080 -12.145 1.00 1.00 H +ATOM 1154 CB PHE 76 5.729 13.151 -12.764 1.00 1.00 C +ATOM 1155 CG PHE 76 5.069 14.233 -13.621 1.00 1.00 C +ATOM 1156 CD1 PHE 76 4.868 15.478 -13.110 1.00 1.00 C +ATOM 1157 CD2 PHE 76 4.683 13.950 -14.895 1.00 1.00 C +ATOM 1158 CE1 PHE 76 4.255 16.482 -13.906 1.00 1.00 C +ATOM 1159 CE2 PHE 76 4.070 14.954 -15.690 1.00 1.00 C +ATOM 1160 CZ PHE 76 3.869 16.199 -15.179 1.00 1.00 C +ATOM 1163 HB2 PHE 76 5.438 12.172 -13.145 1.00 1.00 H +ATOM 1164 HB3 PHE 76 5.346 13.224 -11.746 1.00 1.00 H +ATOM 1165 HD1 PHE 76 5.177 15.704 -12.090 1.00 1.00 H +ATOM 1166 HD2 PHE 76 4.844 12.953 -15.304 1.00 1.00 H +ATOM 1167 HE1 PHE 76 4.094 17.478 -13.496 1.00 1.00 H +ATOM 1168 HE2 PHE 76 3.761 14.727 -16.711 1.00 1.00 H +ATOM 1169 HZ PHE 76 3.398 16.969 -15.790 1.00 1.00 H +ATOM 1170 N ASN 77 7.667 11.808 -10.826 1.00 1.00 N +ATOM 1171 CA ASN 77 8.147 10.626 -10.131 1.00 1.00 C +ATOM 1172 C ASN 77 6.954 9.763 -9.719 1.00 1.00 C +ATOM 1173 O ASN 77 7.047 8.536 -9.699 1.00 1.00 O +ATOM 1178 H ASN 77 7.233 12.494 -10.242 1.00 1.00 H +ATOM 1179 HA ASN 77 8.801 10.122 -10.843 1.00 1.00 H +ATOM 1174 CB ASN 77 8.916 11.006 -8.865 1.00 1.00 C +ATOM 1175 CG ASN 77 10.394 11.257 -9.175 1.00 1.00 C +ATOM 1176 OD1 ASN 77 11.040 10.509 -9.892 1.00 1.00 O +ATOM 1177 ND2 ASN 77 10.889 12.347 -8.598 1.00 1.00 N +ATOM 1180 HB2 ASN 77 8.478 11.900 -8.422 1.00 1.00 H +ATOM 1181 HB3 ASN 77 8.828 10.207 -8.127 1.00 1.00 H +ATOM 1182 HD21 ASN 77 10.306 12.918 -8.022 1.00 1.00 H +ATOM 1183 HD22 ASN 77 11.848 12.597 -8.741 1.00 1.00 H +ATOM 1184 N THR 78 5.858 10.438 -9.399 1.00 1.00 N +ATOM 1185 CA THR 78 4.648 9.747 -8.986 1.00 1.00 C +ATOM 1186 C THR 78 3.487 10.106 -9.916 1.00 1.00 C +ATOM 1187 O THR 78 3.457 11.198 -10.484 1.00 1.00 O +ATOM 1191 H THR 78 5.790 11.434 -9.417 1.00 1.00 H +ATOM 1192 HA THR 78 4.814 8.674 -9.084 1.00 1.00 H +ATOM 1188 CB THR 78 4.383 10.092 -7.520 1.00 1.00 C +ATOM 1189 OG1 THR 78 4.656 11.487 -7.437 1.00 1.00 O +ATOM 1190 CG2 THR 78 5.402 9.455 -6.574 1.00 1.00 C +ATOM 1193 HB THR 78 3.365 9.823 -7.235 1.00 1.00 H +ATOM 1194 HG1 THR 78 4.031 11.996 -8.029 1.00 1.00 H +ATOM 1195 HG21 THR 78 6.103 8.849 -7.150 1.00 1.00 H +ATOM 1196 HG22 THR 78 5.948 10.237 -6.047 1.00 1.00 H +ATOM 1197 HG23 THR 78 4.884 8.823 -5.853 1.00 1.00 H +ATOM 1198 N LEU 79 2.559 9.169 -10.042 1.00 1.00 N +ATOM 1199 CA LEU 79 1.399 9.375 -10.891 1.00 1.00 C +ATOM 1200 C LEU 79 0.731 10.701 -10.525 1.00 1.00 C +ATOM 1201 O LEU 79 0.467 11.529 -11.394 1.00 1.00 O +ATOM 1206 H LEU 79 2.591 8.286 -9.575 1.00 1.00 H +ATOM 1207 HA LEU 79 1.754 9.440 -11.919 1.00 1.00 H +ATOM 1202 CB LEU 79 0.458 8.171 -10.813 1.00 1.00 C +ATOM 1203 CG LEU 79 0.123 7.671 -9.407 1.00 1.00 C +ATOM 1204 CD1 LEU 79 -1.360 7.882 -9.090 1.00 1.00 C +ATOM 1205 CD2 LEU 79 0.544 6.211 -9.228 1.00 1.00 C +ATOM 1208 HB2 LEU 79 -0.473 8.429 -11.318 1.00 1.00 H +ATOM 1209 HB3 LEU 79 0.906 7.348 -11.373 1.00 1.00 H +ATOM 1210 HG LEU 79 0.692 8.262 -8.690 1.00 1.00 H +ATOM 1211 HD11 LEU 79 -1.912 8.030 -10.017 1.00 1.00 H +ATOM 1212 HD12 LEU 79 -1.748 7.007 -8.569 1.00 1.00 H +ATOM 1213 HD13 LEU 79 -1.473 8.761 -8.455 1.00 1.00 H +ATOM 1214 HD21 LEU 79 0.625 5.734 -10.204 1.00 1.00 H +ATOM 1215 HD22 LEU 79 1.510 6.173 -8.724 1.00 1.00 H +ATOM 1216 HD23 LEU 79 -0.200 5.688 -8.629 1.00 1.00 H +ATOM 1217 N ALA 80 0.477 10.863 -9.235 1.00 1.00 N +ATOM 1218 CA ALA 80 -0.155 12.074 -8.742 1.00 1.00 C +ATOM 1219 C ALA 80 0.489 13.289 -9.412 1.00 1.00 C +ATOM 1220 O ALA 80 -0.177 14.028 -10.136 1.00 1.00 O +ATOM 1222 H ALA 80 0.694 10.184 -8.532 1.00 1.00 H +ATOM 1223 HA ALA 80 -1.209 12.034 -9.016 1.00 1.00 H +ATOM 1221 CB ALA 80 -0.045 12.124 -7.216 1.00 1.00 C +ATOM 1224 HB1 ALA 80 0.804 11.522 -6.894 1.00 1.00 H +ATOM 1225 HB2 ALA 80 0.099 13.156 -6.895 1.00 1.00 H +ATOM 1226 HB3 ALA 80 -0.959 11.730 -6.772 1.00 1.00 H +ATOM 1227 N GLU 81 1.776 13.458 -9.148 1.00 1.00 N +ATOM 1228 CA GLU 81 2.517 14.571 -9.717 1.00 1.00 C +ATOM 1229 C GLU 81 2.224 14.694 -11.215 1.00 1.00 C +ATOM 1230 O GLU 81 2.202 15.796 -11.758 1.00 1.00 O +ATOM 1236 H GLU 81 2.310 12.853 -8.559 1.00 1.00 H +ATOM 1237 HA GLU 81 2.155 15.457 -9.196 1.00 1.00 H +ATOM 1231 CB GLU 81 4.018 14.417 -9.463 1.00 1.00 C +ATOM 1232 CG GLU 81 4.414 15.039 -8.123 1.00 1.00 C +ATOM 1233 CD GLU 81 3.514 14.528 -6.995 1.00 1.00 C +ATOM 1234 OE1 GLU 81 3.143 13.335 -7.060 1.00 1.00 O +ATOM 1235 OE2 GLU 81 3.217 15.342 -6.094 1.00 1.00 O +ATOM 1238 HB2 GLU 81 4.286 13.361 -9.472 1.00 1.00 H +ATOM 1239 HB3 GLU 81 4.577 14.894 -10.268 1.00 1.00 H +ATOM 1240 HG2 GLU 81 5.453 14.799 -7.900 1.00 1.00 H +ATOM 1241 HG3 GLU 81 4.344 16.125 -8.185 1.00 1.00 H +ATOM 1242 N LEU 82 2.006 13.545 -11.838 1.00 1.00 N +ATOM 1243 CA LEU 82 1.715 13.509 -13.262 1.00 1.00 C +ATOM 1244 C LEU 82 0.387 14.223 -13.524 1.00 1.00 C +ATOM 1245 O LEU 82 0.320 15.134 -14.347 1.00 1.00 O +ATOM 1250 H LEU 82 2.025 12.652 -11.389 1.00 1.00 H +ATOM 1251 HA LEU 82 2.508 14.057 -13.770 1.00 1.00 H +ATOM 1246 CB LEU 82 1.755 12.071 -13.781 1.00 1.00 C +ATOM 1247 CG LEU 82 1.984 11.907 -15.284 1.00 1.00 C +ATOM 1248 CD1 LEU 82 3.250 11.096 -15.561 1.00 1.00 C +ATOM 1249 CD2 LEU 82 0.754 11.299 -15.964 1.00 1.00 C +ATOM 1252 HB2 LEU 82 2.544 11.536 -13.252 1.00 1.00 H +ATOM 1253 HB3 LEU 82 0.813 11.586 -13.521 1.00 1.00 H +ATOM 1254 HG LEU 82 2.134 12.897 -15.717 1.00 1.00 H +ATOM 1255 HD11 LEU 82 3.964 11.249 -14.751 1.00 1.00 H +ATOM 1256 HD12 LEU 82 2.998 10.037 -15.627 1.00 1.00 H +ATOM 1257 HD13 LEU 82 3.694 11.423 -16.501 1.00 1.00 H +ATOM 1258 HD21 LEU 82 -0.149 11.724 -15.527 1.00 1.00 H +ATOM 1259 HD22 LEU 82 0.782 11.518 -17.031 1.00 1.00 H +ATOM 1260 HD23 LEU 82 0.755 10.219 -15.815 1.00 1.00 H +ATOM 1261 N VAL 83 -0.636 13.781 -12.808 1.00 1.00 N +ATOM 1262 CA VAL 83 -1.959 14.365 -12.953 1.00 1.00 C +ATOM 1263 C VAL 83 -1.919 15.824 -12.497 1.00 1.00 C +ATOM 1264 O VAL 83 -2.544 16.688 -13.111 1.00 1.00 O +ATOM 1268 H VAL 83 -0.574 13.039 -12.140 1.00 1.00 H +ATOM 1269 HA VAL 83 -2.217 14.335 -14.012 1.00 1.00 H +ATOM 1265 CB VAL 83 -2.987 13.528 -12.192 1.00 1.00 C +ATOM 1266 CG1 VAL 83 -4.012 14.423 -11.491 1.00 1.00 C +ATOM 1267 CG2 VAL 83 -3.677 12.527 -13.121 1.00 1.00 C +ATOM 1270 HB VAL 83 -2.458 12.963 -11.424 1.00 1.00 H +ATOM 1271 HG11 VAL 83 -3.606 15.429 -11.389 1.00 1.00 H +ATOM 1272 HG12 VAL 83 -4.927 14.459 -12.082 1.00 1.00 H +ATOM 1273 HG13 VAL 83 -4.234 14.018 -10.503 1.00 1.00 H +ATOM 1274 HG21 VAL 83 -3.781 12.966 -14.113 1.00 1.00 H +ATOM 1275 HG22 VAL 83 -3.079 11.619 -13.184 1.00 1.00 H +ATOM 1276 HG23 VAL 83 -4.664 12.285 -12.725 1.00 1.00 H +ATOM 1277 N HIS 84 -1.179 16.056 -11.424 1.00 1.00 N +ATOM 1278 CA HIS 84 -1.050 17.397 -10.877 1.00 1.00 C +ATOM 1279 C HIS 84 -0.779 18.388 -12.010 1.00 1.00 C +ATOM 1280 O HIS 84 -1.564 19.309 -12.234 1.00 1.00 O +ATOM 1287 H HIS 84 -0.674 15.349 -10.929 1.00 1.00 H +ATOM 1288 HA HIS 84 -2.006 17.640 -10.414 1.00 1.00 H +ATOM 1281 CB HIS 84 0.021 17.438 -9.785 1.00 1.00 C +ATOM 1282 CG HIS 84 -0.516 17.759 -8.411 1.00 1.00 C +ATOM 1283 ND1 HIS 84 -1.827 17.513 -8.042 1.00 1.00 N +ATOM 1284 CD2 HIS 84 0.095 18.307 -7.321 1.00 1.00 C +ATOM 1285 CE1 HIS 84 -1.987 17.901 -6.785 1.00 1.00 C +ATOM 1286 NE2 HIS 84 -0.795 18.394 -6.341 1.00 1.00 N +ATOM 1289 HB2 HIS 84 0.526 16.473 -9.750 1.00 1.00 H +ATOM 1290 HB3 HIS 84 0.772 18.180 -10.054 1.00 1.00 H +ATOM 1291 HD1 HIS 84 -2.534 17.111 -8.624 1.00 1.00 H +ATOM 1292 HD2 HIS 84 1.137 18.622 -7.266 1.00 1.00 H +ATOM 1293 HE1 HIS 84 -2.910 17.838 -6.207 1.00 1.00 H +ATOM 1294 N HIS 85 0.333 18.166 -12.695 1.00 1.00 N +ATOM 1295 CA HIS 85 0.716 19.029 -13.800 1.00 1.00 C +ATOM 1296 C HIS 85 -0.310 18.905 -14.927 1.00 1.00 C +ATOM 1297 O HIS 85 -0.779 19.911 -15.458 1.00 1.00 O +ATOM 1304 H HIS 85 0.965 17.414 -12.507 1.00 1.00 H +ATOM 1305 HA HIS 85 0.704 20.050 -13.418 1.00 1.00 H +ATOM 1298 CB HIS 85 2.143 18.720 -14.260 1.00 1.00 C +ATOM 1299 CG HIS 85 2.489 19.293 -15.613 1.00 1.00 C +ATOM 1300 ND1 HIS 85 2.923 20.596 -15.788 1.00 1.00 N +ATOM 1301 CD2 HIS 85 2.462 18.726 -16.854 1.00 1.00 C +ATOM 1302 CE1 HIS 85 3.143 20.793 -17.079 1.00 1.00 C +ATOM 1303 NE2 HIS 85 2.857 19.635 -17.739 1.00 1.00 N +ATOM 1306 HB2 HIS 85 2.844 19.110 -13.521 1.00 1.00 H +ATOM 1307 HB3 HIS 85 2.279 17.640 -14.287 1.00 1.00 H +ATOM 1308 HD1 HIS 85 3.049 21.272 -15.062 1.00 1.00 H +ATOM 1309 HD2 HIS 85 2.167 17.702 -17.080 1.00 1.00 H +ATOM 1310 HE1 HIS 85 3.491 21.721 -17.534 1.00 1.00 H +ATOM 1311 N HIS 86 -0.628 17.663 -15.262 1.00 1.00 N +ATOM 1312 CA HIS 86 -1.590 17.394 -16.318 1.00 1.00 C +ATOM 1313 C HIS 86 -2.983 17.841 -15.868 1.00 1.00 C +ATOM 1314 O HIS 86 -3.976 17.552 -16.533 1.00 1.00 O +ATOM 1321 H HIS 86 -0.242 16.850 -14.825 1.00 1.00 H +ATOM 1322 HA HIS 86 -1.286 17.992 -17.177 1.00 1.00 H +ATOM 1315 CB HIS 86 -1.544 15.923 -16.733 1.00 1.00 C +ATOM 1316 CG HIS 86 -0.249 15.511 -17.390 1.00 1.00 C +ATOM 1317 ND1 HIS 86 0.493 16.366 -18.188 1.00 1.00 N +ATOM 1318 CD2 HIS 86 0.428 14.327 -17.361 1.00 1.00 C +ATOM 1319 CE1 HIS 86 1.565 15.715 -18.613 1.00 1.00 C +ATOM 1320 NE2 HIS 86 1.523 14.451 -18.100 1.00 1.00 N +ATOM 1323 HB2 HIS 86 -1.707 15.302 -15.852 1.00 1.00 H +ATOM 1324 HB3 HIS 86 -2.368 15.724 -17.419 1.00 1.00 H +ATOM 1325 HD1 HIS 86 0.259 17.313 -18.405 1.00 1.00 H +ATOM 1326 HD2 HIS 86 0.121 13.431 -16.821 1.00 1.00 H +ATOM 1327 HE1 HIS 86 2.345 16.118 -19.260 1.00 1.00 H +ATOM 1328 N SER 87 -3.010 18.539 -14.741 1.00 1.00 N +ATOM 1329 CA SER 87 -4.266 19.027 -14.195 1.00 1.00 C +ATOM 1330 C SER 87 -4.716 20.276 -14.957 1.00 1.00 C +ATOM 1331 O SER 87 -5.899 20.430 -15.257 1.00 1.00 O +ATOM 1334 H SER 87 -2.199 18.769 -14.206 1.00 1.00 H +ATOM 1335 HA SER 87 -4.978 18.215 -14.336 1.00 1.00 H +ATOM 1332 CB SER 87 -4.133 19.336 -12.703 1.00 1.00 C +ATOM 1333 OG SER 87 -5.400 19.568 -12.091 1.00 1.00 O +ATOM 1336 HB2 SER 87 -3.637 18.504 -12.203 1.00 1.00 H +ATOM 1337 HB3 SER 87 -3.498 20.212 -12.567 1.00 1.00 H +ATOM 1338 HG SER 87 -5.922 20.229 -12.629 1.00 1.00 H +ATOM 1339 N THR 88 -3.750 21.134 -15.247 1.00 1.00 N +ATOM 1340 CA THR 88 -4.033 22.364 -15.966 1.00 1.00 C +ATOM 1341 C THR 88 -3.107 22.498 -17.177 1.00 1.00 C +ATOM 1342 O THR 88 -3.306 23.370 -18.022 1.00 1.00 O +ATOM 1346 H THR 88 -2.791 21.001 -14.998 1.00 1.00 H +ATOM 1347 HA THR 88 -5.052 22.312 -16.349 1.00 1.00 H +ATOM 1343 CB THR 88 -3.916 23.528 -14.981 1.00 1.00 C +ATOM 1344 OG1 THR 88 -4.439 24.643 -15.696 1.00 1.00 O +ATOM 1345 CG2 THR 88 -2.463 23.914 -14.700 1.00 1.00 C +ATOM 1348 HB THR 88 -4.446 23.307 -14.054 1.00 1.00 H +ATOM 1349 HG1 THR 88 -5.394 24.474 -15.945 1.00 1.00 H +ATOM 1350 HG21 THR 88 -1.942 24.079 -15.644 1.00 1.00 H +ATOM 1351 HG22 THR 88 -2.437 24.828 -14.107 1.00 1.00 H +ATOM 1352 HG23 THR 88 -1.973 23.109 -14.150 1.00 1.00 H +ATOM 1353 N VAL 89 -2.115 21.620 -17.223 1.00 1.00 N +ATOM 1354 CA VAL 89 -1.158 21.630 -18.317 1.00 1.00 C +ATOM 1355 C VAL 89 -0.905 20.194 -18.778 1.00 1.00 C +ATOM 1356 O VAL 89 0.189 19.662 -18.593 1.00 1.00 O +ATOM 1360 H VAL 89 -1.961 20.915 -16.532 1.00 1.00 H +ATOM 1361 HA VAL 89 -1.604 22.190 -19.139 1.00 1.00 H +ATOM 1357 CB VAL 89 0.120 22.354 -17.887 1.00 1.00 C +ATOM 1358 CG1 VAL 89 0.062 23.837 -18.260 1.00 1.00 C +ATOM 1359 CG2 VAL 89 0.374 22.176 -16.388 1.00 1.00 C +ATOM 1362 HB VAL 89 0.955 21.905 -18.424 1.00 1.00 H +ATOM 1363 HG11 VAL 89 -0.816 24.022 -18.880 1.00 1.00 H +ATOM 1364 HG12 VAL 89 0.000 24.438 -17.354 1.00 1.00 H +ATOM 1365 HG13 VAL 89 0.961 24.107 -18.815 1.00 1.00 H +ATOM 1366 HG21 VAL 89 -0.559 22.319 -15.842 1.00 1.00 H +ATOM 1367 HG22 VAL 89 0.755 21.171 -16.201 1.00 1.00 H +ATOM 1368 HG23 VAL 89 1.107 22.910 -16.055 1.00 1.00 H +ATOM 1369 N ALA 90 -1.933 19.606 -19.373 1.00 1.00 N +ATOM 1370 CA ALA 90 -1.837 18.243 -19.863 1.00 1.00 C +ATOM 1371 C ALA 90 -0.861 18.197 -21.040 1.00 1.00 C +ATOM 1372 O ALA 90 -1.274 18.033 -22.188 1.00 1.00 O +ATOM 1374 H ALA 90 -2.819 20.046 -19.519 1.00 1.00 H +ATOM 1375 HA ALA 90 -1.444 17.626 -19.054 1.00 1.00 H +ATOM 1373 CB ALA 90 -3.228 17.735 -20.240 1.00 1.00 C +ATOM 1376 HB1 ALA 90 -3.926 17.948 -19.428 1.00 1.00 H +ATOM 1377 HB2 ALA 90 -3.565 18.237 -21.148 1.00 1.00 H +ATOM 1378 HB3 ALA 90 -3.189 16.660 -20.411 1.00 1.00 H +ATOM 1379 N ASP 91 0.416 18.346 -20.717 1.00 1.00 N +ATOM 1380 CA ASP 91 1.452 18.324 -21.734 1.00 1.00 C +ATOM 1381 C ASP 91 1.625 16.894 -22.251 1.00 1.00 C +ATOM 1382 O ASP 91 2.405 16.651 -23.170 1.00 1.00 O +ATOM 1387 H ASP 91 0.743 18.480 -19.781 1.00 1.00 H +ATOM 1388 HA ASP 91 1.110 19.010 -22.509 1.00 1.00 H +ATOM 1383 CB ASP 91 2.796 18.785 -21.161 1.00 1.00 C +ATOM 1384 CG ASP 91 3.948 17.793 -21.338 1.00 1.00 C +ATOM 1385 OD1 ASP 91 3.827 16.678 -20.785 1.00 1.00 O +ATOM 1386 OD2 ASP 91 4.922 18.172 -22.022 1.00 1.00 O +ATOM 1389 HB2 ASP 91 3.071 19.727 -21.634 1.00 1.00 H +ATOM 1390 HB3 ASP 91 2.669 18.986 -20.097 1.00 1.00 H +ATOM 1391 N GLY 92 0.882 15.984 -21.638 1.00 1.00 N +ATOM 1392 CA GLY 92 0.942 14.585 -22.024 1.00 1.00 C +ATOM 1393 C GLY 92 -0.462 13.999 -22.178 1.00 1.00 C +ATOM 1394 O GLY 92 -0.814 13.492 -23.243 1.00 1.00 O +ATOM 1395 H GLY 92 0.250 16.190 -20.891 1.00 1.00 H +ATOM 1396 HA2 GLY 92 1.486 14.487 -22.963 1.00 1.00 H +ATOM 1397 HA3 GLY 92 1.496 14.021 -21.273 1.00 1.00 H +ATOM 1398 N LEU 93 -1.227 14.087 -21.100 1.00 1.00 N +ATOM 1399 CA LEU 93 -2.586 13.570 -21.102 1.00 1.00 C +ATOM 1400 C LEU 93 -3.432 14.375 -22.089 1.00 1.00 C +ATOM 1401 O LEU 93 -3.199 15.568 -22.282 1.00 1.00 O +ATOM 1406 H LEU 93 -0.934 14.500 -20.238 1.00 1.00 H +ATOM 1407 HA LEU 93 -2.542 12.536 -21.446 1.00 1.00 H +ATOM 1402 CB LEU 93 -3.152 13.550 -19.681 1.00 1.00 C +ATOM 1403 CG LEU 93 -2.214 13.029 -18.592 1.00 1.00 C +ATOM 1404 CD1 LEU 93 -2.898 13.050 -17.223 1.00 1.00 C +ATOM 1405 CD2 LEU 93 -1.679 11.641 -18.944 1.00 1.00 C +ATOM 1408 HB2 LEU 93 -3.456 14.562 -19.418 1.00 1.00 H +ATOM 1409 HB3 LEU 93 -4.054 12.936 -19.679 1.00 1.00 H +ATOM 1410 HG LEU 93 -1.356 13.698 -18.531 1.00 1.00 H +ATOM 1411 HD11 LEU 93 -3.320 14.038 -17.041 1.00 1.00 H +ATOM 1412 HD12 LEU 93 -3.693 12.305 -17.203 1.00 1.00 H +ATOM 1413 HD13 LEU 93 -2.166 12.821 -16.447 1.00 1.00 H +ATOM 1414 HD21 LEU 93 -1.602 11.545 -20.027 1.00 1.00 H +ATOM 1415 HD22 LEU 93 -0.695 11.504 -18.495 1.00 1.00 H +ATOM 1416 HD23 LEU 93 -2.361 10.881 -18.561 1.00 1.00 H +ATOM 1417 N ILE 94 -4.395 13.692 -22.689 1.00 1.00 N +ATOM 1418 CA ILE 94 -5.276 14.329 -23.653 1.00 1.00 C +ATOM 1419 C ILE 94 -5.923 15.558 -23.011 1.00 1.00 C +ATOM 1420 O ILE 94 -5.407 16.669 -23.132 1.00 1.00 O +ATOM 1425 H ILE 94 -4.577 12.723 -22.527 1.00 1.00 H +ATOM 1426 HA ILE 94 -4.661 14.659 -24.490 1.00 1.00 H +ATOM 1421 CB ILE 94 -6.286 13.320 -24.203 1.00 1.00 C +ATOM 1422 CG1 ILE 94 -6.892 12.479 -23.077 1.00 1.00 C +ATOM 1423 CG2 ILE 94 -5.655 12.449 -25.292 1.00 1.00 C +ATOM 1424 CD1 ILE 94 -8.421 12.520 -23.125 1.00 1.00 C +ATOM 1427 HB ILE 94 -7.103 13.873 -24.667 1.00 1.00 H +ATOM 1428 HG12 ILE 94 -6.547 11.449 -23.163 1.00 1.00 H +ATOM 1429 HG13 ILE 94 -6.544 12.853 -22.114 1.00 1.00 H +ATOM 1430 HG21 ILE 94 -4.680 12.857 -25.562 1.00 1.00 H +ATOM 1431 HG22 ILE 94 -5.532 11.433 -24.919 1.00 1.00 H +ATOM 1432 HG23 ILE 94 -6.300 12.440 -26.170 1.00 1.00 H +ATOM 1433 HD11 ILE 94 -8.752 13.544 -23.290 1.00 1.00 H +ATOM 1434 HD12 ILE 94 -8.775 11.886 -23.939 1.00 1.00 H +ATOM 1435 HD13 ILE 94 -8.823 12.154 -22.180 1.00 1.00 H +ATOM 1436 N THR 95 -7.041 15.319 -22.344 1.00 1.00 N +ATOM 1437 CA THR 95 -7.763 16.393 -21.684 1.00 1.00 C +ATOM 1438 C THR 95 -7.088 16.753 -20.359 1.00 1.00 C +ATOM 1439 O THR 95 -5.869 16.637 -20.227 1.00 1.00 O +ATOM 1443 H THR 95 -7.454 14.412 -22.250 1.00 1.00 H +ATOM 1444 HA THR 95 -7.717 17.278 -22.317 1.00 1.00 H +ATOM 1440 CB THR 95 -9.220 15.955 -21.522 1.00 1.00 C +ATOM 1441 OG1 THR 95 -9.739 16.832 -20.528 1.00 1.00 O +ATOM 1442 CG2 THR 95 -9.347 14.564 -20.897 1.00 1.00 C +ATOM 1445 HB THR 95 -9.748 16.001 -22.475 1.00 1.00 H +ATOM 1446 HG1 THR 95 -10.736 16.756 -20.490 1.00 1.00 H +ATOM 1447 HG21 THR 95 -8.467 13.971 -21.145 1.00 1.00 H +ATOM 1448 HG22 THR 95 -9.427 14.659 -19.813 1.00 1.00 H +ATOM 1449 HG23 THR 95 -10.240 14.071 -21.284 1.00 1.00 H +ATOM 1450 N THR 96 -7.908 17.184 -19.411 1.00 1.00 N +ATOM 1451 CA THR 96 -7.404 17.562 -18.101 1.00 1.00 C +ATOM 1452 C THR 96 -8.325 17.028 -17.002 1.00 1.00 C +ATOM 1453 O THR 96 -9.510 17.357 -16.964 1.00 1.00 O +ATOM 1457 H THR 96 -8.897 17.275 -19.527 1.00 1.00 H +ATOM 1458 HA THR 96 -6.431 17.094 -17.959 1.00 1.00 H +ATOM 1454 CB THR 96 -7.248 19.084 -18.076 1.00 1.00 C +ATOM 1455 OG1 THR 96 -8.576 19.566 -17.890 1.00 1.00 O +ATOM 1456 CG2 THR 96 -6.833 19.652 -19.435 1.00 1.00 C +ATOM 1459 HB THR 96 -6.551 19.391 -17.297 1.00 1.00 H +ATOM 1460 HG1 THR 96 -8.553 20.481 -17.486 1.00 1.00 H +ATOM 1461 HG21 THR 96 -6.189 18.937 -19.946 1.00 1.00 H +ATOM 1462 HG22 THR 96 -7.721 19.837 -20.039 1.00 1.00 H +ATOM 1463 HG23 THR 96 -6.293 20.586 -19.288 1.00 1.00 H +ATOM 1464 N LEU 97 -7.746 16.214 -16.133 1.00 1.00 N +ATOM 1465 CA LEU 97 -8.498 15.631 -15.036 1.00 1.00 C +ATOM 1466 C LEU 97 -9.717 16.507 -14.737 1.00 1.00 C +ATOM 1467 O LEU 97 -9.598 17.727 -14.631 1.00 1.00 O +ATOM 1472 H LEU 97 -6.780 15.952 -16.169 1.00 1.00 H +ATOM 1473 HA LEU 97 -8.848 14.652 -15.363 1.00 1.00 H +ATOM 1468 CB LEU 97 -7.591 15.406 -13.824 1.00 1.00 C +ATOM 1469 CG LEU 97 -6.166 15.950 -13.942 1.00 1.00 C +ATOM 1470 CD1 LEU 97 -5.700 16.557 -12.616 1.00 1.00 C +ATOM 1471 CD2 LEU 97 -5.207 14.871 -14.447 1.00 1.00 C +ATOM 1474 HB2 LEU 97 -8.063 15.861 -12.953 1.00 1.00 H +ATOM 1475 HB3 LEU 97 -7.535 14.334 -13.631 1.00 1.00 H +ATOM 1476 HG LEU 97 -6.167 16.753 -14.680 1.00 1.00 H +ATOM 1477 HD11 LEU 97 -6.083 15.959 -11.789 1.00 1.00 H +ATOM 1478 HD12 LEU 97 -4.611 16.566 -12.585 1.00 1.00 H +ATOM 1479 HD13 LEU 97 -6.075 17.576 -12.532 1.00 1.00 H +ATOM 1480 HD21 LEU 97 -5.667 13.890 -14.326 1.00 1.00 H +ATOM 1481 HD22 LEU 97 -4.990 15.043 -15.501 1.00 1.00 H +ATOM 1482 HD23 LEU 97 -4.281 14.911 -13.873 1.00 1.00 H +ATOM 1483 N HIS 98 -10.860 15.851 -14.611 1.00 1.00 N +ATOM 1484 CA HIS 98 -12.100 16.555 -14.327 1.00 1.00 C +ATOM 1485 C HIS 98 -12.933 15.746 -13.329 1.00 1.00 C +ATOM 1486 O HIS 98 -14.157 15.856 -13.305 1.00 1.00 O +ATOM 1493 H HIS 98 -10.948 14.858 -14.699 1.00 1.00 H +ATOM 1494 HA HIS 98 -11.822 17.504 -13.871 1.00 1.00 H +ATOM 1487 CB HIS 98 -12.859 16.861 -15.619 1.00 1.00 C +ATOM 1488 CG HIS 98 -14.134 17.642 -15.412 1.00 1.00 C +ATOM 1489 ND1 HIS 98 -14.202 19.018 -15.546 1.00 1.00 N +ATOM 1490 CD2 HIS 98 -15.389 17.226 -15.079 1.00 1.00 C +ATOM 1491 CE1 HIS 98 -15.447 19.401 -15.302 1.00 1.00 C +ATOM 1492 NE2 HIS 98 -16.181 18.289 -15.012 1.00 1.00 N +ATOM 1495 HB2 HIS 98 -12.205 17.424 -16.287 1.00 1.00 H +ATOM 1496 HB3 HIS 98 -13.095 15.924 -16.121 1.00 1.00 H +ATOM 1497 HD1 HIS 98 -13.441 19.620 -15.787 1.00 1.00 H +ATOM 1498 HD2 HIS 98 -15.692 16.194 -14.898 1.00 1.00 H +ATOM 1499 HE1 HIS 98 -15.819 20.425 -15.330 1.00 1.00 H +ATOM 1500 N TYR 99 -12.233 14.952 -12.530 1.00 1.00 N +ATOM 1501 CA TYR 99 -12.893 14.125 -11.535 1.00 1.00 C +ATOM 1502 C TYR 99 -11.952 13.820 -10.367 1.00 1.00 C +ATOM 1503 O TYR 99 -11.850 12.675 -9.931 1.00 1.00 O +ATOM 1512 H TYR 99 -11.238 14.868 -12.558 1.00 1.00 H +ATOM 1513 HA TYR 99 -13.758 14.674 -11.161 1.00 1.00 H +ATOM 1504 CB TYR 99 -13.250 12.816 -12.241 1.00 1.00 C +ATOM 1505 CG TYR 99 -12.328 11.647 -11.889 1.00 1.00 C +ATOM 1506 CD1 TYR 99 -10.958 11.814 -11.929 1.00 1.00 C +ATOM 1507 CD2 TYR 99 -12.864 10.427 -11.533 1.00 1.00 C +ATOM 1508 CE1 TYR 99 -10.090 10.713 -11.598 1.00 1.00 C +ATOM 1509 CE2 TYR 99 -11.997 9.327 -11.201 1.00 1.00 C +ATOM 1510 CZ TYR 99 -10.652 9.524 -11.250 1.00 1.00 C +ATOM 1511 OH TYR 99 -9.832 8.485 -10.937 1.00 1.00 O +ATOM 1514 HB2 TYR 99 -14.275 12.545 -11.987 1.00 1.00 H +ATOM 1515 HB3 TYR 99 -13.221 12.978 -13.318 1.00 1.00 H +ATOM 1516 HD1 TYR 99 -10.533 12.776 -12.211 1.00 1.00 H +ATOM 1517 HD2 TYR 99 -13.947 10.296 -11.502 1.00 1.00 H +ATOM 1518 HE1 TYR 99 -9.006 10.831 -11.624 1.00 1.00 H +ATOM 1519 HE2 TYR 99 -12.408 8.359 -10.918 1.00 1.00 H +ATOM 1520 HH TYR 99 -10.369 7.648 -10.824 1.00 1.00 H +ATOM 1521 N PRO 100 -11.273 14.894 -9.880 1.00 1.00 N +ATOM 1522 CA PRO 100 -10.344 14.752 -8.771 1.00 1.00 C +ATOM 1523 C PRO 100 -11.093 14.584 -7.448 1.00 1.00 C +ATOM 1524 O PRO 100 -10.492 14.658 -6.378 1.00 1.00 O +ATOM 1528 HA PRO 100 -9.795 13.924 -8.882 1.00 1.00 H +ATOM 1525 CB PRO 100 -9.487 16.006 -8.814 1.00 1.00 C +ATOM 1526 CG PRO 100 -10.263 17.014 -9.647 1.00 1.00 C +ATOM 1527 CD PRO 100 -11.370 16.264 -10.372 1.00 1.00 C +ATOM 1529 HB2 PRO 100 -9.306 16.388 -7.809 1.00 1.00 H +ATOM 1530 HB3 PRO 100 -8.514 15.800 -9.257 1.00 1.00 H +ATOM 1531 HG2 PRO 100 -10.682 17.793 -9.011 1.00 1.00 H +ATOM 1532 HG3 PRO 100 -9.603 17.506 -10.362 1.00 1.00 H +ATOM 1533 HD2 PRO 100 -12.347 16.695 -10.154 1.00 1.00 H +ATOM 1534 HD3 PRO 100 -11.235 16.309 -11.452 1.00 1.00 H +ATOM 1535 N ALA 101 -12.394 14.359 -7.565 1.00 1.00 N +ATOM 1536 CA ALA 101 -13.230 14.179 -6.391 1.00 1.00 C +ATOM 1537 C ALA 101 -13.017 12.771 -5.828 1.00 1.00 C +ATOM 1538 O ALA 101 -12.833 11.818 -6.585 1.00 1.00 O +ATOM 1540 H ALA 101 -12.874 14.298 -8.440 1.00 1.00 H +ATOM 1541 HA ALA 101 -12.919 14.909 -5.646 1.00 1.00 H +ATOM 1539 CB ALA 101 -14.692 14.444 -6.760 1.00 1.00 C +ATOM 1542 HB1 ALA 101 -14.739 15.231 -7.512 1.00 1.00 H +ATOM 1543 HB2 ALA 101 -15.137 13.531 -7.158 1.00 1.00 H +ATOM 1544 HB3 ALA 101 -15.239 14.756 -5.871 1.00 1.00 H +ATOM 1545 N PRO 102 -13.049 12.684 -4.472 1.00 1.00 N +ATOM 1546 CA PRO 102 -12.860 11.408 -3.800 1.00 1.00 C +ATOM 1547 C PRO 102 -14.112 10.537 -3.920 1.00 1.00 C +ATOM 1548 O PRO 102 -15.169 11.013 -4.329 1.00 1.00 O +ATOM 1552 HA PRO 102 -12.124 10.893 -4.235 1.00 1.00 H +ATOM 1549 CB PRO 102 -12.523 11.769 -2.362 1.00 1.00 C +ATOM 1550 CG PRO 102 -12.989 13.203 -2.171 1.00 1.00 C +ATOM 1551 CD PRO 102 -13.263 13.791 -3.545 1.00 1.00 C +ATOM 1553 HB2 PRO 102 -13.025 11.099 -1.664 1.00 1.00 H +ATOM 1554 HB3 PRO 102 -11.452 11.677 -2.178 1.00 1.00 H +ATOM 1555 HG2 PRO 102 -13.888 13.234 -1.556 1.00 1.00 H +ATOM 1556 HG3 PRO 102 -12.228 13.786 -1.652 1.00 1.00 H +ATOM 1557 HD2 PRO 102 -14.281 14.175 -3.615 1.00 1.00 H +ATOM 1558 HD3 PRO 102 -12.592 14.623 -3.761 1.00 1.00 H +ATOM 1559 N LYS 103 -13.949 9.272 -3.557 1.00 1.00 N +ATOM 1560 CA LYS 103 -15.053 8.328 -3.619 1.00 1.00 C +ATOM 1561 C LYS 103 -15.556 8.045 -2.203 1.00 1.00 C +ATOM 1562 O LYS 103 -14.773 7.706 -1.317 1.00 1.00 O +ATOM 1568 H LYS 103 -13.086 8.893 -3.226 1.00 1.00 H +ATOM 1569 HA LYS 103 -15.857 8.802 -4.184 1.00 1.00 H +ATOM 1563 CB LYS 103 -14.640 7.071 -4.387 1.00 1.00 C +ATOM 1564 CG LYS 103 -13.589 6.275 -3.612 1.00 1.00 C +ATOM 1565 CD LYS 103 -12.209 6.411 -4.259 1.00 1.00 C +ATOM 1566 CE LYS 103 -11.367 7.467 -3.540 1.00 1.00 C +ATOM 1567 NZ LYS 103 -9.964 7.012 -3.414 1.00 1.00 N +ATOM 1570 HB2 LYS 103 -15.515 6.447 -4.568 1.00 1.00 H +ATOM 1571 HB3 LYS 103 -14.242 7.351 -5.363 1.00 1.00 H +ATOM 1572 HG2 LYS 103 -13.546 6.629 -2.581 1.00 1.00 H +ATOM 1573 HG3 LYS 103 -13.876 5.225 -3.577 1.00 1.00 H +ATOM 1574 HD2 LYS 103 -11.696 5.451 -4.233 1.00 1.00 H +ATOM 1575 HD3 LYS 103 -12.322 6.684 -5.308 1.00 1.00 H +ATOM 1576 HE2 LYS 103 -11.404 8.406 -4.090 1.00 1.00 H +ATOM 1577 HE3 LYS 103 -11.782 7.659 -2.551 1.00 1.00 H +ATOM 1578 HZ1 LYS 103 -9.696 6.525 -4.245 1.00 1.00 H +ATOM 1579 HZ2 LYS 103 -9.367 7.804 -3.286 1.00 1.00 H +ATOM 1580 HZ3 LYS 103 -9.881 6.400 -2.627 1.00 1.00 H +ATOM 1581 N ARG 104 -16.862 8.196 -2.032 1.00 1.00 N +ATOM 1582 CA ARG 104 -17.479 7.961 -0.738 1.00 1.00 C +ATOM 1583 C ARG 104 -18.100 6.565 -0.691 1.00 1.00 C +ATOM 1584 O ARG 104 -17.890 5.818 0.264 1.00 1.00 O +ATOM 1592 H ARG 104 -17.492 8.474 -2.757 1.00 1.00 H +ATOM 1593 HA ARG 104 -16.665 8.053 -0.020 1.00 1.00 H +ATOM 1585 CB ARG 104 -18.562 9.004 -0.447 1.00 1.00 C +ATOM 1586 CG ARG 104 -19.436 8.569 0.732 1.00 1.00 C +ATOM 1587 CD ARG 104 -19.584 9.702 1.750 1.00 1.00 C +ATOM 1588 NE ARG 104 -20.909 10.346 1.603 1.00 1.00 N +ATOM 1589 CZ ARG 104 -21.120 11.664 1.726 1.00 1.00 C +ATOM 1590 NH1 ARG 104 -20.098 12.485 2.000 1.00 1.00 N +ATOM 1591 NH2 ARG 104 -22.357 12.159 1.576 1.00 1.00 N +ATOM 1594 HB2 ARG 104 -18.097 9.964 -0.226 1.00 1.00 H +ATOM 1595 HB3 ARG 104 -19.183 9.144 -1.332 1.00 1.00 H +ATOM 1596 HG2 ARG 104 -20.420 8.272 0.368 1.00 1.00 H +ATOM 1597 HG3 ARG 104 -18.996 7.697 1.215 1.00 1.00 H +ATOM 1598 HD2 ARG 104 -19.472 9.311 2.761 1.00 1.00 H +ATOM 1599 HD3 ARG 104 -18.794 10.439 1.604 1.00 1.00 H +ATOM 1600 HE ARG 104 -21.694 9.762 1.398 1.00 1.00 H +ATOM 1601 HH11 ARG 104 -19.176 12.115 2.111 1.00 1.00 H +ATOM 1602 HH12 ARG 104 -20.257 13.468 2.091 1.00 1.00 H +ATOM 1603 HH21 ARG 104 -23.120 11.548 1.372 1.00 1.00 H +ATOM 1604 HH22 ARG 104 -22.515 13.143 1.668 1.00 1.00 H +ATOM 1605 N GLY 105 -18.855 6.251 -1.735 1.00 1.00 N +ATOM 1606 CA GLY 105 -19.507 4.956 -1.826 1.00 1.00 C +ATOM 1607 C GLY 105 -18.484 3.841 -2.048 1.00 1.00 C +ATOM 1608 O GLY 105 -18.145 3.522 -3.187 1.00 1.00 O +ATOM 1609 H GLY 105 -19.020 6.864 -2.508 1.00 1.00 H +ATOM 1610 HA2 GLY 105 -20.068 4.763 -0.913 1.00 1.00 H +ATOM 1611 HA3 GLY 105 -20.225 4.965 -2.647 1.00 1.00 H +ATOM 1612 N ILE 106 -18.020 3.278 -0.943 1.00 1.00 N +ATOM 1613 CA ILE 106 -17.042 2.206 -1.002 1.00 1.00 C +ATOM 1614 C ILE 106 -17.768 0.858 -0.965 1.00 1.00 C +ATOM 1615 O ILE 106 -17.695 0.084 -1.918 1.00 1.00 O +ATOM 1620 H ILE 106 -18.301 3.544 -0.020 1.00 1.00 H +ATOM 1621 HA ILE 106 -16.521 2.291 -1.954 1.00 1.00 H +ATOM 1616 CB ILE 106 -15.998 2.371 0.105 1.00 1.00 C +ATOM 1617 CG1 ILE 106 -15.252 3.698 -0.042 1.00 1.00 C +ATOM 1618 CG2 ILE 106 -15.042 1.177 0.139 1.00 1.00 C +ATOM 1619 CD1 ILE 106 -15.509 4.606 1.163 1.00 1.00 C +ATOM 1622 HB ILE 106 -16.516 2.396 1.063 1.00 1.00 H +ATOM 1623 HG12 ILE 106 -14.183 3.510 -0.137 1.00 1.00 H +ATOM 1624 HG13 ILE 106 -15.570 4.200 -0.955 1.00 1.00 H +ATOM 1625 HG21 ILE 106 -15.515 0.319 -0.339 1.00 1.00 H +ATOM 1626 HG22 ILE 106 -14.126 1.429 -0.394 1.00 1.00 H +ATOM 1627 HG23 ILE 106 -14.805 0.931 1.174 1.00 1.00 H +ATOM 1628 HD11 ILE 106 -16.539 4.484 1.497 1.00 1.00 H +ATOM 1629 HD12 ILE 106 -14.830 4.337 1.973 1.00 1.00 H +ATOM 1630 HD13 ILE 106 -15.340 5.645 0.878 1.00 1.00 H +ATOM 1631 N HIS 107 -18.450 0.619 0.145 1.00 1.00 N +ATOM 1632 CA HIS 107 -19.188 -0.621 0.318 1.00 1.00 C +ATOM 1633 C HIS 107 -19.965 -0.577 1.634 1.00 1.00 C +ATOM 1634 O HIS 107 -19.765 -1.421 2.507 1.00 1.00 O +ATOM 1641 H HIS 107 -18.505 1.253 0.917 1.00 1.00 H +ATOM 1642 HA HIS 107 -19.895 -0.683 -0.510 1.00 1.00 H +ATOM 1635 CB HIS 107 -18.251 -1.827 0.222 1.00 1.00 C +ATOM 1636 CG HIS 107 -17.485 -2.112 1.491 1.00 1.00 C +ATOM 1637 ND1 HIS 107 -17.680 -3.258 2.244 1.00 1.00 N +ATOM 1638 CD2 HIS 107 -16.522 -1.390 2.132 1.00 1.00 C +ATOM 1639 CE1 HIS 107 -16.865 -3.216 3.288 1.00 1.00 C +ATOM 1640 NE2 HIS 107 -16.149 -2.057 3.217 1.00 1.00 N +ATOM 1643 HB2 HIS 107 -18.838 -2.708 -0.042 1.00 1.00 H +ATOM 1644 HB3 HIS 107 -17.543 -1.660 -0.589 1.00 1.00 H +ATOM 1645 HD1 HIS 107 -18.326 -3.992 2.035 1.00 1.00 H +ATOM 1646 HD2 HIS 107 -16.126 -0.428 1.807 1.00 1.00 H +ATOM 1647 HE1 HIS 107 -16.782 -3.973 4.066 1.00 1.00 H +ATOM 1648 N ARG 108 -20.836 0.417 1.737 1.00 1.00 N +ATOM 1649 CA ARG 108 -21.645 0.582 2.933 1.00 1.00 C +ATOM 1650 C ARG 108 -23.070 0.997 2.558 1.00 1.00 C +ATOM 1651 O ARG 108 -23.263 1.943 1.796 1.00 1.00 O +ATOM 1659 H ARG 108 -20.993 1.099 1.024 1.00 1.00 H +ATOM 1660 HA ARG 108 -21.635 -0.396 3.413 1.00 1.00 H +ATOM 1652 CB ARG 108 -21.042 1.637 3.865 1.00 1.00 C +ATOM 1653 CG ARG 108 -20.457 0.988 5.121 1.00 1.00 C +ATOM 1654 CD ARG 108 -18.967 1.307 5.259 1.00 1.00 C +ATOM 1655 NE ARG 108 -18.529 1.083 6.654 1.00 1.00 N +ATOM 1656 CZ ARG 108 -17.412 1.602 7.183 1.00 1.00 C +ATOM 1657 NH1 ARG 108 -16.614 2.376 6.437 1.00 1.00 N +ATOM 1658 NH2 ARG 108 -17.094 1.344 8.460 1.00 1.00 N +ATOM 1661 HB2 ARG 108 -20.262 2.187 3.339 1.00 1.00 H +ATOM 1662 HB3 ARG 108 -21.808 2.359 4.146 1.00 1.00 H +ATOM 1663 HG2 ARG 108 -20.991 1.344 6.001 1.00 1.00 H +ATOM 1664 HG3 ARG 108 -20.599 -0.091 5.077 1.00 1.00 H +ATOM 1665 HD2 ARG 108 -18.388 0.679 4.582 1.00 1.00 H +ATOM 1666 HD3 ARG 108 -18.780 2.341 4.972 1.00 1.00 H +ATOM 1667 HE ARG 108 -19.102 0.508 7.240 1.00 1.00 H +ATOM 1668 HH11 ARG 108 -16.852 2.567 5.484 1.00 1.00 H +ATOM 1669 HH12 ARG 108 -15.780 2.762 6.832 1.00 1.00 H +ATOM 1670 HH21 ARG 108 -17.690 0.765 9.017 1.00 1.00 H +ATOM 1671 HH22 ARG 108 -16.260 1.730 8.855 1.00 1.00 H +ATOM 1672 N ASP 109 -24.028 0.271 3.111 1.00 1.00 N +ATOM 1673 CA ASP 109 -25.428 0.551 2.845 1.00 1.00 C +ATOM 1674 C ASP 109 -25.660 2.063 2.896 1.00 1.00 C +ATOM 1675 O ASP 109 -24.679 2.796 2.649 1.00 1.00 O +ATOM 1681 H ASP 109 -23.861 -0.497 3.731 1.00 1.00 H +ATOM 1682 HA ASP 109 -25.621 0.133 1.857 1.00 1.00 H +ATOM 1676 CB ASP 109 -26.331 -0.101 3.894 1.00 1.00 C +ATOM 1677 CG ASP 109 -26.253 -1.628 3.954 1.00 1.00 C +ATOM 1678 OD1 ASP 109 -26.298 -2.222 2.809 1.00 1.00 O +ATOM 1679 OD2 ASP 109 -26.156 -2.220 5.039 1.00 1.00 O +ATOM 1683 HB2 ASP 109 -26.072 0.301 4.873 1.00 1.00 H +ATOM 1684 HB3 ASP 109 -27.363 0.189 3.693 1.00 1.00 H +ATOM 1680 OXT ASP 109 -26.770 2.515 3.170 1.00 1.00 O +TER +END diff --git a/Mobi/data/stdout2 b/Mobi/data/stdout2 new file mode 100644 index 0000000..fa2f96a --- /dev/null +++ b/Mobi/data/stdout2 @@ -0,0 +1,1695 @@ +SEQRES 0 109 GLY SER GLY ASN SER LEU GLU LYS HIS SER TRP TYR HIS +SEQRES 1 109 GLY PRO VAL SER ARG ASN ALA ALA GLU TYR LEU LEU SER +SEQRES 2 109 SER GLY ILE ASN GLY SER PHE LEU VAL ARG GLU SER GLU +SEQRES 3 109 SER SER PRO GLY GLN ARG SER ILE SER LEU ARG TYR GLU +SEQRES 4 109 GLY ARG VAL TYR HIS TYR ARG ILE ASN THR ALA SER ASP +SEQRES 5 109 GLY LYS LEU TYR VAL SER SER GLU SER ARG PHE ASN THR +SEQRES 6 109 LEU ALA GLU LEU VAL HIS HIS HIS SER THR VAL ALA ASP +SEQRES 7 109 GLY LEU ILE THR THR LEU HIS TYR PRO ALA PRO LYS ARG +SEQRES 9 109 GLY ILE HIS ARG ASP +ATOM 1 N GLY 1 6.667 -1.830 0.886 1.00 1.00 N +ATOM 2 CA GLY 1 7.406 -1.578 2.111 1.00 1.00 C +ATOM 3 C GLY 1 6.718 -0.502 2.954 1.00 1.00 C +ATOM 4 O GLY 1 5.584 -0.684 3.394 1.00 1.00 O +ATOM 5 H1 GLY 1 5.687 -1.975 1.104 1.00 1.00 H +ATOM 6 H2 GLY 1 6.761 -1.035 0.265 1.00 1.00 H +ATOM 7 H3 GLY 1 7.037 -2.658 0.432 1.00 1.00 H +ATOM 8 HA2 GLY 1 7.486 -2.500 2.687 1.00 1.00 H +ATOM 9 HA3 GLY 1 8.421 -1.262 1.870 1.00 1.00 H +ATOM 10 N SER 2 7.433 0.596 3.153 1.00 1.00 N +ATOM 11 CA SER 2 6.905 1.700 3.935 1.00 1.00 C +ATOM 12 C SER 2 5.947 2.534 3.081 1.00 1.00 C +ATOM 13 O SER 2 4.778 2.696 3.431 1.00 1.00 O +ATOM 16 H SER 2 8.354 0.735 2.792 1.00 1.00 H +ATOM 17 HA SER 2 6.373 1.238 4.765 1.00 1.00 H +ATOM 14 CB SER 2 8.034 2.578 4.479 1.00 1.00 C +ATOM 15 OG SER 2 7.536 3.694 5.212 1.00 1.00 O +ATOM 18 HB2 SER 2 8.680 1.980 5.123 1.00 1.00 H +ATOM 19 HB3 SER 2 8.647 2.933 3.651 1.00 1.00 H +ATOM 20 HG SER 2 6.705 4.044 4.781 1.00 1.00 H +ATOM 21 N GLY 3 6.477 3.045 1.981 1.00 1.00 N +ATOM 22 CA GLY 3 5.684 3.859 1.075 1.00 1.00 C +ATOM 23 C GLY 3 4.834 2.983 0.153 1.00 1.00 C +ATOM 24 O GLY 3 3.606 3.058 0.179 1.00 1.00 O +ATOM 25 H GLY 3 7.429 2.910 1.703 1.00 1.00 H +ATOM 26 HA2 GLY 3 5.040 4.523 1.649 1.00 1.00 H +ATOM 27 HA3 GLY 3 6.341 4.490 0.477 1.00 1.00 H +ATOM 28 N ASN 4 5.520 2.173 -0.640 1.00 1.00 N +ATOM 29 CA ASN 4 4.842 1.283 -1.568 1.00 1.00 C +ATOM 30 C ASN 4 3.653 2.016 -2.192 1.00 1.00 C +ATOM 31 O ASN 4 3.804 2.712 -3.194 1.00 1.00 O +ATOM 36 H ASN 4 6.518 2.118 -0.655 1.00 1.00 H +ATOM 37 HA ASN 4 5.597 1.011 -2.305 1.00 1.00 H +ATOM 32 CB ASN 4 4.310 0.042 -0.851 1.00 1.00 C +ATOM 33 CG ASN 4 4.066 0.326 0.632 1.00 1.00 C +ATOM 34 OD1 ASN 4 4.955 0.721 1.369 1.00 1.00 O +ATOM 35 ND2 ASN 4 2.816 0.102 1.027 1.00 1.00 N +ATOM 38 HB2 ASN 4 3.380 -0.284 -1.321 1.00 1.00 H +ATOM 39 HB3 ASN 4 5.023 -0.777 -0.955 1.00 1.00 H +ATOM 40 HD21 ASN 4 2.134 -0.223 0.371 1.00 1.00 H +ATOM 41 HD22 ASN 4 2.558 0.259 1.981 1.00 1.00 H +ATOM 42 N SER 5 2.495 1.833 -1.574 1.00 1.00 N +ATOM 43 CA SER 5 1.280 2.466 -2.055 1.00 1.00 C +ATOM 44 C SER 5 0.520 3.097 -0.887 1.00 1.00 C +ATOM 45 O SER 5 0.704 2.702 0.264 1.00 1.00 O +ATOM 48 H SER 5 2.380 1.263 -0.759 1.00 1.00 H +ATOM 49 HA SER 5 1.613 3.234 -2.754 1.00 1.00 H +ATOM 46 CB SER 5 0.388 1.463 -2.789 1.00 1.00 C +ATOM 47 OG SER 5 -0.374 0.667 -1.885 1.00 1.00 O +ATOM 50 HB2 SER 5 -0.286 1.998 -3.459 1.00 1.00 H +ATOM 51 HB3 SER 5 1.006 0.814 -3.411 1.00 1.00 H +ATOM 52 HG SER 5 -0.011 0.758 -0.958 1.00 1.00 H +ATOM 53 N LEU 6 -0.318 4.067 -1.223 1.00 1.00 N +ATOM 54 CA LEU 6 -1.107 4.756 -0.216 1.00 1.00 C +ATOM 55 C LEU 6 -2.208 5.567 -0.903 1.00 1.00 C +ATOM 56 O LEU 6 -2.222 5.688 -2.126 1.00 1.00 O +ATOM 61 H LEU 6 -0.463 4.382 -2.161 1.00 1.00 H +ATOM 62 HA LEU 6 -1.577 3.996 0.408 1.00 1.00 H +ATOM 57 CB LEU 6 -0.205 5.591 0.693 1.00 1.00 C +ATOM 58 CG LEU 6 0.649 6.654 -0.002 1.00 1.00 C +ATOM 59 CD1 LEU 6 1.034 7.770 0.970 1.00 1.00 C +ATOM 60 CD2 LEU 6 1.874 6.026 -0.667 1.00 1.00 C +ATOM 63 HB2 LEU 6 -0.828 6.084 1.439 1.00 1.00 H +ATOM 64 HB3 LEU 6 0.461 4.915 1.231 1.00 1.00 H +ATOM 65 HG LEU 6 0.051 7.109 -0.792 1.00 1.00 H +ATOM 66 HD11 LEU 6 0.226 7.924 1.686 1.00 1.00 H +ATOM 67 HD12 LEU 6 1.943 7.491 1.503 1.00 1.00 H +ATOM 68 HD13 LEU 6 1.208 8.692 0.415 1.00 1.00 H +ATOM 69 HD21 LEU 6 2.102 5.075 -0.185 1.00 1.00 H +ATOM 70 HD22 LEU 6 1.668 5.856 -1.724 1.00 1.00 H +ATOM 71 HD23 LEU 6 2.727 6.697 -0.566 1.00 1.00 H +ATOM 72 N GLU 7 -3.100 6.104 -0.085 1.00 1.00 N +ATOM 73 CA GLU 7 -4.202 6.901 -0.600 1.00 1.00 C +ATOM 74 C GLU 7 -3.703 8.281 -1.029 1.00 1.00 C +ATOM 75 O GLU 7 -4.080 9.293 -0.440 1.00 1.00 O +ATOM 81 H GLU 7 -3.082 6.001 0.909 1.00 1.00 H +ATOM 82 HA GLU 7 -4.574 6.355 -1.466 1.00 1.00 H +ATOM 76 CB GLU 7 -5.322 7.021 0.435 1.00 1.00 C +ATOM 77 CG GLU 7 -6.601 6.337 -0.057 1.00 1.00 C +ATOM 78 CD GLU 7 -7.653 6.280 1.051 1.00 1.00 C +ATOM 79 OE1 GLU 7 -8.164 7.419 1.378 1.00 1.00 O +ATOM 80 OE2 GLU 7 -7.955 5.192 1.564 1.00 1.00 O +ATOM 83 HB2 GLU 7 -5.004 6.570 1.375 1.00 1.00 H +ATOM 84 HB3 GLU 7 -5.523 8.072 0.639 1.00 1.00 H +ATOM 85 HG2 GLU 7 -6.999 6.879 -0.915 1.00 1.00 H +ATOM 86 HG3 GLU 7 -6.368 5.328 -0.396 1.00 1.00 H +ATOM 87 N LYS 8 -2.861 8.280 -2.052 1.00 1.00 N +ATOM 88 CA LYS 8 -2.307 9.519 -2.568 1.00 1.00 C +ATOM 89 C LYS 8 -3.434 10.534 -2.768 1.00 1.00 C +ATOM 90 O LYS 8 -3.808 11.245 -1.836 1.00 1.00 O +ATOM 96 H LYS 8 -2.560 7.451 -2.525 1.00 1.00 H +ATOM 97 HA LYS 8 -1.622 9.908 -1.815 1.00 1.00 H +ATOM 91 CB LYS 8 -1.486 9.255 -3.831 1.00 1.00 C +ATOM 92 CG LYS 8 -1.098 10.566 -4.518 1.00 1.00 C +ATOM 93 CD LYS 8 -0.546 11.572 -3.507 1.00 1.00 C +ATOM 94 CE LYS 8 0.820 11.125 -2.980 1.00 1.00 C +ATOM 95 NZ LYS 8 0.657 10.118 -1.907 1.00 1.00 N +ATOM 98 HB2 LYS 8 -0.586 8.695 -3.575 1.00 1.00 H +ATOM 99 HB3 LYS 8 -2.061 8.636 -4.521 1.00 1.00 H +ATOM 100 HG2 LYS 8 -0.352 10.370 -5.288 1.00 1.00 H +ATOM 101 HG3 LYS 8 -1.969 10.989 -5.019 1.00 1.00 H +ATOM 102 HD2 LYS 8 -0.454 12.552 -3.976 1.00 1.00 H +ATOM 103 HD3 LYS 8 -1.243 11.679 -2.677 1.00 1.00 H +ATOM 104 HE2 LYS 8 1.410 10.705 -3.794 1.00 1.00 H +ATOM 105 HE3 LYS 8 1.369 11.986 -2.599 1.00 1.00 H +ATOM 106 HZ1 LYS 8 0.025 9.394 -2.217 1.00 1.00 H +ATOM 107 HZ2 LYS 8 1.538 9.684 -1.657 1.00 1.00 H +ATOM 108 HZ3 LYS 8 0.281 10.564 -1.083 1.00 1.00 H +ATOM 109 N HIS 9 -3.945 10.569 -3.990 1.00 1.00 N +ATOM 110 CA HIS 9 -5.023 11.485 -4.325 1.00 1.00 C +ATOM 111 C HIS 9 -6.337 10.710 -4.441 1.00 1.00 C +ATOM 112 O HIS 9 -6.387 9.517 -4.144 1.00 1.00 O +ATOM 119 H HIS 9 -3.635 9.988 -4.743 1.00 1.00 H +ATOM 120 HA HIS 9 -5.100 12.192 -3.499 1.00 1.00 H +ATOM 113 CB HIS 9 -4.689 12.277 -5.589 1.00 1.00 C +ATOM 114 CG HIS 9 -3.499 13.197 -5.442 1.00 1.00 C +ATOM 115 ND1 HIS 9 -2.829 13.368 -4.244 1.00 1.00 N +ATOM 116 CD2 HIS 9 -2.868 13.990 -6.354 1.00 1.00 C +ATOM 117 CE1 HIS 9 -1.841 14.228 -4.437 1.00 1.00 C +ATOM 118 NE2 HIS 9 -1.867 14.614 -5.745 1.00 1.00 N +ATOM 121 HB2 HIS 9 -4.498 11.580 -6.404 1.00 1.00 H +ATOM 122 HB3 HIS 9 -5.558 12.869 -5.875 1.00 1.00 H +ATOM 123 HD1 HIS 9 -3.052 12.918 -3.378 1.00 1.00 H +ATOM 124 HD2 HIS 9 -3.140 14.094 -7.405 1.00 1.00 H +ATOM 125 HE1 HIS 9 -1.131 14.571 -3.684 1.00 1.00 H +ATOM 126 N SER 10 -7.369 11.419 -4.872 1.00 1.00 N +ATOM 127 CA SER 10 -8.680 10.814 -5.031 1.00 1.00 C +ATOM 128 C SER 10 -8.734 10.018 -6.337 1.00 1.00 C +ATOM 129 O SER 10 -9.802 9.563 -6.746 1.00 1.00 O +ATOM 132 H SER 10 -7.321 12.389 -5.111 1.00 1.00 H +ATOM 133 HA SER 10 -8.798 10.150 -4.173 1.00 1.00 H +ATOM 130 CB SER 10 -9.784 11.873 -5.008 1.00 1.00 C +ATOM 131 OG SER 10 -9.642 12.813 -6.070 1.00 1.00 O +ATOM 134 HB2 SER 10 -10.756 11.386 -5.083 1.00 1.00 H +ATOM 135 HB3 SER 10 -9.763 12.398 -4.055 1.00 1.00 H +ATOM 136 HG SER 10 -10.527 12.975 -6.505 1.00 1.00 H +ATOM 137 N TRP 11 -7.571 9.874 -6.953 1.00 1.00 N +ATOM 138 CA TRP 11 -7.472 9.141 -8.204 1.00 1.00 C +ATOM 139 C TRP 11 -6.454 8.015 -8.013 1.00 1.00 C +ATOM 140 O TRP 11 -6.213 7.229 -8.928 1.00 1.00 O +ATOM 151 H TRP 11 -6.708 10.247 -6.612 1.00 1.00 H +ATOM 152 HA TRP 11 -8.454 8.722 -8.423 1.00 1.00 H +ATOM 141 CB TRP 11 -7.118 10.077 -9.361 1.00 1.00 C +ATOM 142 CG TRP 11 -5.972 11.042 -9.053 1.00 1.00 C +ATOM 143 CD1 TRP 11 -6.033 12.371 -8.891 1.00 1.00 C +ATOM 144 CD2 TRP 11 -4.582 10.697 -8.877 1.00 1.00 C +ATOM 145 NE1 TRP 11 -4.789 12.905 -8.624 1.00 1.00 N +ATOM 146 CE2 TRP 11 -3.879 11.855 -8.614 1.00 1.00 C +ATOM 147 CE3 TRP 11 -3.941 9.447 -8.936 1.00 1.00 C +ATOM 148 CZ2 TRP 11 -2.497 11.879 -8.391 1.00 1.00 C +ATOM 149 CZ3 TRP 11 -2.559 9.488 -8.710 1.00 1.00 C +ATOM 150 CH2 TRP 11 -1.836 10.644 -8.445 1.00 1.00 C +ATOM 153 HB2 TRP 11 -6.851 9.476 -10.231 1.00 1.00 H +ATOM 154 HB3 TRP 11 -8.003 10.653 -9.631 1.00 1.00 H +ATOM 155 HD1 TRP 11 -6.950 12.956 -8.962 1.00 1.00 H +ATOM 156 HE1 TRP 11 -4.562 13.957 -8.452 1.00 1.00 H +ATOM 157 HE3 TRP 11 -4.472 8.518 -9.141 1.00 1.00 H +ATOM 158 HZ2 TRP 11 -1.964 12.807 -8.186 1.00 1.00 H +ATOM 159 HZ3 TRP 11 -2.011 8.546 -8.744 1.00 1.00 H +ATOM 160 HH2 TRP 11 -0.761 10.593 -8.279 1.00 1.00 H +ATOM 161 N TYR 12 -5.884 7.973 -6.818 1.00 1.00 N +ATOM 162 CA TYR 12 -4.896 6.955 -6.495 1.00 1.00 C +ATOM 163 C TYR 12 -5.421 6.005 -5.418 1.00 1.00 C +ATOM 164 O TYR 12 -5.271 6.270 -4.226 1.00 1.00 O +ATOM 173 H TYR 12 -6.085 8.615 -6.079 1.00 1.00 H +ATOM 174 HA TYR 12 -4.690 6.387 -7.403 1.00 1.00 H +ATOM 165 CB TYR 12 -3.680 7.706 -5.949 1.00 1.00 C +ATOM 166 CG TYR 12 -2.353 6.970 -6.144 1.00 1.00 C +ATOM 167 CD1 TYR 12 -2.304 5.596 -6.023 1.00 1.00 C +ATOM 168 CD2 TYR 12 -1.208 7.678 -6.442 1.00 1.00 C +ATOM 169 CE1 TYR 12 -1.056 4.901 -6.205 1.00 1.00 C +ATOM 170 CE2 TYR 12 0.040 6.983 -6.626 1.00 1.00 C +ATOM 171 CZ TYR 12 0.054 5.629 -6.498 1.00 1.00 C +ATOM 172 OH TYR 12 1.234 4.973 -6.672 1.00 1.00 O +ATOM 175 HB2 TYR 12 -3.617 8.681 -6.436 1.00 1.00 H +ATOM 176 HB3 TYR 12 -3.828 7.891 -4.885 1.00 1.00 H +ATOM 177 HD1 TYR 12 -3.209 5.035 -5.787 1.00 1.00 H +ATOM 178 HD2 TYR 12 -1.247 8.763 -6.538 1.00 1.00 H +ATOM 179 HE1 TYR 12 -1.003 3.817 -6.112 1.00 1.00 H +ATOM 180 HE2 TYR 12 0.953 7.530 -6.861 1.00 1.00 H +ATOM 181 HH TYR 12 1.063 4.006 -6.855 1.00 1.00 H +ATOM 182 N HIS 13 -6.023 4.918 -5.876 1.00 1.00 N +ATOM 183 CA HIS 13 -6.570 3.926 -4.966 1.00 1.00 C +ATOM 184 C HIS 13 -5.945 2.561 -5.259 1.00 1.00 C +ATOM 185 O HIS 13 -6.196 1.593 -4.541 1.00 1.00 O +ATOM 192 H HIS 13 -6.142 4.710 -6.847 1.00 1.00 H +ATOM 193 HA HIS 13 -6.290 4.236 -3.959 1.00 1.00 H +ATOM 186 CB HIS 13 -8.100 3.907 -5.038 1.00 1.00 C +ATOM 187 CG HIS 13 -8.645 3.601 -6.413 1.00 1.00 C +ATOM 188 ND1 HIS 13 -9.151 2.360 -6.759 1.00 1.00 N +ATOM 189 CD2 HIS 13 -8.760 4.387 -7.522 1.00 1.00 C +ATOM 190 CE1 HIS 13 -9.548 2.408 -8.023 1.00 1.00 C +ATOM 191 NE2 HIS 13 -9.304 3.665 -8.494 1.00 1.00 N +ATOM 194 HB2 HIS 13 -8.476 3.165 -4.335 1.00 1.00 H +ATOM 195 HB3 HIS 13 -8.481 4.876 -4.715 1.00 1.00 H +ATOM 196 HD1 HIS 13 -9.207 1.563 -6.159 1.00 1.00 H +ATOM 197 HD2 HIS 13 -8.455 5.431 -7.597 1.00 1.00 H +ATOM 198 HE1 HIS 13 -9.992 1.588 -8.586 1.00 1.00 H +ATOM 199 N GLY 14 -5.146 2.526 -6.314 1.00 1.00 N +ATOM 200 CA GLY 14 -4.483 1.295 -6.710 1.00 1.00 C +ATOM 201 C GLY 14 -4.730 0.992 -8.190 1.00 1.00 C +ATOM 202 O GLY 14 -5.206 1.849 -8.931 1.00 1.00 O +ATOM 203 H GLY 14 -4.948 3.318 -6.891 1.00 1.00 H +ATOM 204 HA2 GLY 14 -3.412 1.380 -6.526 1.00 1.00 H +ATOM 205 HA3 GLY 14 -4.846 0.469 -6.100 1.00 1.00 H +ATOM 206 N PRO 15 -4.387 -0.264 -8.583 1.00 1.00 N +ATOM 207 CA PRO 15 -4.565 -0.692 -9.960 1.00 1.00 C +ATOM 208 C PRO 15 -6.041 -0.963 -10.262 1.00 1.00 C +ATOM 209 O PRO 15 -6.715 -1.662 -9.506 1.00 1.00 O +ATOM 213 HA PRO 15 -4.287 0.034 -10.588 1.00 1.00 H +ATOM 210 CB PRO 15 -3.694 -1.928 -10.105 1.00 1.00 C +ATOM 211 CG PRO 15 -3.423 -2.415 -8.691 1.00 1.00 C +ATOM 212 CD PRO 15 -3.820 -1.306 -7.731 1.00 1.00 C +ATOM 214 HB2 PRO 15 -4.196 -2.694 -10.694 1.00 1.00 H +ATOM 215 HB3 PRO 15 -2.762 -1.690 -10.621 1.00 1.00 H +ATOM 216 HG2 PRO 15 -3.994 -3.322 -8.485 1.00 1.00 H +ATOM 217 HG3 PRO 15 -2.369 -2.667 -8.569 1.00 1.00 H +ATOM 218 HD2 PRO 15 -4.548 -1.658 -6.999 1.00 1.00 H +ATOM 219 HD3 PRO 15 -2.960 -0.937 -7.174 1.00 1.00 H +ATOM 220 N VAL 16 -6.501 -0.397 -11.368 1.00 1.00 N +ATOM 221 CA VAL 16 -7.883 -0.568 -11.780 1.00 1.00 C +ATOM 222 C VAL 16 -7.921 -1.121 -13.205 1.00 1.00 C +ATOM 223 O VAL 16 -7.208 -0.637 -14.082 1.00 1.00 O +ATOM 227 H VAL 16 -5.944 0.171 -11.976 1.00 1.00 H +ATOM 228 HA VAL 16 -8.337 -1.297 -11.108 1.00 1.00 H +ATOM 224 CB VAL 16 -8.641 0.752 -11.630 1.00 1.00 C +ATOM 225 CG1 VAL 16 -8.072 1.821 -12.563 1.00 1.00 C +ATOM 226 CG2 VAL 16 -10.139 0.554 -11.871 1.00 1.00 C +ATOM 229 HB VAL 16 -8.510 1.099 -10.605 1.00 1.00 H +ATOM 230 HG11 VAL 16 -7.860 1.378 -13.537 1.00 1.00 H +ATOM 231 HG12 VAL 16 -8.798 2.625 -12.681 1.00 1.00 H +ATOM 232 HG13 VAL 16 -7.151 2.222 -12.139 1.00 1.00 H +ATOM 233 HG21 VAL 16 -10.419 -0.464 -11.601 1.00 1.00 H +ATOM 234 HG22 VAL 16 -10.702 1.259 -11.260 1.00 1.00 H +ATOM 235 HG23 VAL 16 -10.363 0.727 -12.924 1.00 1.00 H +ATOM 236 N SER 17 -8.762 -2.127 -13.393 1.00 1.00 N +ATOM 237 CA SER 17 -8.903 -2.751 -14.697 1.00 1.00 C +ATOM 238 C SER 17 -9.495 -1.753 -15.693 1.00 1.00 C +ATOM 239 O SER 17 -10.416 -1.008 -15.359 1.00 1.00 O +ATOM 242 H SER 17 -9.340 -2.516 -12.675 1.00 1.00 H +ATOM 243 HA SER 17 -7.892 -3.034 -14.993 1.00 1.00 H +ATOM 240 CB SER 17 -9.778 -4.004 -14.617 1.00 1.00 C +ATOM 241 OG SER 17 -10.934 -3.798 -13.810 1.00 1.00 O +ATOM 244 HB2 SER 17 -10.086 -4.297 -15.621 1.00 1.00 H +ATOM 245 HB3 SER 17 -9.195 -4.829 -14.209 1.00 1.00 H +ATOM 246 HG SER 17 -11.029 -2.825 -13.591 1.00 1.00 H +ATOM 247 N ARG 18 -8.944 -1.770 -16.897 1.00 1.00 N +ATOM 248 CA ARG 18 -9.406 -0.874 -17.946 1.00 1.00 C +ATOM 249 C ARG 18 -10.842 -1.220 -18.343 1.00 1.00 C +ATOM 250 O ARG 18 -11.651 -0.328 -18.602 1.00 1.00 O +ATOM 258 H ARG 18 -8.195 -2.378 -17.163 1.00 1.00 H +ATOM 259 HA ARG 18 -9.350 0.121 -17.507 1.00 1.00 H +ATOM 251 CB ARG 18 -8.508 -0.963 -19.181 1.00 1.00 C +ATOM 252 CG ARG 18 -9.194 -1.742 -20.305 1.00 1.00 C +ATOM 253 CD ARG 18 -8.273 -1.881 -21.517 1.00 1.00 C +ATOM 254 NE ARG 18 -9.076 -2.089 -22.742 1.00 1.00 N +ATOM 255 CZ ARG 18 -9.269 -3.282 -23.321 1.00 1.00 C +ATOM 256 NH1 ARG 18 -8.717 -4.382 -22.790 1.00 1.00 N +ATOM 257 NH2 ARG 18 -10.014 -3.376 -24.432 1.00 1.00 N +ATOM 260 HB2 ARG 18 -8.261 0.042 -19.528 1.00 1.00 H +ATOM 261 HB3 ARG 18 -7.569 -1.448 -18.918 1.00 1.00 H +ATOM 262 HG2 ARG 18 -9.479 -2.729 -19.944 1.00 1.00 H +ATOM 263 HG3 ARG 18 -10.112 -1.232 -20.598 1.00 1.00 H +ATOM 264 HD2 ARG 18 -7.658 -0.987 -21.623 1.00 1.00 H +ATOM 265 HD3 ARG 18 -7.592 -2.720 -21.373 1.00 1.00 H +ATOM 266 HE ARG 18 -9.503 -1.289 -23.165 1.00 1.00 H +ATOM 267 HH11 ARG 18 -8.161 -4.311 -21.961 1.00 1.00 H +ATOM 268 HH12 ARG 18 -8.860 -5.272 -23.221 1.00 1.00 H +ATOM 269 HH21 ARG 18 -10.425 -2.555 -24.828 1.00 1.00 H +ATOM 270 HH22 ARG 18 -10.157 -4.266 -24.863 1.00 1.00 H +ATOM 271 N ASN 19 -11.118 -2.516 -18.377 1.00 1.00 N +ATOM 272 CA ASN 19 -12.444 -2.990 -18.739 1.00 1.00 C +ATOM 273 C ASN 19 -13.471 -2.404 -17.768 1.00 1.00 C +ATOM 274 O ASN 19 -14.324 -1.611 -18.166 1.00 1.00 O +ATOM 279 H ASN 19 -10.456 -3.233 -18.165 1.00 1.00 H +ATOM 280 HA ASN 19 -12.598 -2.653 -19.764 1.00 1.00 H +ATOM 275 CB ASN 19 -12.526 -4.515 -18.651 1.00 1.00 C +ATOM 276 CG ASN 19 -11.948 -5.168 -19.908 1.00 1.00 C +ATOM 277 OD1 ASN 19 -12.501 -5.084 -20.992 1.00 1.00 O +ATOM 278 ND2 ASN 19 -10.808 -5.821 -19.702 1.00 1.00 N +ATOM 281 HB2 ASN 19 -11.981 -4.861 -17.773 1.00 1.00 H +ATOM 282 HB3 ASN 19 -13.565 -4.820 -18.523 1.00 1.00 H +ATOM 283 HD21 ASN 19 -10.407 -5.852 -18.786 1.00 1.00 H +ATOM 284 HD22 ASN 19 -10.352 -6.282 -20.463 1.00 1.00 H +ATOM 285 N ALA 20 -13.358 -2.818 -16.515 1.00 1.00 N +ATOM 286 CA ALA 20 -14.267 -2.345 -15.485 1.00 1.00 C +ATOM 287 C ALA 20 -14.209 -0.816 -15.423 1.00 1.00 C +ATOM 288 O ALA 20 -15.212 -0.165 -15.133 1.00 1.00 O +ATOM 290 H ALA 20 -12.663 -3.463 -16.200 1.00 1.00 H +ATOM 291 HA ALA 20 -15.276 -2.650 -15.766 1.00 1.00 H +ATOM 289 CB ALA 20 -13.910 -2.996 -14.148 1.00 1.00 C +ATOM 292 HB1 ALA 20 -13.043 -3.646 -14.282 1.00 1.00 H +ATOM 293 HB2 ALA 20 -13.673 -2.222 -13.418 1.00 1.00 H +ATOM 294 HB3 ALA 20 -14.755 -3.586 -13.794 1.00 1.00 H +ATOM 295 N ALA 21 -13.025 -0.289 -15.700 1.00 1.00 N +ATOM 296 CA ALA 21 -12.823 1.150 -15.679 1.00 1.00 C +ATOM 297 C ALA 21 -13.917 1.826 -16.506 1.00 1.00 C +ATOM 298 O ALA 21 -14.728 2.582 -15.972 1.00 1.00 O +ATOM 300 H ALA 21 -12.215 -0.826 -15.934 1.00 1.00 H +ATOM 301 HA ALA 21 -12.905 1.481 -14.643 1.00 1.00 H +ATOM 299 CB ALA 21 -11.420 1.476 -16.191 1.00 1.00 C +ATOM 302 HB1 ALA 21 -11.018 0.612 -16.721 1.00 1.00 H +ATOM 303 HB2 ALA 21 -11.469 2.328 -16.868 1.00 1.00 H +ATOM 304 HB3 ALA 21 -10.772 1.718 -15.348 1.00 1.00 H +ATOM 305 N GLU 22 -13.907 1.529 -17.797 1.00 1.00 N +ATOM 306 CA GLU 22 -14.890 2.100 -18.704 1.00 1.00 C +ATOM 307 C GLU 22 -16.303 1.698 -18.277 1.00 1.00 C +ATOM 308 O GLU 22 -17.244 2.473 -18.430 1.00 1.00 O +ATOM 314 H GLU 22 -13.246 0.913 -18.225 1.00 1.00 H +ATOM 315 HA GLU 22 -14.769 3.178 -18.620 1.00 1.00 H +ATOM 309 CB GLU 22 -14.612 1.676 -20.149 1.00 1.00 C +ATOM 310 CG GLU 22 -13.424 0.715 -20.220 1.00 1.00 C +ATOM 311 CD GLU 22 -13.160 0.276 -21.662 1.00 1.00 C +ATOM 312 OE1 GLU 22 -14.150 0.194 -22.421 1.00 1.00 O +ATOM 313 OE2 GLU 22 -11.974 0.035 -21.973 1.00 1.00 O +ATOM 316 HB2 GLU 22 -15.498 1.198 -20.567 1.00 1.00 H +ATOM 317 HB3 GLU 22 -14.409 2.558 -20.757 1.00 1.00 H +ATOM 318 HG2 GLU 22 -12.535 1.199 -19.814 1.00 1.00 H +ATOM 319 HG3 GLU 22 -13.623 -0.160 -19.601 1.00 1.00 H +ATOM 320 N TYR 23 -16.406 0.487 -17.751 1.00 1.00 N +ATOM 321 CA TYR 23 -17.688 -0.027 -17.299 1.00 1.00 C +ATOM 322 C TYR 23 -18.210 0.772 -16.104 1.00 1.00 C +ATOM 323 O TYR 23 -19.190 1.506 -16.222 1.00 1.00 O +ATOM 332 H TYR 23 -15.635 -0.138 -17.630 1.00 1.00 H +ATOM 333 HA TYR 23 -18.396 0.064 -18.124 1.00 1.00 H +ATOM 324 CB TYR 23 -17.434 -1.471 -16.861 1.00 1.00 C +ATOM 325 CG TYR 23 -18.695 -2.220 -16.426 1.00 1.00 C +ATOM 326 CD1 TYR 23 -19.215 -2.021 -15.163 1.00 1.00 C +ATOM 327 CD2 TYR 23 -19.312 -3.095 -17.297 1.00 1.00 C +ATOM 328 CE1 TYR 23 -20.401 -2.727 -14.753 1.00 1.00 C +ATOM 329 CE2 TYR 23 -20.500 -3.800 -16.888 1.00 1.00 C +ATOM 330 CZ TYR 23 -20.985 -3.581 -15.637 1.00 1.00 C +ATOM 331 OH TYR 23 -22.105 -4.248 -15.249 1.00 1.00 O +ATOM 334 HB2 TYR 23 -16.967 -2.013 -17.684 1.00 1.00 H +ATOM 335 HB3 TYR 23 -16.722 -1.468 -16.036 1.00 1.00 H +ATOM 336 HD1 TYR 23 -18.726 -1.331 -14.476 1.00 1.00 H +ATOM 337 HD2 TYR 23 -18.902 -3.252 -18.294 1.00 1.00 H +ATOM 338 HE1 TYR 23 -20.822 -2.580 -13.759 1.00 1.00 H +ATOM 339 HE2 TYR 23 -20.997 -4.493 -17.565 1.00 1.00 H +ATOM 340 HH TYR 23 -22.117 -5.162 -15.654 1.00 1.00 H +ATOM 341 N LEU 24 -17.530 0.605 -14.980 1.00 1.00 N +ATOM 342 CA LEU 24 -17.912 1.301 -13.762 1.00 1.00 C +ATOM 343 C LEU 24 -18.207 2.765 -14.091 1.00 1.00 C +ATOM 344 O LEU 24 -19.259 3.288 -13.724 1.00 1.00 O +ATOM 349 H LEU 24 -16.733 0.006 -14.892 1.00 1.00 H +ATOM 350 HA LEU 24 -18.827 0.838 -13.395 1.00 1.00 H +ATOM 345 CB LEU 24 -16.845 1.116 -12.681 1.00 1.00 C +ATOM 346 CG LEU 24 -17.362 0.931 -11.253 1.00 1.00 C +ATOM 347 CD1 LEU 24 -16.224 0.557 -10.302 1.00 1.00 C +ATOM 348 CD2 LEU 24 -18.121 2.172 -10.780 1.00 1.00 C +ATOM 351 HB2 LEU 24 -16.238 0.249 -12.942 1.00 1.00 H +ATOM 352 HB3 LEU 24 -16.184 1.983 -12.698 1.00 1.00 H +ATOM 353 HG LEU 24 -18.069 0.102 -11.251 1.00 1.00 H +ATOM 354 HD11 LEU 24 -15.302 1.037 -10.633 1.00 1.00 H +ATOM 355 HD12 LEU 24 -16.468 0.894 -9.293 1.00 1.00 H +ATOM 356 HD13 LEU 24 -16.091 -0.524 -10.302 1.00 1.00 H +ATOM 357 HD21 LEU 24 -17.529 3.063 -10.993 1.00 1.00 H +ATOM 358 HD22 LEU 24 -19.075 2.236 -11.303 1.00 1.00 H +ATOM 359 HD23 LEU 24 -18.298 2.103 -9.707 1.00 1.00 H +ATOM 360 N LEU 25 -17.260 3.389 -14.777 1.00 1.00 N +ATOM 361 CA LEU 25 -17.406 4.783 -15.158 1.00 1.00 C +ATOM 362 C LEU 25 -18.544 4.914 -16.172 1.00 1.00 C +ATOM 363 O LEU 25 -18.301 5.113 -17.361 1.00 1.00 O +ATOM 368 H LEU 25 -16.407 2.956 -15.071 1.00 1.00 H +ATOM 369 HA LEU 25 -17.675 5.340 -14.261 1.00 1.00 H +ATOM 364 CB LEU 25 -16.072 5.344 -15.656 1.00 1.00 C +ATOM 365 CG LEU 25 -16.150 6.638 -16.468 1.00 1.00 C +ATOM 366 CD1 LEU 25 -15.304 7.740 -15.829 1.00 1.00 C +ATOM 367 CD2 LEU 25 -15.763 6.391 -17.929 1.00 1.00 C +ATOM 370 HB2 LEU 25 -15.430 5.520 -14.792 1.00 1.00 H +ATOM 371 HB3 LEU 25 -15.584 4.584 -16.264 1.00 1.00 H +ATOM 372 HG LEU 25 -17.185 6.981 -16.465 1.00 1.00 H +ATOM 373 HD11 LEU 25 -14.676 7.310 -15.049 1.00 1.00 H +ATOM 374 HD12 LEU 25 -14.673 8.201 -16.590 1.00 1.00 H +ATOM 375 HD13 LEU 25 -15.959 8.495 -15.394 1.00 1.00 H +ATOM 376 HD21 LEU 25 -15.591 5.325 -18.084 1.00 1.00 H +ATOM 377 HD22 LEU 25 -16.569 6.729 -18.580 1.00 1.00 H +ATOM 378 HD23 LEU 25 -14.851 6.943 -18.161 1.00 1.00 H +ATOM 379 N SER 26 -19.762 4.796 -15.665 1.00 1.00 N +ATOM 380 CA SER 26 -20.938 4.899 -16.510 1.00 1.00 C +ATOM 381 C SER 26 -21.521 6.312 -16.429 1.00 1.00 C +ATOM 382 O SER 26 -22.177 6.660 -15.450 1.00 1.00 O +ATOM 385 H SER 26 -19.951 4.635 -14.696 1.00 1.00 H +ATOM 386 HA SER 26 -20.587 4.688 -17.521 1.00 1.00 H +ATOM 383 CB SER 26 -21.995 3.867 -16.113 1.00 1.00 C +ATOM 384 OG SER 26 -23.056 3.796 -17.061 1.00 1.00 O +ATOM 387 HB2 SER 26 -21.527 2.886 -16.019 1.00 1.00 H +ATOM 388 HB3 SER 26 -22.400 4.121 -15.133 1.00 1.00 H +ATOM 389 HG SER 26 -22.951 2.984 -17.633 1.00 1.00 H +ATOM 390 N SER 27 -21.257 7.087 -17.471 1.00 1.00 N +ATOM 391 CA SER 27 -21.746 8.454 -17.529 1.00 1.00 C +ATOM 392 C SER 27 -21.117 9.283 -16.407 1.00 1.00 C +ATOM 393 O SER 27 -20.059 9.883 -16.594 1.00 1.00 O +ATOM 396 H SER 27 -20.721 6.795 -18.263 1.00 1.00 H +ATOM 397 HA SER 27 -21.436 8.830 -18.504 1.00 1.00 H +ATOM 394 CB SER 27 -23.272 8.497 -17.429 1.00 1.00 C +ATOM 395 OG SER 27 -23.762 9.831 -17.309 1.00 1.00 O +ATOM 398 HB2 SER 27 -23.707 8.029 -18.312 1.00 1.00 H +ATOM 399 HB3 SER 27 -23.595 7.914 -16.567 1.00 1.00 H +ATOM 400 HG SER 27 -23.246 10.323 -16.609 1.00 1.00 H +ATOM 401 N GLY 28 -21.794 9.290 -15.269 1.00 1.00 N +ATOM 402 CA GLY 28 -21.314 10.037 -14.118 1.00 1.00 C +ATOM 403 C GLY 28 -21.032 11.495 -14.488 1.00 1.00 C +ATOM 404 O GLY 28 -21.948 12.314 -14.535 1.00 1.00 O +ATOM 405 H GLY 28 -22.652 8.800 -15.126 1.00 1.00 H +ATOM 406 HA2 GLY 28 -22.055 9.996 -13.320 1.00 1.00 H +ATOM 407 HA3 GLY 28 -20.405 9.572 -13.734 1.00 1.00 H +ATOM 408 N ILE 29 -19.761 11.772 -14.741 1.00 1.00 N +ATOM 409 CA ILE 29 -19.347 13.116 -15.106 1.00 1.00 C +ATOM 410 C ILE 29 -18.920 13.133 -16.574 1.00 1.00 C +ATOM 411 O ILE 29 -18.497 12.111 -17.113 1.00 1.00 O +ATOM 416 H ILE 29 -19.023 11.099 -14.702 1.00 1.00 H +ATOM 417 HA ILE 29 -20.213 13.767 -14.991 1.00 1.00 H +ATOM 412 CB ILE 29 -18.270 13.623 -14.145 1.00 1.00 C +ATOM 413 CG1 ILE 29 -17.819 12.516 -13.191 1.00 1.00 C +ATOM 414 CG2 ILE 29 -18.747 14.868 -13.394 1.00 1.00 C +ATOM 415 CD1 ILE 29 -16.777 13.036 -12.200 1.00 1.00 C +ATOM 418 HB ILE 29 -17.400 13.916 -14.732 1.00 1.00 H +ATOM 419 HG12 ILE 29 -18.682 12.127 -12.648 1.00 1.00 H +ATOM 420 HG13 ILE 29 -17.402 11.687 -13.762 1.00 1.00 H +ATOM 421 HG21 ILE 29 -19.782 15.082 -13.664 1.00 1.00 H +ATOM 422 HG22 ILE 29 -18.680 14.692 -12.320 1.00 1.00 H +ATOM 423 HG23 ILE 29 -18.119 15.718 -13.664 1.00 1.00 H +ATOM 424 HD11 ILE 29 -16.050 13.653 -12.728 1.00 1.00 H +ATOM 425 HD12 ILE 29 -17.270 13.632 -11.432 1.00 1.00 H +ATOM 426 HD13 ILE 29 -16.266 12.192 -11.733 1.00 1.00 H +ATOM 427 N ASN 30 -19.044 14.304 -17.180 1.00 1.00 N +ATOM 428 CA ASN 30 -18.675 14.467 -18.576 1.00 1.00 C +ATOM 429 C ASN 30 -17.152 14.538 -18.692 1.00 1.00 C +ATOM 430 O ASN 30 -16.614 14.662 -19.791 1.00 1.00 O +ATOM 435 H ASN 30 -19.388 15.131 -16.734 1.00 1.00 H +ATOM 436 HA ASN 30 -19.093 13.600 -19.086 1.00 1.00 H +ATOM 431 CB ASN 30 -19.253 15.764 -19.150 1.00 1.00 C +ATOM 432 CG ASN 30 -20.781 15.760 -19.080 1.00 1.00 C +ATOM 433 OD1 ASN 30 -21.466 15.189 -19.914 1.00 1.00 O +ATOM 434 ND2 ASN 30 -21.277 16.429 -18.043 1.00 1.00 N +ATOM 437 HB2 ASN 30 -18.862 16.617 -18.597 1.00 1.00 H +ATOM 438 HB3 ASN 30 -18.933 15.881 -20.185 1.00 1.00 H +ATOM 439 HD21 ASN 30 -20.660 16.876 -17.395 1.00 1.00 H +ATOM 440 HD22 ASN 30 -22.267 16.485 -17.911 1.00 1.00 H +ATOM 441 N GLY 31 -16.499 14.456 -17.543 1.00 1.00 N +ATOM 442 CA GLY 31 -15.047 14.508 -17.501 1.00 1.00 C +ATOM 443 C GLY 31 -14.519 14.009 -16.155 1.00 1.00 C +ATOM 444 O GLY 31 -14.727 14.649 -15.125 1.00 1.00 O +ATOM 445 H GLY 31 -16.944 14.356 -16.652 1.00 1.00 H +ATOM 446 HA2 GLY 31 -14.634 13.899 -18.305 1.00 1.00 H +ATOM 447 HA3 GLY 31 -14.711 15.530 -17.671 1.00 1.00 H +ATOM 448 N SER 32 -13.844 12.870 -16.205 1.00 1.00 N +ATOM 449 CA SER 32 -13.283 12.278 -15.003 1.00 1.00 C +ATOM 450 C SER 32 -12.071 11.415 -15.359 1.00 1.00 C +ATOM 451 O SER 32 -12.063 10.748 -16.393 1.00 1.00 O +ATOM 454 H SER 32 -13.677 12.356 -17.047 1.00 1.00 H +ATOM 455 HA SER 32 -12.982 13.120 -14.380 1.00 1.00 H +ATOM 452 CB SER 32 -14.329 11.445 -14.261 1.00 1.00 C +ATOM 453 OG SER 32 -14.425 11.808 -12.886 1.00 1.00 O +ATOM 456 HB2 SER 32 -15.301 11.572 -14.738 1.00 1.00 H +ATOM 457 HB3 SER 32 -14.073 10.387 -14.339 1.00 1.00 H +ATOM 458 HG SER 32 -13.545 12.155 -12.561 1.00 1.00 H +ATOM 459 N PHE 33 -11.077 11.455 -14.485 1.00 1.00 N +ATOM 460 CA PHE 33 -9.864 10.685 -14.695 1.00 1.00 C +ATOM 461 C PHE 33 -9.597 9.748 -13.514 1.00 1.00 C +ATOM 462 O PHE 33 -10.110 9.966 -12.417 1.00 1.00 O +ATOM 470 H PHE 33 -11.092 12.001 -13.646 1.00 1.00 H +ATOM 471 HA PHE 33 -10.009 10.094 -15.599 1.00 1.00 H +ATOM 463 CB PHE 33 -8.711 11.686 -14.806 1.00 1.00 C +ATOM 464 CG PHE 33 -8.969 12.821 -15.799 1.00 1.00 C +ATOM 465 CD1 PHE 33 -10.082 13.592 -15.678 1.00 1.00 C +ATOM 466 CD2 PHE 33 -8.082 13.059 -16.803 1.00 1.00 C +ATOM 467 CE1 PHE 33 -10.320 14.647 -16.599 1.00 1.00 C +ATOM 468 CE2 PHE 33 -8.319 14.113 -17.725 1.00 1.00 C +ATOM 469 CZ PHE 33 -9.433 14.884 -17.604 1.00 1.00 C +ATOM 472 HB2 PHE 33 -8.519 12.114 -13.822 1.00 1.00 H +ATOM 473 HB3 PHE 33 -7.808 11.153 -15.103 1.00 1.00 H +ATOM 474 HD1 PHE 33 -10.792 13.401 -14.873 1.00 1.00 H +ATOM 475 HD2 PHE 33 -7.190 12.441 -16.900 1.00 1.00 H +ATOM 476 HE1 PHE 33 -11.212 15.264 -16.503 1.00 1.00 H +ATOM 477 HE2 PHE 33 -7.609 14.304 -18.530 1.00 1.00 H +ATOM 478 HZ PHE 33 -9.615 15.693 -18.312 1.00 1.00 H +ATOM 479 N LEU 34 -8.795 8.727 -13.779 1.00 1.00 N +ATOM 480 CA LEU 34 -8.455 7.757 -12.752 1.00 1.00 C +ATOM 481 C LEU 34 -7.121 7.095 -13.105 1.00 1.00 C +ATOM 482 O LEU 34 -6.935 6.625 -14.226 1.00 1.00 O +ATOM 487 H LEU 34 -8.383 8.558 -14.675 1.00 1.00 H +ATOM 488 HA LEU 34 -8.334 8.301 -11.816 1.00 1.00 H +ATOM 483 CB LEU 34 -9.601 6.763 -12.554 1.00 1.00 C +ATOM 484 CG LEU 34 -10.657 6.727 -13.660 1.00 1.00 C +ATOM 485 CD1 LEU 34 -11.119 5.294 -13.930 1.00 1.00 C +ATOM 486 CD2 LEU 34 -11.829 7.654 -13.330 1.00 1.00 C +ATOM 489 HB2 LEU 34 -9.175 5.765 -12.452 1.00 1.00 H +ATOM 490 HB3 LEU 34 -10.098 6.996 -11.612 1.00 1.00 H +ATOM 491 HG LEU 34 -10.203 7.098 -14.579 1.00 1.00 H +ATOM 492 HD11 LEU 34 -11.409 4.822 -12.991 1.00 1.00 H +ATOM 493 HD12 LEU 34 -11.973 5.309 -14.608 1.00 1.00 H +ATOM 494 HD13 LEU 34 -10.304 4.728 -14.385 1.00 1.00 H +ATOM 495 HD21 LEU 34 -11.626 8.178 -12.395 1.00 1.00 H +ATOM 496 HD22 LEU 34 -11.954 8.381 -14.134 1.00 1.00 H +ATOM 497 HD23 LEU 34 -12.740 7.065 -13.226 1.00 1.00 H +ATOM 498 N VAL 35 -6.228 7.080 -12.126 1.00 1.00 N +ATOM 499 CA VAL 35 -4.917 6.484 -12.319 1.00 1.00 C +ATOM 500 C VAL 35 -4.985 4.993 -11.981 1.00 1.00 C +ATOM 501 O VAL 35 -5.729 4.588 -11.090 1.00 1.00 O +ATOM 505 H VAL 35 -6.388 7.465 -11.217 1.00 1.00 H +ATOM 506 HA VAL 35 -4.658 6.593 -13.371 1.00 1.00 H +ATOM 502 CB VAL 35 -3.873 7.237 -11.493 1.00 1.00 C +ATOM 503 CG1 VAL 35 -2.476 6.653 -11.710 1.00 1.00 C +ATOM 504 CG2 VAL 35 -3.897 8.733 -11.810 1.00 1.00 C +ATOM 507 HB VAL 35 -4.127 7.114 -10.439 1.00 1.00 H +ATOM 508 HG11 VAL 35 -2.562 5.656 -12.142 1.00 1.00 H +ATOM 509 HG12 VAL 35 -1.915 7.295 -12.388 1.00 1.00 H +ATOM 510 HG13 VAL 35 -1.955 6.591 -10.754 1.00 1.00 H +ATOM 511 HG21 VAL 35 -4.886 9.135 -11.590 1.00 1.00 H +ATOM 512 HG22 VAL 35 -3.153 9.247 -11.203 1.00 1.00 H +ATOM 513 HG23 VAL 35 -3.670 8.885 -12.866 1.00 1.00 H +ATOM 514 N ARG 36 -4.197 4.217 -12.712 1.00 1.00 N +ATOM 515 CA ARG 36 -4.159 2.780 -12.500 1.00 1.00 C +ATOM 516 C ARG 36 -2.714 2.307 -12.331 1.00 1.00 C +ATOM 517 O ARG 36 -1.790 3.118 -12.305 1.00 1.00 O +ATOM 525 H ARG 36 -3.594 4.554 -13.435 1.00 1.00 H +ATOM 526 HA ARG 36 -4.734 2.617 -11.589 1.00 1.00 H +ATOM 518 CB ARG 36 -4.799 2.034 -13.672 1.00 1.00 C +ATOM 519 CG ARG 36 -5.168 2.999 -14.801 1.00 1.00 C +ATOM 520 CD ARG 36 -6.147 2.349 -15.780 1.00 1.00 C +ATOM 521 NE ARG 36 -6.316 3.207 -16.974 1.00 1.00 N +ATOM 522 CZ ARG 36 -7.331 3.098 -17.841 1.00 1.00 C +ATOM 523 NH1 ARG 36 -8.276 2.167 -17.653 1.00 1.00 N +ATOM 524 NH2 ARG 36 -7.403 3.920 -18.896 1.00 1.00 N +ATOM 527 HB2 ARG 36 -4.109 1.278 -14.048 1.00 1.00 H +ATOM 528 HB3 ARG 36 -5.690 1.509 -13.332 1.00 1.00 H +ATOM 529 HG2 ARG 36 -5.613 3.901 -14.382 1.00 1.00 H +ATOM 530 HG3 ARG 36 -4.267 3.306 -15.333 1.00 1.00 H +ATOM 531 HD2 ARG 36 -5.779 1.367 -16.078 1.00 1.00 H +ATOM 532 HD3 ARG 36 -7.112 2.194 -15.294 1.00 1.00 H +ATOM 533 HE ARG 36 -5.629 3.914 -17.143 1.00 1.00 H +ATOM 534 HH11 ARG 36 -8.221 1.552 -16.866 1.00 1.00 H +ATOM 535 HH12 ARG 36 -9.033 2.085 -18.301 1.00 1.00 H +ATOM 536 HH21 ARG 36 -6.699 4.617 -19.036 1.00 1.00 H +ATOM 537 HH22 ARG 36 -8.160 3.840 -19.544 1.00 1.00 H +ATOM 538 N GLU 37 -2.563 0.996 -12.220 1.00 1.00 N +ATOM 539 CA GLU 37 -1.247 0.405 -12.053 1.00 1.00 C +ATOM 540 C GLU 37 -1.164 -0.927 -12.801 1.00 1.00 C +ATOM 541 O GLU 37 -2.057 -1.765 -12.683 1.00 1.00 O +ATOM 547 H GLU 37 -3.320 0.342 -12.240 1.00 1.00 H +ATOM 548 HA GLU 37 -0.551 1.118 -12.492 1.00 1.00 H +ATOM 542 CB GLU 37 -0.910 0.224 -10.571 1.00 1.00 C +ATOM 543 CG GLU 37 0.143 -0.869 -10.378 1.00 1.00 C +ATOM 544 CD GLU 37 1.060 -0.545 -9.198 1.00 1.00 C +ATOM 545 OE1 GLU 37 0.663 -0.883 -8.061 1.00 1.00 O +ATOM 546 OE2 GLU 37 2.137 0.036 -9.457 1.00 1.00 O +ATOM 549 HB2 GLU 37 -0.543 1.164 -10.160 1.00 1.00 H +ATOM 550 HB3 GLU 37 -1.813 -0.035 -10.018 1.00 1.00 H +ATOM 551 HG2 GLU 37 -0.348 -1.827 -10.208 1.00 1.00 H +ATOM 552 HG3 GLU 37 0.737 -0.971 -11.287 1.00 1.00 H +ATOM 553 N SER 38 -0.085 -1.082 -13.553 1.00 1.00 N +ATOM 554 CA SER 38 0.127 -2.298 -14.320 1.00 1.00 C +ATOM 555 C SER 38 0.566 -3.433 -13.391 1.00 1.00 C +ATOM 556 O SER 38 0.846 -3.204 -12.216 1.00 1.00 O +ATOM 559 H SER 38 0.637 -0.396 -13.643 1.00 1.00 H +ATOM 560 HA SER 38 -0.839 -2.524 -14.771 1.00 1.00 H +ATOM 557 CB SER 38 1.166 -2.081 -15.421 1.00 1.00 C +ATOM 558 OG SER 38 1.202 -3.168 -16.343 1.00 1.00 O +ATOM 561 HB2 SER 38 0.940 -1.158 -15.957 1.00 1.00 H +ATOM 562 HB3 SER 38 2.151 -1.956 -14.971 1.00 1.00 H +ATOM 563 HG SER 38 2.138 -3.312 -16.664 1.00 1.00 H +ATOM 564 N GLU 39 0.610 -4.631 -13.955 1.00 1.00 N +ATOM 565 CA GLU 39 1.011 -5.801 -13.193 1.00 1.00 C +ATOM 566 C GLU 39 2.400 -6.269 -13.628 1.00 1.00 C +ATOM 567 O GLU 39 2.842 -5.969 -14.736 1.00 1.00 O +ATOM 573 H GLU 39 0.381 -4.809 -14.912 1.00 1.00 H +ATOM 574 HA GLU 39 1.040 -5.474 -12.153 1.00 1.00 H +ATOM 568 CB GLU 39 -0.016 -6.926 -13.335 1.00 1.00 C +ATOM 569 CG GLU 39 0.072 -7.902 -12.160 1.00 1.00 C +ATOM 570 CD GLU 39 0.475 -7.178 -10.875 1.00 1.00 C +ATOM 571 OE1 GLU 39 1.698 -7.070 -10.643 1.00 1.00 O +ATOM 572 OE2 GLU 39 -0.451 -6.748 -10.152 1.00 1.00 O +ATOM 575 HB2 GLU 39 -1.019 -6.503 -13.385 1.00 1.00 H +ATOM 576 HB3 GLU 39 0.152 -7.460 -14.270 1.00 1.00 H +ATOM 577 HG2 GLU 39 -0.889 -8.395 -12.019 1.00 1.00 H +ATOM 578 HG3 GLU 39 0.800 -8.683 -12.386 1.00 1.00 H +ATOM 579 N SER 40 3.052 -6.998 -12.734 1.00 1.00 N +ATOM 580 CA SER 40 4.383 -7.511 -13.012 1.00 1.00 C +ATOM 581 C SER 40 5.219 -6.440 -13.716 1.00 1.00 C +ATOM 582 O SER 40 5.862 -6.715 -14.729 1.00 1.00 O +ATOM 585 H SER 40 2.687 -7.238 -11.836 1.00 1.00 H +ATOM 586 HA SER 40 4.809 -7.751 -12.039 1.00 1.00 H +ATOM 583 CB SER 40 4.317 -8.779 -13.865 1.00 1.00 C +ATOM 584 OG SER 40 3.891 -8.506 -15.198 1.00 1.00 O +ATOM 587 HB2 SER 40 5.299 -9.252 -13.888 1.00 1.00 H +ATOM 588 HB3 SER 40 3.632 -9.490 -13.405 1.00 1.00 H +ATOM 589 HG SER 40 3.070 -9.035 -15.410 1.00 1.00 H +ATOM 590 N SER 41 5.185 -5.242 -13.153 1.00 1.00 N +ATOM 591 CA SER 41 5.932 -4.129 -13.713 1.00 1.00 C +ATOM 592 C SER 41 6.975 -3.639 -12.708 1.00 1.00 C +ATOM 593 O SER 41 6.845 -3.877 -11.508 1.00 1.00 O +ATOM 596 H SER 41 4.660 -5.026 -12.329 1.00 1.00 H +ATOM 597 HA SER 41 6.416 -4.527 -14.604 1.00 1.00 H +ATOM 594 CB SER 41 4.998 -2.984 -14.110 1.00 1.00 C +ATOM 595 OG SER 41 3.735 -3.075 -13.459 1.00 1.00 O +ATOM 598 HB2 SER 41 5.466 -2.031 -13.859 1.00 1.00 H +ATOM 599 HB3 SER 41 4.851 -2.993 -15.190 1.00 1.00 H +ATOM 600 HG SER 41 3.858 -3.068 -12.467 1.00 1.00 H +ATOM 601 N PRO 42 8.013 -2.946 -13.247 1.00 1.00 N +ATOM 602 CA PRO 42 9.078 -2.420 -12.410 1.00 1.00 C +ATOM 603 C PRO 42 8.609 -1.185 -11.638 1.00 1.00 C +ATOM 604 O PRO 42 9.384 -0.582 -10.895 1.00 1.00 O +ATOM 608 HA PRO 42 9.339 -3.092 -11.718 1.00 1.00 H +ATOM 605 CB PRO 42 10.222 -2.124 -13.367 1.00 1.00 C +ATOM 606 CG PRO 42 9.597 -2.054 -14.752 1.00 1.00 C +ATOM 607 CD PRO 42 8.199 -2.644 -14.664 1.00 1.00 C +ATOM 609 HB2 PRO 42 10.710 -1.184 -13.112 1.00 1.00 H +ATOM 610 HB3 PRO 42 10.981 -2.902 -13.320 1.00 1.00 H +ATOM 611 HG2 PRO 42 9.555 -1.023 -15.101 1.00 1.00 H +ATOM 612 HG3 PRO 42 10.200 -2.610 -15.471 1.00 1.00 H +ATOM 613 HD2 PRO 42 7.449 -1.939 -15.021 1.00 1.00 H +ATOM 614 HD3 PRO 42 8.109 -3.543 -15.274 1.00 1.00 H +ATOM 615 N GLY 43 7.344 -0.845 -11.838 1.00 1.00 N +ATOM 616 CA GLY 43 6.764 0.307 -11.170 1.00 1.00 C +ATOM 617 C GLY 43 6.150 1.276 -12.182 1.00 1.00 C +ATOM 618 O GLY 43 6.414 2.476 -12.136 1.00 1.00 O +ATOM 619 H GLY 43 6.722 -1.341 -12.444 1.00 1.00 H +ATOM 620 HA2 GLY 43 5.999 -0.024 -10.467 1.00 1.00 H +ATOM 621 HA3 GLY 43 7.531 0.820 -10.589 1.00 1.00 H +ATOM 622 N GLN 44 5.342 0.718 -13.072 1.00 1.00 N +ATOM 623 CA GLN 44 4.688 1.519 -14.093 1.00 1.00 C +ATOM 624 C GLN 44 3.216 1.731 -13.739 1.00 1.00 C +ATOM 625 O GLN 44 2.574 0.846 -13.173 1.00 1.00 O +ATOM 631 H GLN 44 5.133 -0.259 -13.102 1.00 1.00 H +ATOM 632 HA GLN 44 5.212 2.474 -14.092 1.00 1.00 H +ATOM 626 CB GLN 44 4.832 0.870 -15.473 1.00 1.00 C +ATOM 627 CG GLN 44 6.065 -0.032 -15.528 1.00 1.00 C +ATOM 628 CD GLN 44 6.949 0.319 -16.727 1.00 1.00 C +ATOM 629 OE1 GLN 44 7.051 -0.418 -17.694 1.00 1.00 O +ATOM 630 NE2 GLN 44 7.580 1.483 -16.610 1.00 1.00 N +ATOM 633 HB2 GLN 44 3.939 0.288 -15.699 1.00 1.00 H +ATOM 634 HB3 GLN 44 4.909 1.645 -16.235 1.00 1.00 H +ATOM 635 HG2 GLN 44 6.638 0.072 -14.606 1.00 1.00 H +ATOM 636 HG3 GLN 44 5.755 -1.075 -15.595 1.00 1.00 H +ATOM 637 HE21 GLN 44 7.453 2.042 -15.791 1.00 1.00 H +ATOM 638 HE22 GLN 44 8.182 1.802 -17.344 1.00 1.00 H +ATOM 639 N ARG 45 2.720 2.910 -14.087 1.00 1.00 N +ATOM 640 CA ARG 45 1.334 3.249 -13.812 1.00 1.00 C +ATOM 641 C ARG 45 0.628 3.678 -15.101 1.00 1.00 C +ATOM 642 O ARG 45 1.278 4.057 -16.073 1.00 1.00 O +ATOM 650 H ARG 45 3.247 3.624 -14.548 1.00 1.00 H +ATOM 651 HA ARG 45 0.897 2.336 -13.411 1.00 1.00 H +ATOM 643 CB ARG 45 1.238 4.380 -12.787 1.00 1.00 C +ATOM 644 CG ARG 45 1.020 3.825 -11.378 1.00 1.00 C +ATOM 645 CD ARG 45 2.298 3.181 -10.837 1.00 1.00 C +ATOM 646 NE ARG 45 3.364 4.201 -10.712 1.00 1.00 N +ATOM 647 CZ ARG 45 4.393 4.110 -9.861 1.00 1.00 C +ATOM 648 NH1 ARG 45 4.504 3.045 -9.053 1.00 1.00 N +ATOM 649 NH2 ARG 45 5.313 5.083 -9.815 1.00 1.00 N +ATOM 652 HB2 ARG 45 2.152 4.976 -12.809 1.00 1.00 H +ATOM 653 HB3 ARG 45 0.416 5.047 -13.049 1.00 1.00 H +ATOM 654 HG2 ARG 45 0.702 4.627 -10.711 1.00 1.00 H +ATOM 655 HG3 ARG 45 0.216 3.088 -11.394 1.00 1.00 H +ATOM 656 HD2 ARG 45 2.104 2.725 -9.866 1.00 1.00 H +ATOM 657 HD3 ARG 45 2.624 2.384 -11.505 1.00 1.00 H +ATOM 658 HE ARG 45 3.311 5.008 -11.300 1.00 1.00 H +ATOM 659 HH11 ARG 45 3.818 2.319 -9.087 1.00 1.00 H +ATOM 660 HH12 ARG 45 5.272 2.978 -8.417 1.00 1.00 H +ATOM 661 HH21 ARG 45 5.232 5.877 -10.416 1.00 1.00 H +ATOM 662 HH22 ARG 45 6.082 5.016 -9.180 1.00 1.00 H +ATOM 663 N SER 46 -0.695 3.603 -15.065 1.00 1.00 N +ATOM 664 CA SER 46 -1.497 3.978 -16.217 1.00 1.00 C +ATOM 665 C SER 46 -2.409 5.152 -15.860 1.00 1.00 C +ATOM 666 O SER 46 -2.457 5.577 -14.706 1.00 1.00 O +ATOM 669 H SER 46 -1.216 3.293 -14.270 1.00 1.00 H +ATOM 670 HA SER 46 -0.780 4.270 -16.985 1.00 1.00 H +ATOM 667 CB SER 46 -2.326 2.795 -16.720 1.00 1.00 C +ATOM 668 OG SER 46 -2.479 1.788 -15.723 1.00 1.00 O +ATOM 671 HB2 SER 46 -3.309 3.148 -17.033 1.00 1.00 H +ATOM 672 HB3 SER 46 -1.848 2.364 -17.600 1.00 1.00 H +ATOM 673 HG SER 46 -2.656 2.211 -14.834 1.00 1.00 H +ATOM 674 N ILE 47 -3.113 5.644 -16.870 1.00 1.00 N +ATOM 675 CA ILE 47 -4.021 6.761 -16.677 1.00 1.00 C +ATOM 676 C ILE 47 -5.350 6.459 -17.373 1.00 1.00 C +ATOM 677 O ILE 47 -5.367 6.032 -18.528 1.00 1.00 O +ATOM 682 H ILE 47 -3.068 5.291 -17.806 1.00 1.00 H +ATOM 683 HA ILE 47 -4.205 6.851 -15.606 1.00 1.00 H +ATOM 678 CB ILE 47 -3.371 8.068 -17.135 1.00 1.00 C +ATOM 679 CG1 ILE 47 -2.890 8.889 -15.938 1.00 1.00 C +ATOM 680 CG2 ILE 47 -4.316 8.864 -18.036 1.00 1.00 C +ATOM 681 CD1 ILE 47 -4.073 9.449 -15.147 1.00 1.00 C +ATOM 684 HB ILE 47 -2.491 7.819 -17.729 1.00 1.00 H +ATOM 685 HG12 ILE 47 -2.275 8.266 -15.287 1.00 1.00 H +ATOM 686 HG13 ILE 47 -2.258 9.708 -16.284 1.00 1.00 H +ATOM 687 HG21 ILE 47 -5.325 8.822 -17.629 1.00 1.00 H +ATOM 688 HG22 ILE 47 -3.985 9.902 -18.082 1.00 1.00 H +ATOM 689 HG23 ILE 47 -4.309 8.436 -19.038 1.00 1.00 H +ATOM 690 HD11 ILE 47 -4.778 9.921 -15.832 1.00 1.00 H +ATOM 691 HD12 ILE 47 -4.571 8.638 -14.614 1.00 1.00 H +ATOM 692 HD13 ILE 47 -3.714 10.188 -14.431 1.00 1.00 H +ATOM 693 N SER 48 -6.430 6.689 -16.642 1.00 1.00 N +ATOM 694 CA SER 48 -7.759 6.446 -17.176 1.00 1.00 C +ATOM 695 C SER 48 -8.567 7.746 -17.179 1.00 1.00 C +ATOM 696 O SER 48 -9.087 8.162 -16.144 1.00 1.00 O +ATOM 699 H SER 48 -6.408 7.035 -15.704 1.00 1.00 H +ATOM 700 HA SER 48 -7.603 6.092 -18.194 1.00 1.00 H +ATOM 697 CB SER 48 -8.490 5.371 -16.368 1.00 1.00 C +ATOM 698 OG SER 48 -7.615 4.695 -15.468 1.00 1.00 O +ATOM 701 HB2 SER 48 -9.304 5.829 -15.807 1.00 1.00 H +ATOM 702 HB3 SER 48 -8.940 4.649 -17.050 1.00 1.00 H +ATOM 703 HG SER 48 -6.670 4.781 -15.779 1.00 1.00 H +ATOM 704 N LEU 49 -8.646 8.353 -18.354 1.00 1.00 N +ATOM 705 CA LEU 49 -9.381 9.596 -18.507 1.00 1.00 C +ATOM 706 C LEU 49 -10.724 9.311 -19.184 1.00 1.00 C +ATOM 707 O LEU 49 -10.871 8.309 -19.881 1.00 1.00 O +ATOM 712 H LEU 49 -8.221 8.008 -19.192 1.00 1.00 H +ATOM 713 HA LEU 49 -9.574 9.987 -17.508 1.00 1.00 H +ATOM 708 CB LEU 49 -8.532 10.635 -19.241 1.00 1.00 C +ATOM 709 CG LEU 49 -9.178 11.288 -20.466 1.00 1.00 C +ATOM 710 CD1 LEU 49 -10.146 12.396 -20.048 1.00 1.00 C +ATOM 711 CD2 LEU 49 -8.114 11.793 -21.443 1.00 1.00 C +ATOM 714 HB2 LEU 49 -8.263 11.421 -18.535 1.00 1.00 H +ATOM 715 HB3 LEU 49 -7.603 10.158 -19.556 1.00 1.00 H +ATOM 716 HG LEU 49 -9.761 10.530 -20.987 1.00 1.00 H +ATOM 717 HD11 LEU 49 -10.038 12.591 -18.980 1.00 1.00 H +ATOM 718 HD12 LEU 49 -9.921 13.305 -20.607 1.00 1.00 H +ATOM 719 HD13 LEU 49 -11.169 12.084 -20.259 1.00 1.00 H +ATOM 720 HD21 LEU 49 -7.413 12.437 -20.914 1.00 1.00 H +ATOM 721 HD22 LEU 49 -7.579 10.943 -21.868 1.00 1.00 H +ATOM 722 HD23 LEU 49 -8.595 12.357 -22.242 1.00 1.00 H +ATOM 723 N ARG 50 -11.670 10.211 -18.952 1.00 1.00 N +ATOM 724 CA ARG 50 -12.994 10.068 -19.533 1.00 1.00 C +ATOM 725 C ARG 50 -13.486 11.413 -20.070 1.00 1.00 C +ATOM 726 O ARG 50 -13.314 12.446 -19.424 1.00 1.00 O +ATOM 734 H ARG 50 -11.542 11.023 -18.384 1.00 1.00 H +ATOM 735 HA ARG 50 -12.870 9.345 -20.338 1.00 1.00 H +ATOM 727 CB ARG 50 -13.993 9.545 -18.498 1.00 1.00 C +ATOM 728 CG ARG 50 -15.417 9.551 -19.058 1.00 1.00 C +ATOM 729 CD ARG 50 -16.260 10.647 -18.403 1.00 1.00 C +ATOM 730 NE ARG 50 -17.496 10.870 -19.184 1.00 1.00 N +ATOM 731 CZ ARG 50 -18.514 10.001 -19.246 1.00 1.00 C +ATOM 732 NH1 ARG 50 -18.448 8.844 -18.573 1.00 1.00 N +ATOM 733 NH2 ARG 50 -19.597 10.287 -19.980 1.00 1.00 N +ATOM 736 HB2 ARG 50 -13.719 8.532 -18.203 1.00 1.00 H +ATOM 737 HB3 ARG 50 -13.950 10.161 -17.601 1.00 1.00 H +ATOM 738 HG2 ARG 50 -15.386 9.708 -20.136 1.00 1.00 H +ATOM 739 HG3 ARG 50 -15.883 8.581 -18.891 1.00 1.00 H +ATOM 740 HD2 ARG 50 -16.513 10.360 -17.382 1.00 1.00 H +ATOM 741 HD3 ARG 50 -15.685 11.571 -18.342 1.00 1.00 H +ATOM 742 HE ARG 50 -17.578 11.724 -19.699 1.00 1.00 H +ATOM 743 HH11 ARG 50 -17.640 8.630 -18.024 1.00 1.00 H +ATOM 744 HH12 ARG 50 -19.207 8.194 -18.619 1.00 1.00 H +ATOM 745 HH21 ARG 50 -19.646 11.151 -20.483 1.00 1.00 H +ATOM 746 HH22 ARG 50 -20.357 9.637 -20.027 1.00 1.00 H +ATOM 747 N TYR 51 -14.089 11.358 -21.248 1.00 1.00 N +ATOM 748 CA TYR 51 -14.606 12.560 -21.882 1.00 1.00 C +ATOM 749 C TYR 51 -16.115 12.453 -22.110 1.00 1.00 C +ATOM 750 O TYR 51 -16.865 12.142 -21.186 1.00 1.00 O +ATOM 759 H TYR 51 -14.225 10.514 -21.768 1.00 1.00 H +ATOM 760 HA TYR 51 -14.405 13.401 -21.220 1.00 1.00 H +ATOM 751 CB TYR 51 -13.904 12.658 -23.237 1.00 1.00 C +ATOM 752 CG TYR 51 -13.827 14.080 -23.796 1.00 1.00 C +ATOM 753 CD1 TYR 51 -13.313 15.100 -23.021 1.00 1.00 C +ATOM 754 CD2 TYR 51 -14.272 14.345 -25.076 1.00 1.00 C +ATOM 755 CE1 TYR 51 -13.242 16.438 -23.546 1.00 1.00 C +ATOM 756 CE2 TYR 51 -14.200 15.682 -25.602 1.00 1.00 C +ATOM 757 CZ TYR 51 -13.689 16.663 -24.812 1.00 1.00 C +ATOM 758 OH TYR 51 -13.621 17.928 -25.309 1.00 1.00 O +ATOM 761 HB2 TYR 51 -12.893 12.262 -23.140 1.00 1.00 H +ATOM 762 HB3 TYR 51 -14.427 12.025 -23.953 1.00 1.00 H +ATOM 763 HD1 TYR 51 -12.963 14.893 -22.009 1.00 1.00 H +ATOM 764 HD2 TYR 51 -14.677 13.539 -25.688 1.00 1.00 H +ATOM 765 HE1 TYR 51 -12.839 17.253 -22.945 1.00 1.00 H +ATOM 766 HE2 TYR 51 -14.547 15.904 -26.610 1.00 1.00 H +ATOM 767 HH TYR 51 -12.763 18.053 -25.808 1.00 1.00 H +ATOM 768 N GLU 52 -16.514 12.715 -23.345 1.00 1.00 N +ATOM 769 CA GLU 52 -17.921 12.652 -23.706 1.00 1.00 C +ATOM 770 C GLU 52 -18.387 11.197 -23.771 1.00 1.00 C +ATOM 771 O GLU 52 -18.961 10.769 -24.772 1.00 1.00 O +ATOM 777 H GLU 52 -15.899 12.968 -24.090 1.00 1.00 H +ATOM 778 HA GLU 52 -18.449 13.175 -22.908 1.00 1.00 H +ATOM 772 CB GLU 52 -18.179 13.371 -25.033 1.00 1.00 C +ATOM 773 CG GLU 52 -18.241 14.887 -24.833 1.00 1.00 C +ATOM 774 CD GLU 52 -18.173 15.620 -26.174 1.00 1.00 C +ATOM 775 OE1 GLU 52 -17.492 15.089 -27.077 1.00 1.00 O +ATOM 776 OE2 GLU 52 -18.804 16.694 -26.265 1.00 1.00 O +ATOM 779 HB2 GLU 52 -17.389 13.127 -25.742 1.00 1.00 H +ATOM 780 HB3 GLU 52 -19.116 13.019 -25.464 1.00 1.00 H +ATOM 781 HG2 GLU 52 -19.162 15.152 -24.315 1.00 1.00 H +ATOM 782 HG3 GLU 52 -17.415 15.206 -24.196 1.00 1.00 H +ATOM 783 N GLY 53 -18.126 10.477 -22.691 1.00 1.00 N +ATOM 784 CA GLY 53 -18.512 9.077 -22.612 1.00 1.00 C +ATOM 785 C GLY 53 -17.336 8.163 -22.960 1.00 1.00 C +ATOM 786 O GLY 53 -17.269 7.027 -22.496 1.00 1.00 O +ATOM 787 H GLY 53 -17.659 10.832 -21.881 1.00 1.00 H +ATOM 788 HA2 GLY 53 -18.868 8.851 -21.607 1.00 1.00 H +ATOM 789 HA3 GLY 53 -19.339 8.886 -23.295 1.00 1.00 H +ATOM 790 N ARG 54 -16.436 8.695 -23.776 1.00 1.00 N +ATOM 791 CA ARG 54 -15.265 7.941 -24.191 1.00 1.00 C +ATOM 792 C ARG 54 -14.239 7.886 -23.058 1.00 1.00 C +ATOM 793 O ARG 54 -14.121 8.830 -22.277 1.00 1.00 O +ATOM 801 H ARG 54 -16.497 9.621 -24.149 1.00 1.00 H +ATOM 802 HA ARG 54 -15.643 6.947 -24.427 1.00 1.00 H +ATOM 794 CB ARG 54 -14.616 8.569 -25.427 1.00 1.00 C +ATOM 795 CG ARG 54 -14.234 10.026 -25.164 1.00 1.00 C +ATOM 796 CD ARG 54 -13.141 10.488 -26.131 1.00 1.00 C +ATOM 797 NE ARG 54 -13.704 11.439 -27.116 1.00 1.00 N +ATOM 798 CZ ARG 54 -13.239 11.598 -28.361 1.00 1.00 C +ATOM 799 NH1 ARG 54 -12.198 10.866 -28.784 1.00 1.00 N +ATOM 800 NH2 ARG 54 -13.812 12.485 -29.185 1.00 1.00 N +ATOM 803 HB2 ARG 54 -13.729 7.999 -25.705 1.00 1.00 H +ATOM 804 HB3 ARG 54 -15.306 8.516 -26.271 1.00 1.00 H +ATOM 805 HG2 ARG 54 -15.112 10.662 -25.272 1.00 1.00 H +ATOM 806 HG3 ARG 54 -13.884 10.135 -24.138 1.00 1.00 H +ATOM 807 HD2 ARG 54 -12.330 10.963 -25.577 1.00 1.00 H +ATOM 808 HD3 ARG 54 -12.714 9.629 -26.649 1.00 1.00 H +ATOM 809 HE ARG 54 -14.483 12.001 -26.832 1.00 1.00 H +ATOM 810 HH11 ARG 54 -11.769 10.204 -28.169 1.00 1.00 H +ATOM 811 HH12 ARG 54 -11.848 10.983 -29.714 1.00 1.00 H +ATOM 812 HH21 ARG 54 -14.589 13.030 -28.869 1.00 1.00 H +ATOM 813 HH22 ARG 54 -13.464 12.601 -30.115 1.00 1.00 H +ATOM 814 N VAL 55 -13.523 6.773 -23.005 1.00 1.00 N +ATOM 815 CA VAL 55 -12.511 6.582 -21.980 1.00 1.00 C +ATOM 816 C VAL 55 -11.146 6.393 -22.646 1.00 1.00 C +ATOM 817 O VAL 55 -10.955 5.461 -23.423 1.00 1.00 O +ATOM 821 H VAL 55 -13.625 6.010 -23.645 1.00 1.00 H +ATOM 822 HA VAL 55 -12.483 7.487 -21.373 1.00 1.00 H +ATOM 818 CB VAL 55 -12.899 5.414 -21.071 1.00 1.00 C +ATOM 819 CG1 VAL 55 -11.728 5.002 -20.176 1.00 1.00 C +ATOM 820 CG2 VAL 55 -14.134 5.757 -20.235 1.00 1.00 C +ATOM 823 HB VAL 55 -13.150 4.564 -21.706 1.00 1.00 H +ATOM 824 HG11 VAL 55 -11.253 5.893 -19.767 1.00 1.00 H +ATOM 825 HG12 VAL 55 -12.095 4.379 -19.362 1.00 1.00 H +ATOM 826 HG13 VAL 55 -11.002 4.441 -20.765 1.00 1.00 H +ATOM 827 HG21 VAL 55 -14.323 6.830 -20.288 1.00 1.00 H +ATOM 828 HG22 VAL 55 -14.997 5.217 -20.624 1.00 1.00 H +ATOM 829 HG23 VAL 55 -13.962 5.468 -19.199 1.00 1.00 H +ATOM 830 N TYR 56 -10.234 7.295 -22.316 1.00 1.00 N +ATOM 831 CA TYR 56 -8.892 7.241 -22.872 1.00 1.00 C +ATOM 832 C TYR 56 -7.961 6.418 -21.977 1.00 1.00 C +ATOM 833 O TYR 56 -7.900 6.640 -20.770 1.00 1.00 O +ATOM 842 H TYR 56 -10.397 8.052 -21.682 1.00 1.00 H +ATOM 843 HA TYR 56 -8.953 6.767 -23.852 1.00 1.00 H +ATOM 834 CB TYR 56 -8.393 8.686 -22.916 1.00 1.00 C +ATOM 835 CG TYR 56 -8.882 9.477 -24.131 1.00 1.00 C +ATOM 836 CD1 TYR 56 -8.576 9.044 -25.405 1.00 1.00 C +ATOM 837 CD2 TYR 56 -9.631 10.623 -23.952 1.00 1.00 C +ATOM 838 CE1 TYR 56 -9.037 9.789 -26.548 1.00 1.00 C +ATOM 839 CE2 TYR 56 -10.091 11.368 -25.097 1.00 1.00 C +ATOM 840 CZ TYR 56 -9.771 10.913 -26.337 1.00 1.00 C +ATOM 841 OH TYR 56 -10.206 11.616 -27.418 1.00 1.00 O +ATOM 844 HB2 TYR 56 -8.715 9.198 -22.009 1.00 1.00 H +ATOM 845 HB3 TYR 56 -7.304 8.684 -22.911 1.00 1.00 H +ATOM 846 HD1 TYR 56 -7.986 8.139 -25.545 1.00 1.00 H +ATOM 847 HD2 TYR 56 -9.873 10.966 -22.946 1.00 1.00 H +ATOM 848 HE1 TYR 56 -8.802 9.457 -27.559 1.00 1.00 H +ATOM 849 HE2 TYR 56 -10.683 12.274 -24.970 1.00 1.00 H +ATOM 850 HH TYR 56 -10.815 12.353 -27.123 1.00 1.00 H +ATOM 851 N HIS 57 -7.257 5.489 -22.606 1.00 1.00 N +ATOM 852 CA HIS 57 -6.332 4.633 -21.884 1.00 1.00 C +ATOM 853 C HIS 57 -4.898 4.944 -22.319 1.00 1.00 C +ATOM 854 O HIS 57 -4.418 4.406 -23.316 1.00 1.00 O +ATOM 861 H HIS 57 -7.312 5.315 -23.590 1.00 1.00 H +ATOM 862 HA HIS 57 -6.444 4.876 -20.828 1.00 1.00 H +ATOM 855 CB HIS 57 -6.700 3.160 -22.065 1.00 1.00 C +ATOM 856 CG HIS 57 -8.171 2.867 -21.886 1.00 1.00 C +ATOM 857 ND1 HIS 57 -8.686 2.286 -20.741 1.00 1.00 N +ATOM 858 CD2 HIS 57 -9.230 3.082 -22.718 1.00 1.00 C +ATOM 859 CE1 HIS 57 -9.997 2.160 -20.889 1.00 1.00 C +ATOM 860 NE2 HIS 57 -10.332 2.654 -22.115 1.00 1.00 N +ATOM 863 HB2 HIS 57 -6.395 2.838 -23.061 1.00 1.00 H +ATOM 864 HB3 HIS 57 -6.132 2.562 -21.350 1.00 1.00 H +ATOM 865 HD1 HIS 57 -8.159 2.006 -19.938 1.00 1.00 H +ATOM 866 HD2 HIS 57 -9.178 3.531 -23.711 1.00 1.00 H +ATOM 867 HE1 HIS 57 -10.686 1.738 -20.158 1.00 1.00 H +ATOM 868 N TYR 58 -4.256 5.811 -21.550 1.00 1.00 N +ATOM 869 CA TYR 58 -2.887 6.199 -21.843 1.00 1.00 C +ATOM 870 C TYR 58 -2.010 6.104 -20.592 1.00 1.00 C +ATOM 871 O TYR 58 -2.339 6.677 -19.554 1.00 1.00 O +ATOM 880 H TYR 58 -4.654 6.243 -20.741 1.00 1.00 H +ATOM 881 HA TYR 58 -2.500 5.521 -22.601 1.00 1.00 H +ATOM 872 CB TYR 58 -2.951 7.660 -22.296 1.00 1.00 C +ATOM 873 CG TYR 58 -2.710 7.858 -23.793 1.00 1.00 C +ATOM 874 CD1 TYR 58 -1.422 7.852 -24.292 1.00 1.00 C +ATOM 875 CD2 TYR 58 -3.778 8.041 -24.647 1.00 1.00 C +ATOM 876 CE1 TYR 58 -1.194 8.039 -25.701 1.00 1.00 C +ATOM 877 CE2 TYR 58 -3.551 8.227 -26.056 1.00 1.00 C +ATOM 878 CZ TYR 58 -2.270 8.217 -26.515 1.00 1.00 C +ATOM 879 OH TYR 58 -2.054 8.392 -27.845 1.00 1.00 O +ATOM 882 HB2 TYR 58 -3.930 8.066 -22.040 1.00 1.00 H +ATOM 883 HB3 TYR 58 -2.211 8.235 -21.740 1.00 1.00 H +ATOM 884 HD1 TYR 58 -0.578 7.708 -23.617 1.00 1.00 H +ATOM 885 HD2 TYR 58 -4.795 8.044 -24.254 1.00 1.00 H +ATOM 886 HE1 TYR 58 -0.182 8.037 -26.106 1.00 1.00 H +ATOM 887 HE2 TYR 58 -4.386 8.373 -26.742 1.00 1.00 H +ATOM 888 HH TYR 58 -2.070 7.509 -28.313 1.00 1.00 H +ATOM 889 N ARG 59 -0.912 5.378 -20.733 1.00 1.00 N +ATOM 890 CA ARG 59 0.016 5.200 -19.628 1.00 1.00 C +ATOM 891 C ARG 59 0.823 6.480 -19.401 1.00 1.00 C +ATOM 892 O ARG 59 1.003 7.275 -20.323 1.00 1.00 O +ATOM 900 H ARG 59 -0.651 4.916 -21.581 1.00 1.00 H +ATOM 901 HA ARG 59 -0.616 4.978 -18.767 1.00 1.00 H +ATOM 893 CB ARG 59 0.975 4.040 -19.895 1.00 1.00 C +ATOM 894 CG ARG 59 1.402 4.007 -21.363 1.00 1.00 C +ATOM 895 CD ARG 59 2.768 3.336 -21.522 1.00 1.00 C +ATOM 896 NE ARG 59 3.333 3.646 -22.856 1.00 1.00 N +ATOM 897 CZ ARG 59 2.929 3.068 -23.995 1.00 1.00 C +ATOM 898 NH1 ARG 59 1.956 2.146 -23.971 1.00 1.00 N +ATOM 899 NH2 ARG 59 3.498 3.411 -25.158 1.00 1.00 N +ATOM 902 HB2 ARG 59 1.855 4.135 -19.258 1.00 1.00 H +ATOM 903 HB3 ARG 59 0.494 3.097 -19.632 1.00 1.00 H +ATOM 904 HG2 ARG 59 0.659 3.471 -21.952 1.00 1.00 H +ATOM 905 HG3 ARG 59 1.445 5.024 -21.755 1.00 1.00 H +ATOM 906 HD2 ARG 59 3.446 3.682 -20.743 1.00 1.00 H +ATOM 907 HD3 ARG 59 2.668 2.258 -21.402 1.00 1.00 H +ATOM 908 HE ARG 59 4.061 4.330 -22.909 1.00 1.00 H +ATOM 909 HH11 ARG 59 1.531 1.890 -23.103 1.00 1.00 H +ATOM 910 HH12 ARG 59 1.656 1.715 -24.821 1.00 1.00 H +ATOM 911 HH21 ARG 59 4.224 4.099 -25.176 1.00 1.00 H +ATOM 912 HH22 ARG 59 3.197 2.980 -26.009 1.00 1.00 H +ATOM 913 N ILE 60 1.290 6.637 -18.172 1.00 1.00 N +ATOM 914 CA ILE 60 2.075 7.807 -17.815 1.00 1.00 C +ATOM 915 C ILE 60 3.432 7.738 -18.517 1.00 1.00 C +ATOM 916 O ILE 60 4.165 8.726 -18.556 1.00 1.00 O +ATOM 921 H ILE 60 1.140 5.986 -17.429 1.00 1.00 H +ATOM 922 HA ILE 60 1.540 8.684 -18.178 1.00 1.00 H +ATOM 917 CB ILE 60 2.176 7.939 -16.294 1.00 1.00 C +ATOM 918 CG1 ILE 60 0.796 7.833 -15.641 1.00 1.00 C +ATOM 919 CG2 ILE 60 2.898 9.230 -15.903 1.00 1.00 C +ATOM 920 CD1 ILE 60 0.845 6.942 -14.397 1.00 1.00 C +ATOM 923 HB ILE 60 2.775 7.109 -15.918 1.00 1.00 H +ATOM 924 HG12 ILE 60 0.442 8.826 -15.368 1.00 1.00 H +ATOM 925 HG13 ILE 60 0.082 7.426 -16.356 1.00 1.00 H +ATOM 926 HG21 ILE 60 3.798 9.342 -16.508 1.00 1.00 H +ATOM 927 HG22 ILE 60 2.237 10.081 -16.072 1.00 1.00 H +ATOM 928 HG23 ILE 60 3.173 9.188 -14.847 1.00 1.00 H +ATOM 929 HD11 ILE 60 1.317 5.993 -14.649 1.00 1.00 H +ATOM 930 HD12 ILE 60 1.421 7.439 -13.617 1.00 1.00 H +ATOM 931 HD13 ILE 60 -0.168 6.760 -14.041 1.00 1.00 H +ATOM 932 N ASN 61 3.726 6.564 -19.055 1.00 1.00 N +ATOM 933 CA ASN 61 4.982 6.354 -19.755 1.00 1.00 C +ATOM 934 C ASN 61 6.146 6.624 -18.798 1.00 1.00 C +ATOM 935 O ASN 61 6.046 7.481 -17.919 1.00 1.00 O +ATOM 940 H ASN 61 3.125 5.767 -19.018 1.00 1.00 H +ATOM 941 HA ASN 61 4.953 5.320 -20.092 1.00 1.00 H +ATOM 936 CB ASN 61 5.118 7.309 -20.942 1.00 1.00 C +ATOM 937 CG ASN 61 6.471 7.136 -21.634 1.00 1.00 C +ATOM 938 OD1 ASN 61 6.661 6.275 -22.478 1.00 1.00 O +ATOM 939 ND2 ASN 61 7.399 8.001 -21.232 1.00 1.00 N +ATOM 942 HB2 ASN 61 4.314 7.124 -21.656 1.00 1.00 H +ATOM 943 HB3 ASN 61 5.008 8.339 -20.601 1.00 1.00 H +ATOM 944 HD21 ASN 61 7.176 8.684 -20.536 1.00 1.00 H +ATOM 945 HD22 ASN 61 8.317 7.968 -21.627 1.00 1.00 H +ATOM 946 N THR 62 7.222 5.881 -19.000 1.00 1.00 N +ATOM 947 CA THR 62 8.403 6.028 -18.166 1.00 1.00 C +ATOM 948 C THR 62 9.618 6.391 -19.022 1.00 1.00 C +ATOM 949 O THR 62 9.637 6.125 -20.223 1.00 1.00 O +ATOM 953 H THR 62 7.296 5.187 -19.718 1.00 1.00 H +ATOM 954 HA THR 62 8.237 6.859 -17.480 1.00 1.00 H +ATOM 950 CB THR 62 8.584 4.735 -17.370 1.00 1.00 C +ATOM 951 OG1 THR 62 7.372 4.610 -16.630 1.00 1.00 O +ATOM 952 CG2 THR 62 9.665 4.857 -16.294 1.00 1.00 C +ATOM 955 HB THR 62 8.788 3.895 -18.033 1.00 1.00 H +ATOM 956 HG1 THR 62 6.869 3.800 -16.933 1.00 1.00 H +ATOM 957 HG21 THR 62 9.609 5.843 -15.832 1.00 1.00 H +ATOM 958 HG22 THR 62 9.510 4.091 -15.534 1.00 1.00 H +ATOM 959 HG23 THR 62 10.647 4.724 -16.748 1.00 1.00 H +ATOM 960 N ALA 63 10.603 6.992 -18.371 1.00 1.00 N +ATOM 961 CA ALA 63 11.820 7.392 -19.057 1.00 1.00 C +ATOM 962 C ALA 63 12.802 6.220 -19.071 1.00 1.00 C +ATOM 963 O ALA 63 13.986 6.393 -18.789 1.00 1.00 O +ATOM 965 H ALA 63 10.579 7.204 -17.394 1.00 1.00 H +ATOM 966 HA ALA 63 11.553 7.645 -20.084 1.00 1.00 H +ATOM 964 CB ALA 63 12.403 8.633 -18.379 1.00 1.00 C +ATOM 967 HB1 ALA 63 11.958 8.751 -17.390 1.00 1.00 H +ATOM 968 HB2 ALA 63 13.482 8.520 -18.280 1.00 1.00 H +ATOM 969 HB3 ALA 63 12.184 9.514 -18.982 1.00 1.00 H +ATOM 970 N SER 64 12.273 5.050 -19.403 1.00 1.00 N +ATOM 971 CA SER 64 13.090 3.849 -19.458 1.00 1.00 C +ATOM 972 C SER 64 14.134 3.874 -18.340 1.00 1.00 C +ATOM 973 O SER 64 15.242 3.370 -18.509 1.00 1.00 O +ATOM 976 H SER 64 11.309 4.918 -19.632 1.00 1.00 H +ATOM 977 HA SER 64 12.395 3.022 -19.314 1.00 1.00 H +ATOM 974 CB SER 64 13.773 3.710 -20.819 1.00 1.00 C +ATOM 975 OG SER 64 14.772 4.707 -21.020 1.00 1.00 O +ATOM 978 HB2 SER 64 14.228 2.722 -20.897 1.00 1.00 H +ATOM 979 HB3 SER 64 13.026 3.779 -21.610 1.00 1.00 H +ATOM 980 HG SER 64 14.783 5.340 -20.246 1.00 1.00 H +ATOM 981 N ASP 65 13.742 4.466 -17.222 1.00 1.00 N +ATOM 982 CA ASP 65 14.630 4.563 -16.076 1.00 1.00 C +ATOM 983 C ASP 65 13.804 4.500 -14.789 1.00 1.00 C +ATOM 984 O ASP 65 14.072 3.676 -13.915 1.00 1.00 O +ATOM 989 H ASP 65 12.838 4.874 -17.092 1.00 1.00 H +ATOM 990 HA ASP 65 15.317 3.722 -16.172 1.00 1.00 H +ATOM 985 CB ASP 65 15.395 5.889 -16.081 1.00 1.00 C +ATOM 986 CG ASP 65 16.717 5.869 -16.850 1.00 1.00 C +ATOM 987 OD1 ASP 65 17.053 4.785 -17.373 1.00 1.00 O +ATOM 988 OD2 ASP 65 17.362 6.940 -16.897 1.00 1.00 O +ATOM 991 HB2 ASP 65 14.753 6.659 -16.511 1.00 1.00 H +ATOM 992 HB3 ASP 65 15.595 6.181 -15.050 1.00 1.00 H +ATOM 993 N GLY 66 12.817 5.379 -14.713 1.00 1.00 N +ATOM 994 CA GLY 66 11.950 5.434 -13.548 1.00 1.00 C +ATOM 995 C GLY 66 10.950 6.586 -13.661 1.00 1.00 C +ATOM 996 O GLY 66 9.741 6.365 -13.663 1.00 1.00 O +ATOM 997 H GLY 66 12.606 6.046 -15.428 1.00 1.00 H +ATOM 998 HA2 GLY 66 11.414 4.490 -13.445 1.00 1.00 H +ATOM 999 HA3 GLY 66 12.552 5.557 -12.648 1.00 1.00 H +ATOM 1000 N LYS 67 11.494 7.791 -13.752 1.00 1.00 N +ATOM 1001 CA LYS 67 10.664 8.979 -13.865 1.00 1.00 C +ATOM 1002 C LYS 67 9.544 8.720 -14.874 1.00 1.00 C +ATOM 1003 O LYS 67 9.749 8.026 -15.868 1.00 1.00 O +ATOM 1009 H LYS 67 12.478 7.963 -13.749 1.00 1.00 H +ATOM 1010 HA LYS 67 10.214 9.158 -12.889 1.00 1.00 H +ATOM 1004 CB LYS 67 11.521 10.201 -14.199 1.00 1.00 C +ATOM 1005 CG LYS 67 12.650 9.834 -15.166 1.00 1.00 C +ATOM 1006 CD LYS 67 14.017 10.002 -14.501 1.00 1.00 C +ATOM 1007 CE LYS 67 15.141 9.561 -15.442 1.00 1.00 C +ATOM 1008 NZ LYS 67 16.446 10.068 -14.962 1.00 1.00 N +ATOM 1011 HB2 LYS 67 10.898 10.979 -14.640 1.00 1.00 H +ATOM 1012 HB3 LYS 67 11.943 10.615 -13.282 1.00 1.00 H +ATOM 1013 HG2 LYS 67 12.527 8.803 -15.497 1.00 1.00 H +ATOM 1014 HG3 LYS 67 12.591 10.463 -16.053 1.00 1.00 H +ATOM 1015 HD2 LYS 67 14.162 11.044 -14.218 1.00 1.00 H +ATOM 1016 HD3 LYS 67 14.056 9.414 -13.584 1.00 1.00 H +ATOM 1017 HE2 LYS 67 15.167 8.474 -15.504 1.00 1.00 H +ATOM 1018 HE3 LYS 67 14.947 9.933 -16.448 1.00 1.00 H +ATOM 1019 HZ1 LYS 67 16.425 10.155 -13.967 1.00 1.00 H +ATOM 1020 HZ2 LYS 67 17.169 9.429 -15.226 1.00 1.00 H +ATOM 1021 HZ3 LYS 67 16.628 10.963 -15.370 1.00 1.00 H +ATOM 1022 N LEU 68 8.385 9.292 -14.584 1.00 1.00 N +ATOM 1023 CA LEU 68 7.232 9.131 -15.455 1.00 1.00 C +ATOM 1024 C LEU 68 7.039 10.406 -16.277 1.00 1.00 C +ATOM 1025 O LEU 68 6.735 11.464 -15.728 1.00 1.00 O +ATOM 1030 H LEU 68 8.227 9.855 -13.773 1.00 1.00 H +ATOM 1031 HA LEU 68 7.451 8.309 -16.136 1.00 1.00 H +ATOM 1026 CB LEU 68 6.000 8.730 -14.642 1.00 1.00 C +ATOM 1027 CG LEU 68 6.165 7.516 -13.726 1.00 1.00 C +ATOM 1028 CD1 LEU 68 7.090 7.839 -12.550 1.00 1.00 C +ATOM 1029 CD2 LEU 68 4.805 6.992 -13.259 1.00 1.00 C +ATOM 1032 HB2 LEU 68 5.698 9.582 -14.033 1.00 1.00 H +ATOM 1033 HB3 LEU 68 5.183 8.530 -15.334 1.00 1.00 H +ATOM 1034 HG LEU 68 6.638 6.718 -14.299 1.00 1.00 H +ATOM 1035 HD11 LEU 68 6.980 8.888 -12.279 1.00 1.00 H +ATOM 1036 HD12 LEU 68 6.825 7.213 -11.698 1.00 1.00 H +ATOM 1037 HD13 LEU 68 8.122 7.643 -12.837 1.00 1.00 H +ATOM 1038 HD21 LEU 68 4.283 7.776 -12.710 1.00 1.00 H +ATOM 1039 HD22 LEU 68 4.213 6.698 -14.126 1.00 1.00 H +ATOM 1040 HD23 LEU 68 4.953 6.130 -12.610 1.00 1.00 H +ATOM 1041 N TYR 69 7.222 10.263 -17.582 1.00 1.00 N +ATOM 1042 CA TYR 69 7.072 11.390 -18.486 1.00 1.00 C +ATOM 1043 C TYR 69 6.158 11.033 -19.661 1.00 1.00 C +ATOM 1044 O TYR 69 6.419 10.072 -20.384 1.00 1.00 O +ATOM 1053 H TYR 69 7.468 9.399 -18.021 1.00 1.00 H +ATOM 1054 HA TYR 69 6.627 12.214 -17.928 1.00 1.00 H +ATOM 1045 CB TYR 69 8.473 11.694 -19.019 1.00 1.00 C +ATOM 1046 CG TYR 69 8.800 10.999 -20.344 1.00 1.00 C +ATOM 1047 CD1 TYR 69 8.133 11.362 -21.497 1.00 1.00 C +ATOM 1048 CD2 TYR 69 9.761 10.010 -20.385 1.00 1.00 C +ATOM 1049 CE1 TYR 69 8.441 10.709 -22.741 1.00 1.00 C +ATOM 1050 CE2 TYR 69 10.067 9.356 -21.630 1.00 1.00 C +ATOM 1051 CZ TYR 69 9.393 9.738 -22.747 1.00 1.00 C +ATOM 1052 OH TYR 69 9.683 9.121 -23.924 1.00 1.00 O +ATOM 1055 HB2 TYR 69 8.575 12.772 -19.151 1.00 1.00 H +ATOM 1056 HB3 TYR 69 9.208 11.393 -18.273 1.00 1.00 H +ATOM 1057 HD1 TYR 69 7.376 12.145 -21.464 1.00 1.00 H +ATOM 1058 HD2 TYR 69 10.286 9.722 -19.473 1.00 1.00 H +ATOM 1059 HE1 TYR 69 7.923 10.987 -23.660 1.00 1.00 H +ATOM 1060 HE2 TYR 69 10.824 8.572 -21.676 1.00 1.00 H +ATOM 1061 HH TYR 69 10.033 8.199 -23.750 1.00 1.00 H +ATOM 1062 N VAL 70 5.108 11.824 -19.816 1.00 1.00 N +ATOM 1063 CA VAL 70 4.156 11.604 -20.890 1.00 1.00 C +ATOM 1064 C VAL 70 4.654 12.299 -22.159 1.00 1.00 C +ATOM 1065 O VAL 70 4.284 11.915 -23.267 1.00 1.00 O +ATOM 1069 H VAL 70 4.904 12.603 -19.223 1.00 1.00 H +ATOM 1070 HA VAL 70 4.111 10.530 -21.073 1.00 1.00 H +ATOM 1066 CB VAL 70 2.763 12.071 -20.460 1.00 1.00 C +ATOM 1067 CG1 VAL 70 1.695 11.589 -21.444 1.00 1.00 C +ATOM 1068 CG2 VAL 70 2.446 11.606 -19.037 1.00 1.00 C +ATOM 1071 HB VAL 70 2.758 13.159 -20.465 1.00 1.00 H +ATOM 1072 HG11 VAL 70 2.164 11.348 -22.399 1.00 1.00 H +ATOM 1073 HG12 VAL 70 1.206 10.701 -21.045 1.00 1.00 H +ATOM 1074 HG13 VAL 70 0.956 12.376 -21.591 1.00 1.00 H +ATOM 1075 HG21 VAL 70 3.230 10.934 -18.689 1.00 1.00 H +ATOM 1076 HG22 VAL 70 2.391 12.472 -18.377 1.00 1.00 H +ATOM 1077 HG23 VAL 70 1.489 11.083 -19.031 1.00 1.00 H +ATOM 1078 N SER 71 5.483 13.310 -21.953 1.00 1.00 N +ATOM 1079 CA SER 71 6.036 14.064 -23.066 1.00 1.00 C +ATOM 1080 C SER 71 7.519 13.727 -23.241 1.00 1.00 C +ATOM 1081 O SER 71 7.898 13.055 -24.199 1.00 1.00 O +ATOM 1084 H SER 71 5.780 13.616 -21.048 1.00 1.00 H +ATOM 1085 HA SER 71 5.466 13.747 -23.940 1.00 1.00 H +ATOM 1082 CB SER 71 5.854 15.568 -22.858 1.00 1.00 C +ATOM 1083 OG SER 71 7.060 16.289 -23.097 1.00 1.00 O +ATOM 1086 HB2 SER 71 5.074 15.934 -23.524 1.00 1.00 H +ATOM 1087 HB3 SER 71 5.516 15.755 -21.839 1.00 1.00 H +ATOM 1088 HG SER 71 6.906 16.990 -23.793 1.00 1.00 H +ATOM 1089 N SER 72 8.317 14.210 -22.300 1.00 1.00 N +ATOM 1090 CA SER 72 9.750 13.970 -22.339 1.00 1.00 C +ATOM 1091 C SER 72 10.475 14.993 -21.463 1.00 1.00 C +ATOM 1092 O SER 72 11.269 14.623 -20.599 1.00 1.00 O +ATOM 1095 H SER 72 8.000 14.756 -21.524 1.00 1.00 H +ATOM 1096 HA SER 72 9.883 12.963 -21.943 1.00 1.00 H +ATOM 1093 CB SER 72 10.279 14.028 -23.774 1.00 1.00 C +ATOM 1094 OG SER 72 9.548 14.950 -24.576 1.00 1.00 O +ATOM 1097 HB2 SER 72 11.332 14.313 -23.759 1.00 1.00 H +ATOM 1098 HB3 SER 72 10.225 13.036 -24.221 1.00 1.00 H +ATOM 1099 HG SER 72 9.000 15.551 -23.993 1.00 1.00 H +ATOM 1100 N GLU 73 10.178 16.258 -21.716 1.00 1.00 N +ATOM 1101 CA GLU 73 10.792 17.337 -20.962 1.00 1.00 C +ATOM 1102 C GLU 73 9.960 17.656 -19.717 1.00 1.00 C +ATOM 1103 O GLU 73 10.317 18.537 -18.936 1.00 1.00 O +ATOM 1109 H GLU 73 9.531 16.551 -22.420 1.00 1.00 H +ATOM 1110 HA GLU 73 11.772 16.962 -20.665 1.00 1.00 H +ATOM 1104 CB GLU 73 10.975 18.581 -21.833 1.00 1.00 C +ATOM 1105 CG GLU 73 12.425 19.068 -21.795 1.00 1.00 C +ATOM 1106 CD GLU 73 12.650 20.198 -22.803 1.00 1.00 C +ATOM 1107 OE1 GLU 73 11.966 20.169 -23.850 1.00 1.00 O +ATOM 1108 OE2 GLU 73 13.499 21.065 -22.504 1.00 1.00 O +ATOM 1111 HB2 GLU 73 10.691 18.355 -22.860 1.00 1.00 H +ATOM 1112 HB3 GLU 73 10.312 19.374 -21.485 1.00 1.00 H +ATOM 1113 HG2 GLU 73 12.669 19.418 -20.791 1.00 1.00 H +ATOM 1114 HG3 GLU 73 13.097 18.241 -22.015 1.00 1.00 H +ATOM 1115 N SER 74 8.866 16.923 -19.572 1.00 1.00 N +ATOM 1116 CA SER 74 7.980 17.117 -18.438 1.00 1.00 C +ATOM 1117 C SER 74 7.836 15.809 -17.657 1.00 1.00 C +ATOM 1118 O SER 74 6.723 15.380 -17.356 1.00 1.00 O +ATOM 1121 H SER 74 8.583 16.209 -20.214 1.00 1.00 H +ATOM 1122 HA SER 74 8.461 17.878 -17.823 1.00 1.00 H +ATOM 1119 CB SER 74 6.606 17.617 -18.890 1.00 1.00 C +ATOM 1120 OG SER 74 6.683 18.359 -20.105 1.00 1.00 O +ATOM 1123 HB2 SER 74 5.937 16.769 -19.024 1.00 1.00 H +ATOM 1124 HB3 SER 74 6.176 18.245 -18.109 1.00 1.00 H +ATOM 1125 HG SER 74 5.892 18.964 -20.187 1.00 1.00 H +ATOM 1126 N ARG 75 8.979 15.211 -17.351 1.00 1.00 N +ATOM 1127 CA ARG 75 8.994 13.961 -16.611 1.00 1.00 C +ATOM 1128 C ARG 75 8.645 14.209 -15.142 1.00 1.00 C +ATOM 1129 O ARG 75 8.885 15.294 -14.618 1.00 1.00 O +ATOM 1137 H ARG 75 9.880 15.566 -17.600 1.00 1.00 H +ATOM 1138 HA ARG 75 8.239 13.340 -17.095 1.00 1.00 H +ATOM 1130 CB ARG 75 10.366 13.288 -16.694 1.00 1.00 C +ATOM 1131 CG ARG 75 11.490 14.321 -16.592 1.00 1.00 C +ATOM 1132 CD ARG 75 12.540 14.098 -17.683 1.00 1.00 C +ATOM 1133 NE ARG 75 13.504 15.221 -17.693 1.00 1.00 N +ATOM 1134 CZ ARG 75 14.416 15.436 -16.735 1.00 1.00 C +ATOM 1135 NH1 ARG 75 14.492 14.608 -15.683 1.00 1.00 N +ATOM 1136 NH2 ARG 75 15.251 16.481 -16.825 1.00 1.00 N +ATOM 1139 HB2 ARG 75 10.465 12.556 -15.894 1.00 1.00 H +ATOM 1140 HB3 ARG 75 10.452 12.744 -17.635 1.00 1.00 H +ATOM 1141 HG2 ARG 75 11.076 15.325 -16.680 1.00 1.00 H +ATOM 1142 HG3 ARG 75 11.961 14.255 -15.610 1.00 1.00 H +ATOM 1143 HD2 ARG 75 13.064 13.159 -17.509 1.00 1.00 H +ATOM 1144 HD3 ARG 75 12.055 14.018 -18.655 1.00 1.00 H +ATOM 1145 HE ARG 75 13.474 15.857 -18.463 1.00 1.00 H +ATOM 1146 HH11 ARG 75 13.869 13.830 -15.615 1.00 1.00 H +ATOM 1147 HH12 ARG 75 15.171 14.770 -14.968 1.00 1.00 H +ATOM 1148 HH21 ARG 75 15.193 17.099 -17.611 1.00 1.00 H +ATOM 1149 HH22 ARG 75 15.931 16.641 -16.111 1.00 1.00 H +ATOM 1150 N PHE 76 8.083 13.183 -14.519 1.00 1.00 N +ATOM 1151 CA PHE 76 7.698 13.276 -13.122 1.00 1.00 C +ATOM 1152 C PHE 76 8.022 11.980 -12.375 1.00 1.00 C +ATOM 1153 O PHE 76 7.671 10.893 -12.832 1.00 1.00 O +ATOM 1161 H PHE 76 7.891 12.303 -14.953 1.00 1.00 H +ATOM 1162 HA PHE 76 8.265 14.096 -12.683 1.00 1.00 H +ATOM 1154 CB PHE 76 6.185 13.505 -13.089 1.00 1.00 C +ATOM 1155 CG PHE 76 5.741 14.825 -13.722 1.00 1.00 C +ATOM 1156 CD1 PHE 76 5.442 14.877 -15.047 1.00 1.00 C +ATOM 1157 CD2 PHE 76 5.647 15.947 -12.959 1.00 1.00 C +ATOM 1158 CE1 PHE 76 5.031 16.103 -15.635 1.00 1.00 C +ATOM 1159 CE2 PHE 76 5.235 17.172 -13.546 1.00 1.00 C +ATOM 1160 CZ PHE 76 4.936 17.224 -14.872 1.00 1.00 C +ATOM 1163 HB2 PHE 76 5.692 12.682 -13.606 1.00 1.00 H +ATOM 1164 HB3 PHE 76 5.846 13.479 -12.053 1.00 1.00 H +ATOM 1165 HD1 PHE 76 5.518 13.979 -15.659 1.00 1.00 H +ATOM 1166 HD2 PHE 76 5.887 15.905 -11.896 1.00 1.00 H +ATOM 1167 HE1 PHE 76 4.790 16.143 -16.697 1.00 1.00 H +ATOM 1168 HE2 PHE 76 5.159 18.071 -12.936 1.00 1.00 H +ATOM 1169 HZ PHE 76 4.619 18.165 -15.323 1.00 1.00 H +ATOM 1170 N ASN 77 8.688 12.137 -11.242 1.00 1.00 N +ATOM 1171 CA ASN 77 9.063 10.994 -10.428 1.00 1.00 C +ATOM 1172 C ASN 77 7.801 10.351 -9.848 1.00 1.00 C +ATOM 1173 O ASN 77 7.713 9.127 -9.753 1.00 1.00 O +ATOM 1178 H ASN 77 8.969 13.025 -10.878 1.00 1.00 H +ATOM 1179 HA ASN 77 9.599 10.326 -11.102 1.00 1.00 H +ATOM 1174 CB ASN 77 9.957 11.416 -9.260 1.00 1.00 C +ATOM 1175 CG ASN 77 11.434 11.361 -9.653 1.00 1.00 C +ATOM 1176 OD1 ASN 77 11.874 10.498 -10.396 1.00 1.00 O +ATOM 1177 ND2 ASN 77 12.174 12.325 -9.114 1.00 1.00 N +ATOM 1180 HB2 ASN 77 9.697 12.430 -8.948 1.00 1.00 H +ATOM 1181 HB3 ASN 77 9.778 10.764 -8.406 1.00 1.00 H +ATOM 1182 HD21 ASN 77 11.750 13.004 -8.512 1.00 1.00 H +ATOM 1183 HD22 ASN 77 13.153 12.373 -9.310 1.00 1.00 H +ATOM 1184 N THR 78 6.858 11.202 -9.476 1.00 1.00 N +ATOM 1185 CA THR 78 5.606 10.732 -8.909 1.00 1.00 C +ATOM 1186 C THR 78 4.444 11.032 -9.858 1.00 1.00 C +ATOM 1187 O THR 78 4.234 12.180 -10.245 1.00 1.00 O +ATOM 1191 H THR 78 6.938 12.197 -9.558 1.00 1.00 H +ATOM 1192 HA THR 78 5.661 9.649 -8.805 1.00 1.00 H +ATOM 1188 CB THR 78 5.442 11.370 -7.528 1.00 1.00 C +ATOM 1189 OG1 THR 78 5.958 12.688 -7.693 1.00 1.00 O +ATOM 1190 CG2 THR 78 6.359 10.740 -6.480 1.00 1.00 C +ATOM 1193 HB THR 78 4.402 11.339 -7.206 1.00 1.00 H +ATOM 1194 HG1 THR 78 6.257 13.051 -6.809 1.00 1.00 H +ATOM 1195 HG21 THR 78 6.712 9.773 -6.839 1.00 1.00 H +ATOM 1196 HG22 THR 78 7.213 11.394 -6.301 1.00 1.00 H +ATOM 1197 HG23 THR 78 5.808 10.601 -5.550 1.00 1.00 H +ATOM 1198 N LEU 79 3.718 9.979 -10.206 1.00 1.00 N +ATOM 1199 CA LEU 79 2.583 10.114 -11.103 1.00 1.00 C +ATOM 1200 C LEU 79 1.755 11.333 -10.688 1.00 1.00 C +ATOM 1201 O LEU 79 1.428 12.178 -11.519 1.00 1.00 O +ATOM 1206 H LEU 79 3.895 9.047 -9.886 1.00 1.00 H +ATOM 1207 HA LEU 79 2.977 10.289 -12.103 1.00 1.00 H +ATOM 1202 CB LEU 79 1.781 8.813 -11.152 1.00 1.00 C +ATOM 1203 CG LEU 79 1.635 8.063 -9.827 1.00 1.00 C +ATOM 1204 CD1 LEU 79 0.255 7.415 -9.712 1.00 1.00 C +ATOM 1205 CD2 LEU 79 2.764 7.045 -9.646 1.00 1.00 C +ATOM 1208 HB2 LEU 79 0.784 9.038 -11.531 1.00 1.00 H +ATOM 1209 HB3 LEU 79 2.254 8.146 -11.874 1.00 1.00 H +ATOM 1210 HG LEU 79 1.721 8.786 -9.015 1.00 1.00 H +ATOM 1211 HD11 LEU 79 -0.364 7.726 -10.554 1.00 1.00 H +ATOM 1212 HD12 LEU 79 0.360 6.330 -9.719 1.00 1.00 H +ATOM 1213 HD13 LEU 79 -0.218 7.728 -8.780 1.00 1.00 H +ATOM 1214 HD21 LEU 79 3.311 6.939 -10.583 1.00 1.00 H +ATOM 1215 HD22 LEU 79 3.442 7.389 -8.865 1.00 1.00 H +ATOM 1216 HD23 LEU 79 2.341 6.082 -9.361 1.00 1.00 H +ATOM 1217 N ALA 80 1.439 11.383 -9.403 1.00 1.00 N +ATOM 1218 CA ALA 80 0.655 12.483 -8.867 1.00 1.00 C +ATOM 1219 C ALA 80 1.202 13.805 -9.409 1.00 1.00 C +ATOM 1220 O ALA 80 0.455 14.608 -9.967 1.00 1.00 O +ATOM 1222 H ALA 80 1.709 10.692 -8.733 1.00 1.00 H +ATOM 1223 HA ALA 80 -0.372 12.357 -9.210 1.00 1.00 H +ATOM 1221 CB ALA 80 0.674 12.427 -7.338 1.00 1.00 C +ATOM 1224 HB1 ALA 80 1.318 11.611 -7.012 1.00 1.00 H +ATOM 1225 HB2 ALA 80 1.054 13.371 -6.945 1.00 1.00 H +ATOM 1226 HB3 ALA 80 -0.339 12.262 -6.969 1.00 1.00 H +ATOM 1227 N GLU 81 2.501 13.989 -9.228 1.00 1.00 N +ATOM 1228 CA GLU 81 3.158 15.200 -9.694 1.00 1.00 C +ATOM 1229 C GLU 81 2.840 15.442 -11.170 1.00 1.00 C +ATOM 1230 O GLU 81 2.711 16.587 -11.600 1.00 1.00 O +ATOM 1236 H GLU 81 3.102 13.330 -8.775 1.00 1.00 H +ATOM 1237 HA GLU 81 2.742 16.005 -9.088 1.00 1.00 H +ATOM 1231 CB GLU 81 4.668 15.128 -9.461 1.00 1.00 C +ATOM 1232 CG GLU 81 5.178 16.395 -8.774 1.00 1.00 C +ATOM 1233 CD GLU 81 6.517 16.140 -8.080 1.00 1.00 C +ATOM 1234 OE1 GLU 81 7.430 15.643 -8.772 1.00 1.00 O +ATOM 1235 OE2 GLU 81 6.599 16.451 -6.871 1.00 1.00 O +ATOM 1238 HB2 GLU 81 4.906 14.258 -8.850 1.00 1.00 H +ATOM 1239 HB3 GLU 81 5.180 14.997 -10.416 1.00 1.00 H +ATOM 1240 HG2 GLU 81 5.292 17.192 -9.509 1.00 1.00 H +ATOM 1241 HG3 GLU 81 4.445 16.737 -8.043 1.00 1.00 H +ATOM 1242 N LEU 82 2.722 14.347 -11.905 1.00 1.00 N +ATOM 1243 CA LEU 82 2.421 14.426 -13.324 1.00 1.00 C +ATOM 1244 C LEU 82 1.009 14.986 -13.511 1.00 1.00 C +ATOM 1245 O LEU 82 0.825 16.011 -14.164 1.00 1.00 O +ATOM 1250 H LEU 82 2.827 13.420 -11.547 1.00 1.00 H +ATOM 1251 HA LEU 82 3.130 15.124 -13.770 1.00 1.00 H +ATOM 1246 CB LEU 82 2.639 13.069 -13.995 1.00 1.00 C +ATOM 1247 CG LEU 82 2.410 13.024 -15.507 1.00 1.00 C +ATOM 1248 CD1 LEU 82 3.637 12.467 -16.232 1.00 1.00 C +ATOM 1249 CD2 LEU 82 1.140 12.240 -15.845 1.00 1.00 C +ATOM 1252 HB2 LEU 82 3.661 12.746 -13.794 1.00 1.00 H +ATOM 1253 HB3 LEU 82 1.977 12.343 -13.526 1.00 1.00 H +ATOM 1254 HG LEU 82 2.262 14.044 -15.861 1.00 1.00 H +ATOM 1255 HD11 LEU 82 4.464 12.374 -15.527 1.00 1.00 H +ATOM 1256 HD12 LEU 82 3.400 11.487 -16.646 1.00 1.00 H +ATOM 1257 HD13 LEU 82 3.920 13.144 -17.038 1.00 1.00 H +ATOM 1258 HD21 LEU 82 1.071 11.364 -15.200 1.00 1.00 H +ATOM 1259 HD22 LEU 82 0.268 12.876 -15.690 1.00 1.00 H +ATOM 1260 HD23 LEU 82 1.175 11.921 -16.887 1.00 1.00 H +ATOM 1261 N VAL 83 0.048 14.286 -12.926 1.00 1.00 N +ATOM 1262 CA VAL 83 -1.342 14.698 -13.022 1.00 1.00 C +ATOM 1263 C VAL 83 -1.466 16.160 -12.583 1.00 1.00 C +ATOM 1264 O VAL 83 -2.320 16.890 -13.082 1.00 1.00 O +ATOM 1268 H VAL 83 0.206 13.452 -12.398 1.00 1.00 H +ATOM 1269 HA VAL 83 -1.638 14.620 -14.068 1.00 1.00 H +ATOM 1265 CB VAL 83 -2.225 13.752 -12.206 1.00 1.00 C +ATOM 1266 CG1 VAL 83 -3.279 14.531 -11.414 1.00 1.00 C +ATOM 1267 CG2 VAL 83 -2.882 12.704 -13.106 1.00 1.00 C +ATOM 1270 HB VAL 83 -1.589 13.231 -11.492 1.00 1.00 H +ATOM 1271 HG11 VAL 83 -3.619 15.383 -12.003 1.00 1.00 H +ATOM 1272 HG12 VAL 83 -4.124 13.879 -11.194 1.00 1.00 H +ATOM 1273 HG13 VAL 83 -2.841 14.886 -10.480 1.00 1.00 H +ATOM 1274 HG21 VAL 83 -3.094 13.143 -14.081 1.00 1.00 H +ATOM 1275 HG22 VAL 83 -2.208 11.856 -13.228 1.00 1.00 H +ATOM 1276 HG23 VAL 83 -3.812 12.364 -12.650 1.00 1.00 H +ATOM 1277 N HIS 84 -0.601 16.541 -11.655 1.00 1.00 N +ATOM 1278 CA HIS 84 -0.603 17.900 -11.144 1.00 1.00 C +ATOM 1279 C HIS 84 -0.306 18.877 -12.283 1.00 1.00 C +ATOM 1280 O HIS 84 -1.014 19.868 -12.459 1.00 1.00 O +ATOM 1287 H HIS 84 0.091 15.940 -11.255 1.00 1.00 H +ATOM 1288 HA HIS 84 -1.607 18.092 -10.766 1.00 1.00 H +ATOM 1281 CB HIS 84 0.370 18.042 -9.971 1.00 1.00 C +ATOM 1282 CG HIS 84 -0.290 18.430 -8.669 1.00 1.00 C +ATOM 1283 ND1 HIS 84 -1.604 18.117 -8.373 1.00 1.00 N +ATOM 1284 CD2 HIS 84 0.199 19.107 -7.590 1.00 1.00 C +ATOM 1285 CE1 HIS 84 -1.886 18.590 -7.167 1.00 1.00 C +ATOM 1286 NE2 HIS 84 -0.767 19.203 -6.684 1.00 1.00 N +ATOM 1289 HB2 HIS 84 0.895 17.098 -9.833 1.00 1.00 H +ATOM 1290 HB3 HIS 84 1.120 18.791 -10.223 1.00 1.00 H +ATOM 1291 HD1 HIS 84 -2.236 17.619 -8.967 1.00 1.00 H +ATOM 1292 HD2 HIS 84 1.211 19.500 -7.489 1.00 1.00 H +ATOM 1293 HE1 HIS 84 -2.843 18.504 -6.652 1.00 1.00 H +ATOM 1294 N HIS 85 0.745 18.565 -13.028 1.00 1.00 N +ATOM 1295 CA HIS 85 1.145 19.403 -14.145 1.00 1.00 C +ATOM 1296 C HIS 85 0.137 19.255 -15.286 1.00 1.00 C +ATOM 1297 O HIS 85 -0.302 20.248 -15.863 1.00 1.00 O +ATOM 1304 H HIS 85 1.316 17.758 -12.879 1.00 1.00 H +ATOM 1305 HA HIS 85 1.128 20.433 -13.786 1.00 1.00 H +ATOM 1298 CB HIS 85 2.579 19.084 -14.576 1.00 1.00 C +ATOM 1299 CG HIS 85 2.956 19.656 -15.922 1.00 1.00 C +ATOM 1300 ND1 HIS 85 2.912 21.011 -16.200 1.00 1.00 N +ATOM 1301 CD2 HIS 85 3.386 19.043 -17.062 1.00 1.00 C +ATOM 1302 CE1 HIS 85 3.299 21.194 -17.454 1.00 1.00 C +ATOM 1303 NE2 HIS 85 3.591 19.973 -17.987 1.00 1.00 N +ATOM 1306 HB2 HIS 85 3.268 19.468 -13.823 1.00 1.00 H +ATOM 1307 HB3 HIS 85 2.707 18.002 -14.604 1.00 1.00 H +ATOM 1308 HD1 HIS 85 2.635 21.730 -15.563 1.00 1.00 H +ATOM 1309 HD2 HIS 85 3.536 17.971 -17.191 1.00 1.00 H +ATOM 1310 HE1 HIS 85 3.370 22.152 -17.970 1.00 1.00 H +ATOM 1311 N HIS 86 -0.203 18.007 -15.575 1.00 1.00 N +ATOM 1312 CA HIS 86 -1.152 17.718 -16.636 1.00 1.00 C +ATOM 1313 C HIS 86 -2.535 18.239 -16.243 1.00 1.00 C +ATOM 1314 O HIS 86 -3.487 18.127 -17.015 1.00 1.00 O +ATOM 1321 H HIS 86 0.159 17.206 -15.099 1.00 1.00 H +ATOM 1322 HA HIS 86 -0.807 18.252 -17.519 1.00 1.00 H +ATOM 1315 CB HIS 86 -1.154 16.223 -16.967 1.00 1.00 C +ATOM 1316 CG HIS 86 0.066 15.760 -17.726 1.00 1.00 C +ATOM 1317 ND1 HIS 86 0.926 16.635 -18.368 1.00 1.00 N +ATOM 1318 CD2 HIS 86 0.562 14.508 -17.941 1.00 1.00 C +ATOM 1319 CE1 HIS 86 1.891 15.930 -18.940 1.00 1.00 C +ATOM 1320 NE2 HIS 86 1.663 14.611 -18.673 1.00 1.00 N +ATOM 1323 HB2 HIS 86 -1.230 15.656 -16.039 1.00 1.00 H +ATOM 1324 HB3 HIS 86 -2.044 15.993 -17.555 1.00 1.00 H +ATOM 1325 HD1 HIS 86 0.834 17.631 -18.396 1.00 1.00 H +ATOM 1326 HD2 HIS 86 0.125 13.579 -17.572 1.00 1.00 H +ATOM 1327 HE1 HIS 86 2.721 16.332 -19.519 1.00 1.00 H +ATOM 1328 N SER 87 -2.604 18.799 -15.044 1.00 1.00 N +ATOM 1329 CA SER 87 -3.855 19.339 -14.540 1.00 1.00 C +ATOM 1330 C SER 87 -4.174 20.662 -15.241 1.00 1.00 C +ATOM 1331 O SER 87 -5.330 20.938 -15.557 1.00 1.00 O +ATOM 1334 H SER 87 -1.824 18.886 -14.423 1.00 1.00 H +ATOM 1335 HA SER 87 -4.609 18.590 -14.777 1.00 1.00 H +ATOM 1332 CB SER 87 -3.796 19.542 -13.025 1.00 1.00 C +ATOM 1333 OG SER 87 -3.581 20.907 -12.677 1.00 1.00 O +ATOM 1336 HB2 SER 87 -4.728 19.197 -12.577 1.00 1.00 H +ATOM 1337 HB3 SER 87 -2.996 18.930 -12.607 1.00 1.00 H +ATOM 1338 HG SER 87 -4.430 21.313 -12.341 1.00 1.00 H +ATOM 1339 N THR 88 -3.127 21.444 -15.464 1.00 1.00 N +ATOM 1340 CA THR 88 -3.282 22.730 -16.121 1.00 1.00 C +ATOM 1341 C THR 88 -2.556 22.731 -17.468 1.00 1.00 C +ATOM 1342 O THR 88 -2.972 23.416 -18.401 1.00 1.00 O +ATOM 1346 H THR 88 -2.190 21.212 -15.204 1.00 1.00 H +ATOM 1347 HA THR 88 -4.340 22.886 -16.329 1.00 1.00 H +ATOM 1343 CB THR 88 -2.784 23.814 -15.163 1.00 1.00 C +ATOM 1344 OG1 THR 88 -1.481 23.375 -14.790 1.00 1.00 O +ATOM 1345 CG2 THR 88 -3.562 23.832 -13.846 1.00 1.00 C +ATOM 1348 HB THR 88 -2.802 24.793 -15.640 1.00 1.00 H +ATOM 1349 HG1 THR 88 -1.008 24.098 -14.285 1.00 1.00 H +ATOM 1350 HG21 THR 88 -4.031 22.861 -13.687 1.00 1.00 H +ATOM 1351 HG22 THR 88 -2.880 24.046 -13.023 1.00 1.00 H +ATOM 1352 HG23 THR 88 -4.332 24.603 -13.889 1.00 1.00 H +ATOM 1353 N VAL 89 -1.484 21.956 -17.528 1.00 1.00 N +ATOM 1354 CA VAL 89 -0.696 21.858 -18.744 1.00 1.00 C +ATOM 1355 C VAL 89 -0.487 20.383 -19.095 1.00 1.00 C +ATOM 1356 O VAL 89 0.531 19.794 -18.731 1.00 1.00 O +ATOM 1360 H VAL 89 -1.152 21.401 -16.764 1.00 1.00 H +ATOM 1361 HA VAL 89 -1.267 22.331 -19.543 1.00 1.00 H +ATOM 1357 CB VAL 89 0.617 22.627 -18.581 1.00 1.00 C +ATOM 1358 CG1 VAL 89 1.448 22.570 -19.864 1.00 1.00 C +ATOM 1359 CG2 VAL 89 0.356 24.074 -18.161 1.00 1.00 C +ATOM 1362 HB VAL 89 1.190 22.145 -17.789 1.00 1.00 H +ATOM 1363 HG11 VAL 89 1.316 21.598 -20.340 1.00 1.00 H +ATOM 1364 HG12 VAL 89 1.119 23.355 -20.546 1.00 1.00 H +ATOM 1365 HG13 VAL 89 2.500 22.717 -19.622 1.00 1.00 H +ATOM 1366 HG21 VAL 89 -0.250 24.569 -18.919 1.00 1.00 H +ATOM 1367 HG22 VAL 89 -0.174 24.086 -17.207 1.00 1.00 H +ATOM 1368 HG23 VAL 89 1.306 24.599 -18.055 1.00 1.00 H +ATOM 1369 N ALA 90 -1.465 19.829 -19.795 1.00 1.00 N +ATOM 1370 CA ALA 90 -1.400 18.435 -20.197 1.00 1.00 C +ATOM 1371 C ALA 90 -0.366 18.278 -21.314 1.00 1.00 C +ATOM 1372 O ALA 90 -0.724 18.048 -22.469 1.00 1.00 O +ATOM 1374 H ALA 90 -2.289 20.314 -20.085 1.00 1.00 H +ATOM 1375 HA ALA 90 -1.079 17.854 -19.333 1.00 1.00 H +ATOM 1373 CB ALA 90 -2.792 17.961 -20.621 1.00 1.00 C +ATOM 1376 HB1 ALA 90 -3.158 18.587 -21.433 1.00 1.00 H +ATOM 1377 HB2 ALA 90 -2.736 16.925 -20.957 1.00 1.00 H +ATOM 1378 HB3 ALA 90 -3.473 18.030 -19.773 1.00 1.00 H +ATOM 1379 N ASP 91 0.896 18.409 -20.933 1.00 1.00 N +ATOM 1380 CA ASP 91 1.984 18.285 -21.887 1.00 1.00 C +ATOM 1381 C ASP 91 2.235 16.805 -22.178 1.00 1.00 C +ATOM 1382 O ASP 91 3.381 16.361 -22.217 1.00 1.00 O +ATOM 1387 H ASP 91 1.179 18.595 -19.991 1.00 1.00 H +ATOM 1388 HA ASP 91 1.655 18.834 -22.768 1.00 1.00 H +ATOM 1383 CB ASP 91 3.277 18.881 -21.327 1.00 1.00 C +ATOM 1384 CG ASP 91 3.609 20.289 -21.828 1.00 1.00 C +ATOM 1385 OD1 ASP 91 3.156 20.614 -22.947 1.00 1.00 O +ATOM 1386 OD2 ASP 91 4.309 21.007 -21.082 1.00 1.00 O +ATOM 1389 HB2 ASP 91 3.208 18.907 -20.240 1.00 1.00 H +ATOM 1390 HB3 ASP 91 4.105 18.218 -21.580 1.00 1.00 H +ATOM 1391 N GLY 92 1.142 16.080 -22.376 1.00 1.00 N +ATOM 1392 CA GLY 92 1.229 14.658 -22.663 1.00 1.00 C +ATOM 1393 C GLY 92 -0.161 14.060 -22.895 1.00 1.00 C +ATOM 1394 O GLY 92 -0.467 13.602 -23.996 1.00 1.00 O +ATOM 1395 H GLY 92 0.213 16.448 -22.343 1.00 1.00 H +ATOM 1396 HA2 GLY 92 1.849 14.500 -23.545 1.00 1.00 H +ATOM 1397 HA3 GLY 92 1.716 14.146 -21.834 1.00 1.00 H +ATOM 1398 N LEU 93 -0.963 14.083 -21.841 1.00 1.00 N +ATOM 1399 CA LEU 93 -2.312 13.549 -21.917 1.00 1.00 C +ATOM 1400 C LEU 93 -3.175 14.476 -22.776 1.00 1.00 C +ATOM 1401 O LEU 93 -3.077 15.697 -22.670 1.00 1.00 O +ATOM 1406 H LEU 93 -0.705 14.458 -20.951 1.00 1.00 H +ATOM 1407 HA LEU 93 -2.252 12.578 -22.408 1.00 1.00 H +ATOM 1402 CB LEU 93 -2.873 13.312 -20.514 1.00 1.00 C +ATOM 1403 CG LEU 93 -1.846 13.254 -19.381 1.00 1.00 C +ATOM 1404 CD1 LEU 93 -2.522 13.414 -18.018 1.00 1.00 C +ATOM 1405 CD2 LEU 93 -1.015 11.970 -19.462 1.00 1.00 C +ATOM 1408 HB2 LEU 93 -3.585 14.107 -20.289 1.00 1.00 H +ATOM 1409 HB3 LEU 93 -3.431 12.377 -20.520 1.00 1.00 H +ATOM 1410 HG LEU 93 -1.157 14.089 -19.500 1.00 1.00 H +ATOM 1411 HD11 LEU 93 -3.070 14.355 -17.993 1.00 1.00 H +ATOM 1412 HD12 LEU 93 -3.214 12.586 -17.856 1.00 1.00 H +ATOM 1413 HD13 LEU 93 -1.765 13.413 -17.235 1.00 1.00 H +ATOM 1414 HD21 LEU 93 -1.679 11.106 -19.451 1.00 1.00 H +ATOM 1415 HD22 LEU 93 -0.434 11.972 -20.384 1.00 1.00 H +ATOM 1416 HD23 LEU 93 -0.340 11.920 -18.606 1.00 1.00 H +ATOM 1417 N ILE 94 -4.001 13.858 -23.609 1.00 1.00 N +ATOM 1418 CA ILE 94 -4.881 14.611 -24.485 1.00 1.00 C +ATOM 1419 C ILE 94 -5.547 15.735 -23.689 1.00 1.00 C +ATOM 1420 O ILE 94 -5.095 16.878 -23.724 1.00 1.00 O +ATOM 1425 H ILE 94 -4.074 12.863 -23.689 1.00 1.00 H +ATOM 1426 HA ILE 94 -4.263 15.059 -25.263 1.00 1.00 H +ATOM 1421 CB ILE 94 -5.874 13.677 -25.179 1.00 1.00 C +ATOM 1422 CG1 ILE 94 -7.040 14.464 -25.780 1.00 1.00 C +ATOM 1423 CG2 ILE 94 -6.354 12.581 -24.225 1.00 1.00 C +ATOM 1424 CD1 ILE 94 -7.933 13.559 -26.633 1.00 1.00 C +ATOM 1427 HB ILE 94 -5.361 13.183 -26.004 1.00 1.00 H +ATOM 1428 HG12 ILE 94 -7.629 14.915 -24.981 1.00 1.00 H +ATOM 1429 HG13 ILE 94 -6.656 15.281 -26.391 1.00 1.00 H +ATOM 1430 HG21 ILE 94 -5.998 12.795 -23.217 1.00 1.00 H +ATOM 1431 HG22 ILE 94 -7.444 12.550 -24.226 1.00 1.00 H +ATOM 1432 HG23 ILE 94 -5.963 11.618 -24.552 1.00 1.00 H +ATOM 1433 HD11 ILE 94 -8.163 12.650 -26.077 1.00 1.00 H +ATOM 1434 HD12 ILE 94 -8.857 14.082 -26.872 1.00 1.00 H +ATOM 1435 HD13 ILE 94 -7.411 13.300 -27.554 1.00 1.00 H +ATOM 1436 N THR 95 -6.613 15.371 -22.991 1.00 1.00 N +ATOM 1437 CA THR 95 -7.346 16.335 -22.187 1.00 1.00 C +ATOM 1438 C THR 95 -6.608 16.607 -20.875 1.00 1.00 C +ATOM 1439 O THR 95 -5.590 15.976 -20.589 1.00 1.00 O +ATOM 1443 H THR 95 -6.975 14.440 -22.968 1.00 1.00 H +ATOM 1444 HA THR 95 -7.386 17.277 -22.733 1.00 1.00 H +ATOM 1440 CB THR 95 -8.766 15.800 -21.987 1.00 1.00 C +ATOM 1441 OG1 THR 95 -9.591 16.749 -22.657 1.00 1.00 O +ATOM 1442 CG2 THR 95 -9.218 15.876 -20.527 1.00 1.00 C +ATOM 1445 HB THR 95 -8.857 14.785 -22.371 1.00 1.00 H +ATOM 1446 HG1 THR 95 -10.554 16.560 -22.464 1.00 1.00 H +ATOM 1447 HG21 THR 95 -8.417 15.520 -19.879 1.00 1.00 H +ATOM 1448 HG22 THR 95 -9.459 16.908 -20.274 1.00 1.00 H +ATOM 1449 HG23 THR 95 -10.102 15.252 -20.388 1.00 1.00 H +ATOM 1450 N THR 96 -7.149 17.546 -20.113 1.00 1.00 N +ATOM 1451 CA THR 96 -6.555 17.908 -18.837 1.00 1.00 C +ATOM 1452 C THR 96 -7.405 17.376 -17.683 1.00 1.00 C +ATOM 1453 O THR 96 -8.620 17.563 -17.664 1.00 1.00 O +ATOM 1457 H THR 96 -7.976 18.053 -20.353 1.00 1.00 H +ATOM 1458 HA THR 96 -5.579 17.427 -18.764 1.00 1.00 H +ATOM 1454 CB THR 96 -6.379 19.428 -18.814 1.00 1.00 C +ATOM 1455 OG1 THR 96 -7.649 19.918 -18.394 1.00 1.00 O +ATOM 1456 CG2 THR 96 -6.194 20.018 -20.213 1.00 1.00 C +ATOM 1459 HB THR 96 -5.556 19.714 -18.159 1.00 1.00 H +ATOM 1460 HG1 THR 96 -8.332 19.748 -19.104 1.00 1.00 H +ATOM 1461 HG21 THR 96 -5.464 19.425 -20.764 1.00 1.00 H +ATOM 1462 HG22 THR 96 -7.148 20.004 -20.742 1.00 1.00 H +ATOM 1463 HG23 THR 96 -5.842 21.046 -20.131 1.00 1.00 H +ATOM 1464 N LEU 97 -6.732 16.725 -16.745 1.00 1.00 N +ATOM 1465 CA LEU 97 -7.409 16.166 -15.589 1.00 1.00 C +ATOM 1466 C LEU 97 -8.477 17.149 -15.103 1.00 1.00 C +ATOM 1467 O LEU 97 -8.290 18.361 -15.180 1.00 1.00 O +ATOM 1472 H LEU 97 -5.742 16.579 -16.767 1.00 1.00 H +ATOM 1473 HA LEU 97 -7.904 15.250 -15.912 1.00 1.00 H +ATOM 1468 CB LEU 97 -6.396 15.776 -14.510 1.00 1.00 C +ATOM 1469 CG LEU 97 -5.453 14.623 -14.860 1.00 1.00 C +ATOM 1470 CD1 LEU 97 -4.014 15.118 -15.007 1.00 1.00 C +ATOM 1471 CD2 LEU 97 -5.570 13.491 -13.837 1.00 1.00 C +ATOM 1474 HB2 LEU 97 -5.793 16.653 -14.272 1.00 1.00 H +ATOM 1475 HB3 LEU 97 -6.944 15.512 -13.606 1.00 1.00 H +ATOM 1476 HG LEU 97 -5.755 14.217 -15.825 1.00 1.00 H +ATOM 1477 HD11 LEU 97 -4.016 16.116 -15.445 1.00 1.00 H +ATOM 1478 HD12 LEU 97 -3.539 15.152 -14.026 1.00 1.00 H +ATOM 1479 HD13 LEU 97 -3.461 14.438 -15.654 1.00 1.00 H +ATOM 1480 HD21 LEU 97 -6.620 13.237 -13.694 1.00 1.00 H +ATOM 1481 HD22 LEU 97 -5.030 12.616 -14.200 1.00 1.00 H +ATOM 1482 HD23 LEU 97 -5.141 13.814 -12.887 1.00 1.00 H +ATOM 1483 N HIS 98 -9.573 16.588 -14.615 1.00 1.00 N +ATOM 1484 CA HIS 98 -10.671 17.400 -14.118 1.00 1.00 C +ATOM 1485 C HIS 98 -11.194 16.808 -12.807 1.00 1.00 C +ATOM 1486 O HIS 98 -10.879 17.306 -11.728 1.00 1.00 O +ATOM 1493 H HIS 98 -9.718 15.600 -14.556 1.00 1.00 H +ATOM 1494 HA HIS 98 -10.264 18.391 -13.921 1.00 1.00 H +ATOM 1487 CB HIS 98 -11.763 17.547 -15.179 1.00 1.00 C +ATOM 1488 CG HIS 98 -12.718 18.689 -14.926 1.00 1.00 C +ATOM 1489 ND1 HIS 98 -12.291 19.981 -14.679 1.00 1.00 N +ATOM 1490 CD2 HIS 98 -14.080 18.719 -14.884 1.00 1.00 C +ATOM 1491 CE1 HIS 98 -13.356 20.747 -14.497 1.00 1.00 C +ATOM 1492 NE2 HIS 98 -14.464 19.962 -14.624 1.00 1.00 N +ATOM 1495 HB2 HIS 98 -11.293 17.689 -16.153 1.00 1.00 H +ATOM 1496 HB3 HIS 98 -12.331 16.618 -15.233 1.00 1.00 H +ATOM 1497 HD1 HIS 98 -11.338 20.287 -14.642 1.00 1.00 H +ATOM 1498 HD2 HIS 98 -14.742 17.867 -15.038 1.00 1.00 H +ATOM 1499 HE1 HIS 98 -13.348 21.816 -14.283 1.00 1.00 H +ATOM 1500 N TYR 99 -11.984 15.754 -12.945 1.00 1.00 N +ATOM 1501 CA TYR 99 -12.554 15.090 -11.786 1.00 1.00 C +ATOM 1502 C TYR 99 -11.973 13.684 -11.618 1.00 1.00 C +ATOM 1503 O TYR 99 -12.352 12.762 -12.339 1.00 1.00 O +ATOM 1512 H TYR 99 -12.237 15.355 -13.827 1.00 1.00 H +ATOM 1513 HA TYR 99 -12.311 15.683 -10.904 1.00 1.00 H +ATOM 1504 CB TYR 99 -14.056 14.979 -12.058 1.00 1.00 C +ATOM 1505 CG TYR 99 -14.805 16.312 -11.970 1.00 1.00 C +ATOM 1506 CD1 TYR 99 -14.108 17.479 -11.734 1.00 1.00 C +ATOM 1507 CD2 TYR 99 -16.175 16.343 -12.124 1.00 1.00 C +ATOM 1508 CE1 TYR 99 -14.814 18.732 -11.651 1.00 1.00 C +ATOM 1509 CE2 TYR 99 -16.880 17.596 -12.042 1.00 1.00 C +ATOM 1510 CZ TYR 99 -16.164 18.729 -11.808 1.00 1.00 C +ATOM 1511 OH TYR 99 -16.830 19.913 -11.730 1.00 1.00 O +ATOM 1514 HB2 TYR 99 -14.205 14.556 -13.051 1.00 1.00 H +ATOM 1515 HB3 TYR 99 -14.494 14.280 -11.345 1.00 1.00 H +ATOM 1516 HD1 TYR 99 -13.026 17.453 -11.611 1.00 1.00 H +ATOM 1517 HD2 TYR 99 -16.724 15.420 -12.311 1.00 1.00 H +ATOM 1518 HE1 TYR 99 -14.275 19.663 -11.465 1.00 1.00 H +ATOM 1519 HE2 TYR 99 -17.962 17.636 -12.163 1.00 1.00 H +ATOM 1520 HH TYR 99 -17.814 19.755 -11.790 1.00 1.00 H +ATOM 1521 N PRO 100 -11.040 13.561 -10.638 1.00 1.00 N +ATOM 1522 CA PRO 100 -10.402 12.284 -10.367 1.00 1.00 C +ATOM 1523 C PRO 100 -11.355 11.343 -9.625 1.00 1.00 C +ATOM 1524 O PRO 100 -11.237 11.163 -8.414 1.00 1.00 O +ATOM 1528 HA PRO 100 -10.173 11.821 -11.224 1.00 1.00 H +ATOM 1525 CB PRO 100 -9.159 12.626 -9.562 1.00 1.00 C +ATOM 1526 CG PRO 100 -9.389 14.027 -9.015 1.00 1.00 C +ATOM 1527 CD PRO 100 -10.566 14.631 -9.764 1.00 1.00 C +ATOM 1529 HB2 PRO 100 -9.009 11.911 -8.754 1.00 1.00 H +ATOM 1530 HB3 PRO 100 -8.267 12.593 -10.187 1.00 1.00 H +ATOM 1531 HG2 PRO 100 -9.596 13.989 -7.945 1.00 1.00 H +ATOM 1532 HG3 PRO 100 -8.499 14.639 -9.147 1.00 1.00 H +ATOM 1533 HD2 PRO 100 -11.349 14.956 -9.077 1.00 1.00 H +ATOM 1534 HD3 PRO 100 -10.263 15.507 -10.339 1.00 1.00 H +ATOM 1535 N ALA 101 -12.276 10.767 -10.384 1.00 1.00 N +ATOM 1536 CA ALA 101 -13.247 9.849 -9.814 1.00 1.00 C +ATOM 1537 C ALA 101 -12.539 8.901 -8.843 1.00 1.00 C +ATOM 1538 O ALA 101 -11.674 8.126 -9.248 1.00 1.00 O +ATOM 1540 H ALA 101 -12.365 10.919 -11.368 1.00 1.00 H +ATOM 1541 HA ALA 101 -13.978 10.439 -9.262 1.00 1.00 H +ATOM 1539 CB ALA 101 -13.965 9.101 -10.938 1.00 1.00 C +ATOM 1542 HB1 ALA 101 -13.813 9.630 -11.882 1.00 1.00 H +ATOM 1543 HB2 ALA 101 -13.562 8.092 -11.020 1.00 1.00 H +ATOM 1544 HB3 ALA 101 -15.032 9.051 -10.719 1.00 1.00 H +ATOM 1545 N PRO 102 -12.942 8.999 -7.548 1.00 1.00 N +ATOM 1546 CA PRO 102 -12.356 8.160 -6.517 1.00 1.00 C +ATOM 1547 C PRO 102 -12.883 6.727 -6.611 1.00 1.00 C +ATOM 1548 O PRO 102 -13.446 6.334 -7.631 1.00 1.00 O +ATOM 1552 HA PRO 102 -11.366 8.095 -6.645 1.00 1.00 H +ATOM 1549 CB PRO 102 -12.713 8.839 -5.206 1.00 1.00 C +ATOM 1550 CG PRO 102 -13.872 9.771 -5.522 1.00 1.00 C +ATOM 1551 CD PRO 102 -13.962 9.906 -7.033 1.00 1.00 C +ATOM 1553 HB2 PRO 102 -12.995 8.107 -4.451 1.00 1.00 H +ATOM 1554 HB3 PRO 102 -11.864 9.395 -4.810 1.00 1.00 H +ATOM 1555 HG2 PRO 102 -14.802 9.372 -5.118 1.00 1.00 H +ATOM 1556 HG3 PRO 102 -13.715 10.746 -5.060 1.00 1.00 H +ATOM 1557 HD2 PRO 102 -14.954 9.634 -7.396 1.00 1.00 H +ATOM 1558 HD3 PRO 102 -13.778 10.932 -7.350 1.00 1.00 H +ATOM 1559 N LYS 103 -12.683 5.984 -5.532 1.00 1.00 N +ATOM 1560 CA LYS 103 -13.131 4.603 -5.480 1.00 1.00 C +ATOM 1561 C LYS 103 -14.375 4.508 -4.594 1.00 1.00 C +ATOM 1562 O LYS 103 -14.342 4.896 -3.426 1.00 1.00 O +ATOM 1568 H LYS 103 -12.225 6.311 -4.706 1.00 1.00 H +ATOM 1569 HA LYS 103 -13.407 4.310 -6.492 1.00 1.00 H +ATOM 1563 CB LYS 103 -11.991 3.686 -5.037 1.00 1.00 C +ATOM 1564 CG LYS 103 -11.122 4.364 -3.975 1.00 1.00 C +ATOM 1565 CD LYS 103 -10.434 3.327 -3.086 1.00 1.00 C +ATOM 1566 CE LYS 103 -10.257 1.999 -3.827 1.00 1.00 C +ATOM 1567 NZ LYS 103 -9.049 1.293 -3.346 1.00 1.00 N +ATOM 1570 HB2 LYS 103 -12.399 2.756 -4.639 1.00 1.00 H +ATOM 1571 HB3 LYS 103 -11.377 3.420 -5.898 1.00 1.00 H +ATOM 1572 HG2 LYS 103 -10.372 4.989 -4.459 1.00 1.00 H +ATOM 1573 HG3 LYS 103 -11.739 5.020 -3.361 1.00 1.00 H +ATOM 1574 HD2 LYS 103 -9.460 3.702 -2.769 1.00 1.00 H +ATOM 1575 HD3 LYS 103 -11.022 3.167 -2.182 1.00 1.00 H +ATOM 1576 HE2 LYS 103 -11.136 1.373 -3.677 1.00 1.00 H +ATOM 1577 HE3 LYS 103 -10.176 2.183 -4.899 1.00 1.00 H +ATOM 1578 HZ1 LYS 103 -8.449 1.942 -2.877 1.00 1.00 H +ATOM 1579 HZ2 LYS 103 -9.316 0.568 -2.712 1.00 1.00 H +ATOM 1580 HZ3 LYS 103 -8.563 0.894 -4.124 1.00 1.00 H +ATOM 1581 N ARG 104 -15.445 3.992 -5.182 1.00 1.00 N +ATOM 1582 CA ARG 104 -16.697 3.843 -4.461 1.00 1.00 C +ATOM 1583 C ARG 104 -16.858 2.403 -3.970 1.00 1.00 C +ATOM 1584 O ARG 104 -17.380 1.552 -4.688 1.00 1.00 O +ATOM 1592 H ARG 104 -15.464 3.681 -6.132 1.00 1.00 H +ATOM 1593 HA ARG 104 -16.622 4.537 -3.624 1.00 1.00 H +ATOM 1585 CB ARG 104 -17.890 4.207 -5.347 1.00 1.00 C +ATOM 1586 CG ARG 104 -18.559 5.495 -4.862 1.00 1.00 C +ATOM 1587 CD ARG 104 -20.072 5.445 -5.085 1.00 1.00 C +ATOM 1588 NE ARG 104 -20.700 4.545 -4.092 1.00 1.00 N +ATOM 1589 CZ ARG 104 -20.766 4.804 -2.780 1.00 1.00 C +ATOM 1590 NH1 ARG 104 -20.241 5.938 -2.293 1.00 1.00 N +ATOM 1591 NH2 ARG 104 -21.355 3.931 -1.952 1.00 1.00 N +ATOM 1594 HB2 ARG 104 -17.557 4.332 -6.378 1.00 1.00 H +ATOM 1595 HB3 ARG 104 -18.614 3.394 -5.342 1.00 1.00 H +ATOM 1596 HG2 ARG 104 -18.350 5.641 -3.803 1.00 1.00 H +ATOM 1597 HG3 ARG 104 -18.138 6.350 -5.391 1.00 1.00 H +ATOM 1598 HD2 ARG 104 -20.494 6.445 -5.000 1.00 1.00 H +ATOM 1599 HD3 ARG 104 -20.287 5.092 -6.095 1.00 1.00 H +ATOM 1600 HE ARG 104 -21.101 3.690 -4.421 1.00 1.00 H +ATOM 1601 HH11 ARG 104 -19.801 6.591 -2.911 1.00 1.00 H +ATOM 1602 HH12 ARG 104 -20.290 6.132 -1.313 1.00 1.00 H +ATOM 1603 HH21 ARG 104 -21.746 3.085 -2.315 1.00 1.00 H +ATOM 1604 HH22 ARG 104 -21.404 4.125 -0.972 1.00 1.00 H +ATOM 1605 N GLY 105 -16.399 2.173 -2.748 1.00 1.00 N +ATOM 1606 CA GLY 105 -16.485 0.851 -2.152 1.00 1.00 C +ATOM 1607 C GLY 105 -17.876 0.603 -1.567 1.00 1.00 C +ATOM 1608 O GLY 105 -18.391 1.424 -0.810 1.00 1.00 O +ATOM 1609 H GLY 105 -15.975 2.871 -2.170 1.00 1.00 H +ATOM 1610 HA2 GLY 105 -16.262 0.094 -2.904 1.00 1.00 H +ATOM 1611 HA3 GLY 105 -15.734 0.753 -1.368 1.00 1.00 H +ATOM 1612 N ILE 106 -18.446 -0.534 -1.941 1.00 1.00 N +ATOM 1613 CA ILE 106 -19.768 -0.900 -1.462 1.00 1.00 C +ATOM 1614 C ILE 106 -19.639 -2.013 -0.420 1.00 1.00 C +ATOM 1615 O ILE 106 -20.084 -1.861 0.716 1.00 1.00 O +ATOM 1620 H ILE 106 -18.021 -1.197 -2.555 1.00 1.00 H +ATOM 1621 HA ILE 106 -20.196 -0.023 -0.978 1.00 1.00 H +ATOM 1616 CB ILE 106 -20.682 -1.260 -2.635 1.00 1.00 C +ATOM 1617 CG1 ILE 106 -20.907 -0.051 -3.545 1.00 1.00 C +ATOM 1618 CG2 ILE 106 -21.999 -1.859 -2.141 1.00 1.00 C +ATOM 1619 CD1 ILE 106 -21.613 -0.461 -4.838 1.00 1.00 C +ATOM 1622 HB ILE 106 -20.185 -2.024 -3.233 1.00 1.00 H +ATOM 1623 HG12 ILE 106 -21.504 0.696 -3.023 1.00 1.00 H +ATOM 1624 HG13 ILE 106 -19.950 0.415 -3.781 1.00 1.00 H +ATOM 1625 HG21 ILE 106 -22.021 -1.840 -1.051 1.00 1.00 H +ATOM 1626 HG22 ILE 106 -22.833 -1.275 -2.531 1.00 1.00 H +ATOM 1627 HG23 ILE 106 -22.084 -2.889 -2.488 1.00 1.00 H +ATOM 1628 HD11 ILE 106 -22.563 -0.940 -4.598 1.00 1.00 H +ATOM 1629 HD12 ILE 106 -21.797 0.423 -5.449 1.00 1.00 H +ATOM 1630 HD13 ILE 106 -20.983 -1.161 -5.390 1.00 1.00 H +ATOM 1631 N HIS 107 -19.026 -3.109 -0.845 1.00 1.00 N +ATOM 1632 CA HIS 107 -18.832 -4.247 0.038 1.00 1.00 C +ATOM 1633 C HIS 107 -20.141 -4.564 0.762 1.00 1.00 C +ATOM 1634 O HIS 107 -20.130 -5.144 1.846 1.00 1.00 O +ATOM 1641 H HIS 107 -18.666 -3.226 -1.771 1.00 1.00 H +ATOM 1642 HA HIS 107 -18.564 -5.092 -0.597 1.00 1.00 H +ATOM 1635 CB HIS 107 -17.667 -3.998 0.997 1.00 1.00 C +ATOM 1636 CG HIS 107 -17.561 -2.571 1.477 1.00 1.00 C +ATOM 1637 ND1 HIS 107 -16.679 -1.658 0.926 1.00 1.00 N +ATOM 1638 CD2 HIS 107 -18.237 -1.908 2.460 1.00 1.00 C +ATOM 1639 CE1 HIS 107 -16.824 -0.502 1.556 1.00 1.00 C +ATOM 1640 NE2 HIS 107 -17.789 -0.659 2.508 1.00 1.00 N +ATOM 1643 HB2 HIS 107 -17.775 -4.653 1.862 1.00 1.00 H +ATOM 1644 HB3 HIS 107 -16.736 -4.274 0.503 1.00 1.00 H +ATOM 1645 HD1 HIS 107 -16.040 -1.840 0.177 1.00 1.00 H +ATOM 1646 HD2 HIS 107 -19.010 -2.333 3.099 1.00 1.00 H +ATOM 1647 HE1 HIS 107 -16.270 0.415 1.351 1.00 1.00 H +ATOM 1648 N ARG 108 -21.238 -4.171 0.133 1.00 1.00 N +ATOM 1649 CA ARG 108 -22.553 -4.404 0.705 1.00 1.00 C +ATOM 1650 C ARG 108 -22.526 -4.164 2.216 1.00 1.00 C +ATOM 1651 O ARG 108 -22.692 -3.034 2.672 1.00 1.00 O +ATOM 1659 H ARG 108 -21.239 -3.699 -0.748 1.00 1.00 H +ATOM 1660 HA ARG 108 -23.207 -3.688 0.205 1.00 1.00 H +ATOM 1652 CB ARG 108 -23.026 -5.833 0.430 1.00 1.00 C +ATOM 1653 CG ARG 108 -23.876 -5.895 -0.840 1.00 1.00 C +ATOM 1654 CD ARG 108 -23.053 -5.509 -2.069 1.00 1.00 C +ATOM 1655 NE ARG 108 -23.759 -4.465 -2.845 1.00 1.00 N +ATOM 1656 CZ ARG 108 -23.986 -4.533 -4.165 1.00 1.00 C +ATOM 1657 NH1 ARG 108 -23.564 -5.596 -4.863 1.00 1.00 N +ATOM 1658 NH2 ARG 108 -24.637 -3.539 -4.784 1.00 1.00 N +ATOM 1661 HB2 ARG 108 -22.164 -6.492 0.328 1.00 1.00 H +ATOM 1662 HB3 ARG 108 -23.606 -6.198 1.279 1.00 1.00 H +ATOM 1663 HG2 ARG 108 -24.275 -6.902 -0.966 1.00 1.00 H +ATOM 1664 HG3 ARG 108 -24.730 -5.224 -0.743 1.00 1.00 H +ATOM 1665 HD2 ARG 108 -22.073 -5.144 -1.762 1.00 1.00 H +ATOM 1666 HD3 ARG 108 -22.885 -6.386 -2.695 1.00 1.00 H +ATOM 1667 HE ARG 108 -24.089 -3.658 -2.354 1.00 1.00 H +ATOM 1668 HH11 ARG 108 -23.080 -6.337 -4.400 1.00 1.00 H +ATOM 1669 HH12 ARG 108 -23.734 -5.647 -5.847 1.00 1.00 H +ATOM 1670 HH21 ARG 108 -24.951 -2.746 -4.263 1.00 1.00 H +ATOM 1671 HH22 ARG 108 -24.807 -3.590 -5.768 1.00 1.00 H +ATOM 1672 N ASP 109 -22.314 -5.247 2.951 1.00 1.00 N +ATOM 1673 CA ASP 109 -22.263 -5.168 4.401 1.00 1.00 C +ATOM 1674 C ASP 109 -23.391 -4.261 4.898 1.00 1.00 C +ATOM 1675 O ASP 109 -24.249 -3.911 4.059 1.00 1.00 O +ATOM 1681 H ASP 109 -22.181 -6.162 2.571 1.00 1.00 H +ATOM 1682 HA ASP 109 -22.371 -6.196 4.747 1.00 1.00 H +ATOM 1676 CB ASP 109 -20.935 -4.574 4.873 1.00 1.00 C +ATOM 1677 CG ASP 109 -20.329 -5.246 6.107 1.00 1.00 C +ATOM 1678 OD1 ASP 109 -20.336 -6.535 6.085 1.00 1.00 O +ATOM 1679 OD2 ASP 109 -19.873 -4.570 7.043 1.00 1.00 O +ATOM 1683 HB2 ASP 109 -20.216 -4.634 4.055 1.00 1.00 H +ATOM 1684 HB3 ASP 109 -21.085 -3.516 5.090 1.00 1.00 H +ATOM 1680 OXT ASP 109 -23.431 -3.904 6.075 1.00 1.00 O +TER +END diff --git a/Mobi/data/stdout3 b/Mobi/data/stdout3 new file mode 100644 index 0000000..ce56d67 --- /dev/null +++ b/Mobi/data/stdout3 @@ -0,0 +1,1695 @@ +SEQRES 0 109 GLY SER GLY ASN SER LEU GLU LYS HIS SER TRP TYR HIS +SEQRES 1 109 GLY PRO VAL SER ARG ASN ALA ALA GLU TYR LEU LEU SER +SEQRES 2 109 SER GLY ILE ASN GLY SER PHE LEU VAL ARG GLU SER GLU +SEQRES 3 109 SER SER PRO GLY GLN ARG SER ILE SER LEU ARG TYR GLU +SEQRES 4 109 GLY ARG VAL TYR HIS TYR ARG ILE ASN THR ALA SER ASP +SEQRES 5 109 GLY LYS LEU TYR VAL SER SER GLU SER ARG PHE ASN THR +SEQRES 6 109 LEU ALA GLU LEU VAL HIS HIS HIS SER THR VAL ALA ASP +SEQRES 7 109 GLY LEU ILE THR THR LEU HIS TYR PRO ALA PRO LYS ARG +SEQRES 9 109 GLY ILE HIS ARG ASP +ATOM 1 N GLY 1 -9.223 0.782 9.655 1.00 1.00 N +ATOM 2 CA GLY 1 -9.830 1.489 8.541 1.00 1.00 C +ATOM 3 C GLY 1 -9.954 0.580 7.315 1.00 1.00 C +ATOM 4 O GLY 1 -9.059 0.543 6.473 1.00 1.00 O +ATOM 5 H1 GLY 1 -9.538 -0.182 9.656 1.00 1.00 H +ATOM 6 H2 GLY 1 -8.214 0.808 9.563 1.00 1.00 H +ATOM 7 H3 GLY 1 -9.494 1.226 10.526 1.00 1.00 H +ATOM 8 HA2 GLY 1 -10.815 1.853 8.830 1.00 1.00 H +ATOM 9 HA3 GLY 1 -9.228 2.363 8.290 1.00 1.00 H +ATOM 10 N SER 2 -11.070 -0.131 7.257 1.00 1.00 N +ATOM 11 CA SER 2 -11.323 -1.037 6.149 1.00 1.00 C +ATOM 12 C SER 2 -12.109 -0.317 5.052 1.00 1.00 C +ATOM 13 O SER 2 -13.085 0.376 5.337 1.00 1.00 O +ATOM 16 H SER 2 -11.793 -0.095 7.946 1.00 1.00 H +ATOM 17 HA SER 2 -10.337 -1.329 5.786 1.00 1.00 H +ATOM 14 CB SER 2 -12.082 -2.280 6.618 1.00 1.00 C +ATOM 15 OG SER 2 -13.199 -1.947 7.436 1.00 1.00 O +ATOM 18 HB2 SER 2 -12.423 -2.844 5.751 1.00 1.00 H +ATOM 19 HB3 SER 2 -11.405 -2.929 7.174 1.00 1.00 H +ATOM 20 HG SER 2 -13.927 -1.552 6.875 1.00 1.00 H +ATOM 21 N GLY 3 -11.654 -0.504 3.822 1.00 1.00 N +ATOM 22 CA GLY 3 -12.305 0.119 2.681 1.00 1.00 C +ATOM 23 C GLY 3 -11.365 0.168 1.476 1.00 1.00 C +ATOM 24 O GLY 3 -11.464 -0.659 0.571 1.00 1.00 O +ATOM 25 H GLY 3 -10.860 -1.070 3.600 1.00 1.00 H +ATOM 26 HA2 GLY 3 -13.205 -0.439 2.422 1.00 1.00 H +ATOM 27 HA3 GLY 3 -12.619 1.128 2.944 1.00 1.00 H +ATOM 28 N ASN 4 -10.472 1.148 1.501 1.00 1.00 N +ATOM 29 CA ASN 4 -9.515 1.316 0.422 1.00 1.00 C +ATOM 30 C ASN 4 -8.125 1.567 1.012 1.00 1.00 C +ATOM 31 O ASN 4 -8.000 1.923 2.183 1.00 1.00 O +ATOM 36 H ASN 4 -10.397 1.815 2.242 1.00 1.00 H +ATOM 37 HA ASN 4 -9.563 0.390 -0.152 1.00 1.00 H +ATOM 32 CB ASN 4 -9.879 2.516 -0.456 1.00 1.00 C +ATOM 33 CG ASN 4 -9.449 2.286 -1.904 1.00 1.00 C +ATOM 34 OD1 ASN 4 -10.077 1.561 -2.659 1.00 1.00 O +ATOM 35 ND2 ASN 4 -8.347 2.944 -2.253 1.00 1.00 N +ATOM 38 HB2 ASN 4 -10.955 2.688 -0.414 1.00 1.00 H +ATOM 39 HB3 ASN 4 -9.398 3.414 -0.067 1.00 1.00 H +ATOM 40 HD21 ASN 4 -7.879 3.524 -1.586 1.00 1.00 H +ATOM 41 HD22 ASN 4 -7.986 2.858 -3.182 1.00 1.00 H +ATOM 42 N SER 5 -7.118 1.372 0.174 1.00 1.00 N +ATOM 43 CA SER 5 -5.743 1.573 0.599 1.00 1.00 C +ATOM 44 C SER 5 -5.004 2.448 -0.416 1.00 1.00 C +ATOM 45 O SER 5 -5.477 2.640 -1.535 1.00 1.00 O +ATOM 48 H SER 5 -7.228 1.083 -0.775 1.00 1.00 H +ATOM 49 HA SER 5 -5.809 2.078 1.561 1.00 1.00 H +ATOM 46 CB SER 5 -5.019 0.236 0.773 1.00 1.00 C +ATOM 47 OG SER 5 -4.955 -0.500 -0.446 1.00 1.00 O +ATOM 50 HB2 SER 5 -4.009 0.415 1.140 1.00 1.00 H +ATOM 51 HB3 SER 5 -5.533 -0.358 1.528 1.00 1.00 H +ATOM 52 HG SER 5 -5.342 -1.412 -0.316 1.00 1.00 H +ATOM 53 N LEU 6 -3.857 2.954 0.010 1.00 1.00 N +ATOM 54 CA LEU 6 -3.049 3.804 -0.847 1.00 1.00 C +ATOM 55 C LEU 6 -3.955 4.804 -1.567 1.00 1.00 C +ATOM 56 O LEU 6 -3.758 5.088 -2.747 1.00 1.00 O +ATOM 61 H LEU 6 -3.480 2.793 0.922 1.00 1.00 H +ATOM 62 HA LEU 6 -2.363 4.358 -0.205 1.00 1.00 H +ATOM 57 CB LEU 6 -2.197 2.955 -1.793 1.00 1.00 C +ATOM 58 CG LEU 6 -2.945 2.277 -2.942 1.00 1.00 C +ATOM 59 CD1 LEU 6 -2.170 2.408 -4.255 1.00 1.00 C +ATOM 60 CD2 LEU 6 -3.258 0.817 -2.606 1.00 1.00 C +ATOM 63 HB2 LEU 6 -1.417 3.589 -2.218 1.00 1.00 H +ATOM 64 HB3 LEU 6 -1.696 2.185 -1.207 1.00 1.00 H +ATOM 65 HG LEU 6 -3.898 2.788 -3.078 1.00 1.00 H +ATOM 66 HD11 LEU 6 -1.984 3.462 -4.462 1.00 1.00 H +ATOM 67 HD12 LEU 6 -1.221 1.880 -4.170 1.00 1.00 H +ATOM 68 HD13 LEU 6 -2.755 1.976 -5.067 1.00 1.00 H +ATOM 69 HD21 LEU 6 -2.510 0.435 -1.914 1.00 1.00 H +ATOM 70 HD22 LEU 6 -4.245 0.754 -2.146 1.00 1.00 H +ATOM 71 HD23 LEU 6 -3.247 0.222 -3.520 1.00 1.00 H +ATOM 72 N GLU 7 -4.929 5.312 -0.825 1.00 1.00 N +ATOM 73 CA GLU 7 -5.866 6.275 -1.377 1.00 1.00 C +ATOM 74 C GLU 7 -5.205 7.650 -1.499 1.00 1.00 C +ATOM 75 O GLU 7 -5.558 8.578 -0.775 1.00 1.00 O +ATOM 81 H GLU 7 -5.081 5.075 0.135 1.00 1.00 H +ATOM 82 HA GLU 7 -6.119 5.897 -2.368 1.00 1.00 H +ATOM 76 CB GLU 7 -7.137 6.351 -0.529 1.00 1.00 C +ATOM 77 CG GLU 7 -8.373 6.007 -1.363 1.00 1.00 C +ATOM 78 CD GLU 7 -9.393 7.149 -1.327 1.00 1.00 C +ATOM 79 OE1 GLU 7 -9.898 7.496 -0.250 1.00 1.00 O +ATOM 80 OE2 GLU 7 -9.654 7.680 -2.473 1.00 1.00 O +ATOM 83 HB2 GLU 7 -7.059 5.663 0.312 1.00 1.00 H +ATOM 84 HB3 GLU 7 -7.241 7.353 -0.114 1.00 1.00 H +ATOM 85 HG2 GLU 7 -8.079 5.811 -2.393 1.00 1.00 H +ATOM 86 HG3 GLU 7 -8.831 5.094 -0.982 1.00 1.00 H +ATOM 87 N LYS 8 -4.258 7.735 -2.421 1.00 1.00 N +ATOM 88 CA LYS 8 -3.544 8.980 -2.648 1.00 1.00 C +ATOM 89 C LYS 8 -4.544 10.076 -3.020 1.00 1.00 C +ATOM 90 O LYS 8 -5.380 10.462 -2.205 1.00 1.00 O +ATOM 96 H LYS 8 -3.977 6.975 -3.007 1.00 1.00 H +ATOM 97 HA LYS 8 -3.062 9.257 -1.709 1.00 1.00 H +ATOM 91 CB LYS 8 -2.436 8.782 -3.685 1.00 1.00 C +ATOM 92 CG LYS 8 -1.359 9.860 -3.548 1.00 1.00 C +ATOM 93 CD LYS 8 -0.907 10.360 -4.921 1.00 1.00 C +ATOM 94 CE LYS 8 0.614 10.271 -5.064 1.00 1.00 C +ATOM 95 NZ LYS 8 1.026 8.877 -5.345 1.00 1.00 N +ATOM 98 HB2 LYS 8 -1.987 7.797 -3.558 1.00 1.00 H +ATOM 99 HB3 LYS 8 -2.861 8.813 -4.687 1.00 1.00 H +ATOM 100 HG2 LYS 8 -1.746 10.695 -2.963 1.00 1.00 H +ATOM 101 HG3 LYS 8 -0.503 9.460 -3.004 1.00 1.00 H +ATOM 102 HD2 LYS 8 -1.385 9.770 -5.703 1.00 1.00 H +ATOM 103 HD3 LYS 8 -1.229 11.392 -5.061 1.00 1.00 H +ATOM 104 HE2 LYS 8 0.948 10.926 -5.869 1.00 1.00 H +ATOM 105 HE3 LYS 8 1.093 10.621 -4.149 1.00 1.00 H +ATOM 106 HZ1 LYS 8 0.392 8.239 -4.887 1.00 1.00 H +ATOM 107 HZ2 LYS 8 1.020 8.671 -6.338 1.00 1.00 H +ATOM 108 HZ3 LYS 8 1.964 8.728 -4.998 1.00 1.00 H +ATOM 109 N HIS 9 -4.427 10.547 -4.253 1.00 1.00 N +ATOM 110 CA HIS 9 -5.310 11.591 -4.743 1.00 1.00 C +ATOM 111 C HIS 9 -6.729 11.037 -4.885 1.00 1.00 C +ATOM 112 O HIS 9 -6.978 9.870 -4.584 1.00 1.00 O +ATOM 119 H HIS 9 -3.744 10.228 -4.910 1.00 1.00 H +ATOM 120 HA HIS 9 -5.311 12.380 -3.991 1.00 1.00 H +ATOM 113 CB HIS 9 -4.775 12.189 -6.045 1.00 1.00 C +ATOM 114 CG HIS 9 -3.579 13.091 -5.860 1.00 1.00 C +ATOM 115 ND1 HIS 9 -2.762 13.033 -4.744 1.00 1.00 N +ATOM 116 CD2 HIS 9 -3.068 14.071 -6.659 1.00 1.00 C +ATOM 117 CE1 HIS 9 -1.808 13.943 -4.876 1.00 1.00 C +ATOM 118 NE2 HIS 9 -1.999 14.585 -6.064 1.00 1.00 N +ATOM 121 HB2 HIS 9 -4.505 11.378 -6.721 1.00 1.00 H +ATOM 122 HB3 HIS 9 -5.572 12.754 -6.529 1.00 1.00 H +ATOM 123 HD1 HIS 9 -2.873 12.411 -3.970 1.00 1.00 H +ATOM 124 HD2 HIS 9 -3.471 14.380 -7.625 1.00 1.00 H +ATOM 125 HE1 HIS 9 -1.010 14.143 -4.162 1.00 1.00 H +ATOM 126 N SER 10 -7.625 11.900 -5.343 1.00 1.00 N +ATOM 127 CA SER 10 -9.013 11.512 -5.530 1.00 1.00 C +ATOM 128 C SER 10 -9.161 10.698 -6.816 1.00 1.00 C +ATOM 129 O SER 10 -10.269 10.325 -7.194 1.00 1.00 O +ATOM 132 H SER 10 -7.415 12.848 -5.586 1.00 1.00 H +ATOM 133 HA SER 10 -9.261 10.901 -4.661 1.00 1.00 H +ATOM 130 CB SER 10 -9.927 12.738 -5.567 1.00 1.00 C +ATOM 131 OG SER 10 -9.302 13.850 -6.202 1.00 1.00 O +ATOM 134 HB2 SER 10 -10.847 12.487 -6.096 1.00 1.00 H +ATOM 135 HB3 SER 10 -10.209 13.012 -4.551 1.00 1.00 H +ATOM 136 HG SER 10 -8.672 13.530 -6.910 1.00 1.00 H +ATOM 137 N TRP 11 -8.027 10.448 -7.455 1.00 1.00 N +ATOM 138 CA TRP 11 -8.017 9.687 -8.692 1.00 1.00 C +ATOM 139 C TRP 11 -7.144 8.449 -8.478 1.00 1.00 C +ATOM 140 O TRP 11 -6.957 7.650 -9.394 1.00 1.00 O +ATOM 151 H TRP 11 -7.129 10.756 -7.141 1.00 1.00 H +ATOM 152 HA TRP 11 -9.042 9.387 -8.907 1.00 1.00 H +ATOM 141 CB TRP 11 -7.549 10.551 -9.864 1.00 1.00 C +ATOM 142 CG TRP 11 -6.345 11.440 -9.543 1.00 1.00 C +ATOM 143 CD1 TRP 11 -6.302 12.776 -9.476 1.00 1.00 C +ATOM 144 CD2 TRP 11 -5.005 10.994 -9.246 1.00 1.00 C +ATOM 145 NE1 TRP 11 -5.035 13.225 -9.159 1.00 1.00 N +ATOM 146 CE2 TRP 11 -4.222 12.107 -9.014 1.00 1.00 C +ATOM 147 CE3 TRP 11 -4.472 9.695 -9.174 1.00 1.00 C +ATOM 148 CZ2 TRP 11 -2.861 12.034 -8.695 1.00 1.00 C +ATOM 149 CZ3 TRP 11 -3.111 9.639 -8.856 1.00 1.00 C +ATOM 150 CH2 TRP 11 -2.308 10.749 -8.620 1.00 1.00 C +ATOM 153 HB2 TRP 11 -7.296 9.902 -10.703 1.00 1.00 H +ATOM 154 HB3 TRP 11 -8.377 11.183 -10.189 1.00 1.00 H +ATOM 155 HD1 TRP 11 -7.156 13.428 -9.651 1.00 1.00 H +ATOM 156 HE1 TRP 11 -4.729 14.264 -9.042 1.00 1.00 H +ATOM 157 HE3 TRP 11 -5.070 8.801 -9.354 1.00 1.00 H +ATOM 158 HZ2 TRP 11 -2.263 12.927 -8.517 1.00 1.00 H +ATOM 159 HZ3 TRP 11 -2.646 8.655 -8.787 1.00 1.00 H +ATOM 160 HH2 TRP 11 -1.253 10.620 -8.376 1.00 1.00 H +ATOM 161 N TYR 12 -6.631 8.328 -7.261 1.00 1.00 N +ATOM 162 CA TYR 12 -5.783 7.201 -6.915 1.00 1.00 C +ATOM 163 C TYR 12 -6.386 6.394 -5.764 1.00 1.00 C +ATOM 164 O TYR 12 -6.521 6.899 -4.650 1.00 1.00 O +ATOM 173 H TYR 12 -6.788 8.983 -6.522 1.00 1.00 H +ATOM 174 HA TYR 12 -5.699 6.560 -7.792 1.00 1.00 H +ATOM 165 CB TYR 12 -4.451 7.801 -6.460 1.00 1.00 C +ATOM 166 CG TYR 12 -3.264 6.843 -6.581 1.00 1.00 C +ATOM 167 CD1 TYR 12 -3.450 5.486 -6.408 1.00 1.00 C +ATOM 168 CD2 TYR 12 -2.006 7.335 -6.865 1.00 1.00 C +ATOM 169 CE1 TYR 12 -2.332 4.586 -6.523 1.00 1.00 C +ATOM 170 CE2 TYR 12 -0.888 6.435 -6.978 1.00 1.00 C +ATOM 171 CZ TYR 12 -1.106 5.105 -6.803 1.00 1.00 C +ATOM 172 OH TYR 12 -0.052 4.253 -6.910 1.00 1.00 O +ATOM 175 HB2 TYR 12 -4.245 8.694 -7.049 1.00 1.00 H +ATOM 176 HB3 TYR 12 -4.543 8.118 -5.422 1.00 1.00 H +ATOM 177 HD1 TYR 12 -4.443 5.098 -6.185 1.00 1.00 H +ATOM 178 HD2 TYR 12 -1.859 8.407 -7.001 1.00 1.00 H +ATOM 179 HE1 TYR 12 -2.466 3.512 -6.388 1.00 1.00 H +ATOM 180 HE2 TYR 12 0.111 6.811 -7.202 1.00 1.00 H +ATOM 181 HH TYR 12 -0.199 3.622 -7.673 1.00 1.00 H +ATOM 182 N HIS 13 -6.732 5.153 -6.071 1.00 1.00 N +ATOM 183 CA HIS 13 -7.318 4.271 -5.075 1.00 1.00 C +ATOM 184 C HIS 13 -6.467 3.005 -4.948 1.00 1.00 C +ATOM 185 O HIS 13 -5.932 2.717 -3.878 1.00 1.00 O +ATOM 192 H HIS 13 -6.619 4.749 -6.980 1.00 1.00 H +ATOM 193 HA HIS 13 -7.295 4.811 -4.128 1.00 1.00 H +ATOM 186 CB HIS 13 -8.780 3.972 -5.407 1.00 1.00 C +ATOM 187 CG HIS 13 -9.007 3.520 -6.830 1.00 1.00 C +ATOM 188 ND1 HIS 13 -9.663 2.342 -7.148 1.00 1.00 N +ATOM 189 CD2 HIS 13 -8.661 4.099 -8.016 1.00 1.00 C +ATOM 190 CE1 HIS 13 -9.702 2.228 -8.467 1.00 1.00 C +ATOM 191 NE2 HIS 13 -9.080 3.316 -9.003 1.00 1.00 N +ATOM 194 HB2 HIS 13 -9.146 3.201 -4.729 1.00 1.00 H +ATOM 195 HB3 HIS 13 -9.374 4.866 -5.223 1.00 1.00 H +ATOM 196 HD1 HIS 13 -10.042 1.690 -6.492 1.00 1.00 H +ATOM 197 HD2 HIS 13 -8.129 5.043 -8.131 1.00 1.00 H +ATOM 198 HE1 HIS 13 -10.153 1.407 -9.026 1.00 1.00 H +ATOM 199 N GLY 14 -6.370 2.282 -6.054 1.00 1.00 N +ATOM 200 CA GLY 14 -5.595 1.054 -6.079 1.00 1.00 C +ATOM 201 C GLY 14 -5.351 0.590 -7.517 1.00 1.00 C +ATOM 202 O GLY 14 -6.092 0.958 -8.427 1.00 1.00 O +ATOM 203 H GLY 14 -6.809 2.524 -6.921 1.00 1.00 H +ATOM 204 HA2 GLY 14 -4.640 1.212 -5.578 1.00 1.00 H +ATOM 205 HA3 GLY 14 -6.121 0.276 -5.527 1.00 1.00 H +ATOM 206 N PRO 15 -4.281 -0.233 -7.682 1.00 1.00 N +ATOM 207 CA PRO 15 -3.928 -0.751 -8.992 1.00 1.00 C +ATOM 208 C PRO 15 -4.891 -1.862 -9.420 1.00 1.00 C +ATOM 209 O PRO 15 -5.060 -2.848 -8.706 1.00 1.00 O +ATOM 213 HA PRO 15 -4.015 -0.033 -9.684 1.00 1.00 H +ATOM 210 CB PRO 15 -2.493 -1.230 -8.854 1.00 1.00 C +ATOM 211 CG PRO 15 -2.248 -1.390 -7.362 1.00 1.00 C +ATOM 212 CD PRO 15 -3.379 -0.689 -6.627 1.00 1.00 C +ATOM 214 HB2 PRO 15 -2.343 -2.174 -9.377 1.00 1.00 H +ATOM 215 HB3 PRO 15 -1.797 -0.512 -9.288 1.00 1.00 H +ATOM 216 HG2 PRO 15 -2.214 -2.446 -7.092 1.00 1.00 H +ATOM 217 HG3 PRO 15 -1.286 -0.959 -7.084 1.00 1.00 H +ATOM 218 HD2 PRO 15 -3.886 -1.367 -5.940 1.00 1.00 H +ATOM 219 HD3 PRO 15 -3.007 0.147 -6.033 1.00 1.00 H +ATOM 220 N VAL 16 -5.495 -1.661 -10.582 1.00 1.00 N +ATOM 221 CA VAL 16 -6.436 -2.633 -11.112 1.00 1.00 C +ATOM 222 C VAL 16 -6.411 -2.580 -12.641 1.00 1.00 C +ATOM 223 O VAL 16 -5.860 -1.646 -13.222 1.00 1.00 O +ATOM 227 H VAL 16 -5.352 -0.855 -11.155 1.00 1.00 H +ATOM 228 HA VAL 16 -6.105 -3.622 -10.789 1.00 1.00 H +ATOM 224 CB VAL 16 -7.829 -2.387 -10.528 1.00 1.00 C +ATOM 225 CG1 VAL 16 -8.813 -3.465 -10.985 1.00 1.00 C +ATOM 226 CG2 VAL 16 -7.776 -2.304 -9.001 1.00 1.00 C +ATOM 229 HB VAL 16 -8.183 -1.427 -10.903 1.00 1.00 H +ATOM 230 HG11 VAL 16 -8.408 -4.450 -10.752 1.00 1.00 H +ATOM 231 HG12 VAL 16 -9.763 -3.332 -10.467 1.00 1.00 H +ATOM 232 HG13 VAL 16 -8.970 -3.381 -12.059 1.00 1.00 H +ATOM 233 HG21 VAL 16 -7.249 -3.174 -8.607 1.00 1.00 H +ATOM 234 HG22 VAL 16 -7.251 -1.396 -8.703 1.00 1.00 H +ATOM 235 HG23 VAL 16 -8.790 -2.285 -8.603 1.00 1.00 H +ATOM 236 N SER 17 -7.013 -3.592 -13.246 1.00 1.00 N +ATOM 237 CA SER 17 -7.066 -3.672 -14.696 1.00 1.00 C +ATOM 238 C SER 17 -8.082 -2.664 -15.238 1.00 1.00 C +ATOM 239 O SER 17 -9.062 -2.344 -14.569 1.00 1.00 O +ATOM 242 H SER 17 -7.458 -4.347 -12.765 1.00 1.00 H +ATOM 243 HA SER 17 -6.062 -3.424 -15.036 1.00 1.00 H +ATOM 240 CB SER 17 -7.425 -5.085 -15.158 1.00 1.00 C +ATOM 241 OG SER 17 -7.163 -5.278 -16.544 1.00 1.00 O +ATOM 244 HB2 SER 17 -6.855 -5.812 -14.577 1.00 1.00 H +ATOM 245 HB3 SER 17 -8.479 -5.277 -14.957 1.00 1.00 H +ATOM 246 HG SER 17 -7.141 -4.395 -17.014 1.00 1.00 H +ATOM 247 N ARG 18 -7.809 -2.190 -16.445 1.00 1.00 N +ATOM 248 CA ARG 18 -8.687 -1.224 -17.085 1.00 1.00 C +ATOM 249 C ARG 18 -10.148 -1.645 -16.924 1.00 1.00 C +ATOM 250 O ARG 18 -11.038 -0.800 -16.854 1.00 1.00 O +ATOM 258 H ARG 18 -7.009 -2.455 -16.984 1.00 1.00 H +ATOM 259 HA ARG 18 -8.489 -0.285 -16.569 1.00 1.00 H +ATOM 251 CB ARG 18 -8.363 -1.089 -18.574 1.00 1.00 C +ATOM 252 CG ARG 18 -9.286 -1.970 -19.419 1.00 1.00 C +ATOM 253 CD ARG 18 -8.750 -2.120 -20.843 1.00 1.00 C +ATOM 254 NE ARG 18 -7.491 -2.901 -20.830 1.00 1.00 N +ATOM 255 CZ ARG 18 -6.573 -2.862 -21.804 1.00 1.00 C +ATOM 256 NH1 ARG 18 -6.766 -2.082 -22.876 1.00 1.00 N +ATOM 257 NH2 ARG 18 -5.461 -3.605 -21.708 1.00 1.00 N +ATOM 260 HB2 ARG 18 -8.469 -0.048 -18.880 1.00 1.00 H +ATOM 261 HB3 ARG 18 -7.325 -1.369 -18.753 1.00 1.00 H +ATOM 262 HG2 ARG 18 -9.381 -2.953 -18.954 1.00 1.00 H +ATOM 263 HG3 ARG 18 -10.285 -1.534 -19.446 1.00 1.00 H +ATOM 264 HD2 ARG 18 -9.490 -2.620 -21.469 1.00 1.00 H +ATOM 265 HD3 ARG 18 -8.573 -1.138 -21.280 1.00 1.00 H +ATOM 266 HE ARG 18 -7.317 -3.495 -20.043 1.00 1.00 H +ATOM 267 HH11 ARG 18 -7.596 -1.528 -22.949 1.00 1.00 H +ATOM 268 HH12 ARG 18 -6.080 -2.053 -23.603 1.00 1.00 H +ATOM 269 HH21 ARG 18 -5.318 -4.187 -20.907 1.00 1.00 H +ATOM 270 HH22 ARG 18 -4.776 -3.575 -22.435 1.00 1.00 H +ATOM 271 N ASN 19 -10.351 -2.955 -16.870 1.00 1.00 N +ATOM 272 CA ASN 19 -11.690 -3.498 -16.718 1.00 1.00 C +ATOM 273 C ASN 19 -12.440 -2.705 -15.647 1.00 1.00 C +ATOM 274 O ASN 19 -13.493 -2.129 -15.920 1.00 1.00 O +ATOM 279 H ASN 19 -9.621 -3.636 -16.929 1.00 1.00 H +ATOM 280 HA ASN 19 -12.148 -3.409 -17.703 1.00 1.00 H +ATOM 275 CB ASN 19 -11.642 -4.962 -16.276 1.00 1.00 C +ATOM 276 CG ASN 19 -12.113 -5.890 -17.398 1.00 1.00 C +ATOM 277 OD1 ASN 19 -13.147 -6.533 -17.313 1.00 1.00 O +ATOM 278 ND2 ASN 19 -11.300 -5.924 -18.449 1.00 1.00 N +ATOM 281 HB2 ASN 19 -10.624 -5.226 -15.985 1.00 1.00 H +ATOM 282 HB3 ASN 19 -12.271 -5.101 -15.396 1.00 1.00 H +ATOM 283 HD21 ASN 19 -10.468 -5.372 -18.454 1.00 1.00 H +ATOM 284 HD22 ASN 19 -11.523 -6.503 -19.235 1.00 1.00 H +ATOM 285 N ALA 20 -11.868 -2.699 -14.452 1.00 1.00 N +ATOM 286 CA ALA 20 -12.470 -1.985 -13.339 1.00 1.00 C +ATOM 287 C ALA 20 -12.446 -0.482 -13.629 1.00 1.00 C +ATOM 288 O ALA 20 -13.396 0.230 -13.312 1.00 1.00 O +ATOM 290 H ALA 20 -11.011 -3.169 -14.240 1.00 1.00 H +ATOM 291 HA ALA 20 -13.506 -2.313 -13.255 1.00 1.00 H +ATOM 289 CB ALA 20 -11.734 -2.341 -12.046 1.00 1.00 C +ATOM 292 HB1 ALA 20 -11.523 -3.411 -12.031 1.00 1.00 H +ATOM 293 HB2 ALA 20 -10.798 -1.786 -11.996 1.00 1.00 H +ATOM 294 HB3 ALA 20 -12.356 -2.081 -11.190 1.00 1.00 H +ATOM 295 N ALA 21 -11.348 -0.046 -14.227 1.00 1.00 N +ATOM 296 CA ALA 21 -11.186 1.358 -14.564 1.00 1.00 C +ATOM 297 C ALA 21 -12.476 1.877 -15.201 1.00 1.00 C +ATOM 298 O ALA 21 -12.989 2.926 -14.808 1.00 1.00 O +ATOM 300 H ALA 21 -10.578 -0.632 -14.482 1.00 1.00 H +ATOM 301 HA ALA 21 -11.004 1.903 -13.638 1.00 1.00 H +ATOM 299 CB ALA 21 -9.975 1.528 -15.482 1.00 1.00 C +ATOM 302 HB1 ALA 21 -9.155 0.908 -15.120 1.00 1.00 H +ATOM 303 HB2 ALA 21 -10.241 1.224 -16.495 1.00 1.00 H +ATOM 304 HB3 ALA 21 -9.665 2.574 -15.486 1.00 1.00 H +ATOM 305 N GLU 22 -12.968 1.120 -16.171 1.00 1.00 N +ATOM 306 CA GLU 22 -14.188 1.491 -16.864 1.00 1.00 C +ATOM 307 C GLU 22 -15.397 1.313 -15.944 1.00 1.00 C +ATOM 308 O GLU 22 -16.385 2.036 -16.064 1.00 1.00 O +ATOM 314 H GLU 22 -12.544 0.270 -16.484 1.00 1.00 H +ATOM 315 HA GLU 22 -14.068 2.544 -17.121 1.00 1.00 H +ATOM 309 CB GLU 22 -14.356 0.680 -18.152 1.00 1.00 C +ATOM 310 CG GLU 22 -13.054 -0.036 -18.521 1.00 1.00 C +ATOM 311 CD GLU 22 -13.044 -0.426 -20.000 1.00 1.00 C +ATOM 312 OE1 GLU 22 -13.940 -1.206 -20.389 1.00 1.00 O +ATOM 313 OE2 GLU 22 -12.140 0.067 -20.709 1.00 1.00 O +ATOM 316 HB2 GLU 22 -15.154 -0.051 -18.023 1.00 1.00 H +ATOM 317 HB3 GLU 22 -14.655 1.340 -18.966 1.00 1.00 H +ATOM 318 HG2 GLU 22 -12.205 0.610 -18.305 1.00 1.00 H +ATOM 319 HG3 GLU 22 -12.941 -0.929 -17.906 1.00 1.00 H +ATOM 320 N TYR 23 -15.279 0.347 -15.044 1.00 1.00 N +ATOM 321 CA TYR 23 -16.350 0.066 -14.104 1.00 1.00 C +ATOM 322 C TYR 23 -16.440 1.156 -13.034 1.00 1.00 C +ATOM 323 O TYR 23 -17.437 1.874 -12.959 1.00 1.00 O +ATOM 332 H TYR 23 -14.473 -0.236 -14.954 1.00 1.00 H +ATOM 333 HA TYR 23 -17.286 0.033 -14.660 1.00 1.00 H +ATOM 324 CB TYR 23 -15.983 -1.260 -13.433 1.00 1.00 C +ATOM 325 CG TYR 23 -17.060 -1.796 -12.488 1.00 1.00 C +ATOM 326 CD1 TYR 23 -18.063 -2.610 -12.974 1.00 1.00 C +ATOM 327 CD2 TYR 23 -17.028 -1.468 -11.148 1.00 1.00 C +ATOM 328 CE1 TYR 23 -19.076 -3.116 -12.085 1.00 1.00 C +ATOM 329 CE2 TYR 23 -18.042 -1.974 -10.258 1.00 1.00 C +ATOM 330 CZ TYR 23 -19.016 -2.773 -10.771 1.00 1.00 C +ATOM 331 OH TYR 23 -19.972 -3.251 -9.931 1.00 1.00 O +ATOM 334 HB2 TYR 23 -15.788 -2.005 -14.205 1.00 1.00 H +ATOM 335 HB3 TYR 23 -15.056 -1.129 -12.874 1.00 1.00 H +ATOM 336 HD1 TYR 23 -18.088 -2.870 -14.033 1.00 1.00 H +ATOM 337 HD2 TYR 23 -16.236 -0.827 -10.763 1.00 1.00 H +ATOM 338 HE1 TYR 23 -19.873 -3.758 -12.457 1.00 1.00 H +ATOM 339 HE2 TYR 23 -18.028 -1.722 -9.198 1.00 1.00 H +ATOM 340 HH TYR 23 -19.606 -4.010 -9.392 1.00 1.00 H +ATOM 341 N LEU 24 -15.388 1.246 -12.235 1.00 1.00 N +ATOM 342 CA LEU 24 -15.337 2.237 -11.173 1.00 1.00 C +ATOM 343 C LEU 24 -15.729 3.603 -11.738 1.00 1.00 C +ATOM 344 O LEU 24 -16.203 4.471 -11.005 1.00 1.00 O +ATOM 349 H LEU 24 -14.582 0.658 -12.304 1.00 1.00 H +ATOM 350 HA LEU 24 -16.073 1.950 -10.423 1.00 1.00 H +ATOM 345 CB LEU 24 -13.967 2.221 -10.492 1.00 1.00 C +ATOM 346 CG LEU 24 -12.776 2.612 -11.372 1.00 1.00 C +ATOM 347 CD1 LEU 24 -12.455 4.100 -11.233 1.00 1.00 C +ATOM 348 CD2 LEU 24 -11.562 1.732 -11.070 1.00 1.00 C +ATOM 351 HB2 LEU 24 -14.001 2.900 -9.640 1.00 1.00 H +ATOM 352 HB3 LEU 24 -13.790 1.222 -10.097 1.00 1.00 H +ATOM 353 HG LEU 24 -13.049 2.436 -12.414 1.00 1.00 H +ATOM 354 HD11 LEU 24 -12.548 4.397 -10.188 1.00 1.00 H +ATOM 355 HD12 LEU 24 -11.438 4.286 -11.574 1.00 1.00 H +ATOM 356 HD13 LEU 24 -13.152 4.679 -11.838 1.00 1.00 H +ATOM 357 HD21 LEU 24 -11.755 1.139 -10.176 1.00 1.00 H +ATOM 358 HD22 LEU 24 -11.375 1.067 -11.914 1.00 1.00 H +ATOM 359 HD23 LEU 24 -10.688 2.363 -10.905 1.00 1.00 H +ATOM 360 N LEU 25 -15.515 3.755 -13.038 1.00 1.00 N +ATOM 361 CA LEU 25 -15.840 5.002 -13.710 1.00 1.00 C +ATOM 362 C LEU 25 -17.265 5.419 -13.340 1.00 1.00 C +ATOM 363 O LEU 25 -18.208 4.652 -13.524 1.00 1.00 O +ATOM 368 H LEU 25 -15.130 3.045 -13.628 1.00 1.00 H +ATOM 369 HA LEU 25 -15.151 5.761 -13.340 1.00 1.00 H +ATOM 364 CB LEU 25 -15.608 4.875 -15.216 1.00 1.00 C +ATOM 365 CG LEU 25 -15.666 6.178 -16.016 1.00 1.00 C +ATOM 366 CD1 LEU 25 -14.949 7.307 -15.276 1.00 1.00 C +ATOM 367 CD2 LEU 25 -15.116 5.978 -17.430 1.00 1.00 C +ATOM 370 HB2 LEU 25 -14.632 4.416 -15.377 1.00 1.00 H +ATOM 371 HB3 LEU 25 -16.352 4.189 -15.623 1.00 1.00 H +ATOM 372 HG LEU 25 -16.711 6.471 -16.117 1.00 1.00 H +ATOM 373 HD11 LEU 25 -13.919 7.013 -15.071 1.00 1.00 H +ATOM 374 HD12 LEU 25 -14.955 8.207 -15.891 1.00 1.00 H +ATOM 375 HD13 LEU 25 -15.463 7.509 -14.336 1.00 1.00 H +ATOM 376 HD21 LEU 25 -15.108 4.916 -17.671 1.00 1.00 H +ATOM 377 HD22 LEU 25 -15.747 6.508 -18.143 1.00 1.00 H +ATOM 378 HD23 LEU 25 -14.100 6.370 -17.482 1.00 1.00 H +ATOM 379 N SER 26 -17.376 6.634 -12.824 1.00 1.00 N +ATOM 380 CA SER 26 -18.671 7.162 -12.428 1.00 1.00 C +ATOM 381 C SER 26 -19.771 6.572 -13.312 1.00 1.00 C +ATOM 382 O SER 26 -20.327 5.521 -12.999 1.00 1.00 O +ATOM 385 H SER 26 -16.606 7.252 -12.677 1.00 1.00 H +ATOM 386 HA SER 26 -18.805 6.852 -11.391 1.00 1.00 H +ATOM 383 CB SER 26 -18.689 8.691 -12.506 1.00 1.00 C +ATOM 384 OG SER 26 -18.083 9.290 -11.365 1.00 1.00 O +ATOM 387 HB2 SER 26 -18.167 9.014 -13.406 1.00 1.00 H +ATOM 388 HB3 SER 26 -19.719 9.037 -12.593 1.00 1.00 H +ATOM 389 HG SER 26 -17.341 9.898 -11.651 1.00 1.00 H +ATOM 390 N SER 27 -20.053 7.276 -14.398 1.00 1.00 N +ATOM 391 CA SER 27 -21.077 6.834 -15.331 1.00 1.00 C +ATOM 392 C SER 27 -21.084 7.737 -16.566 1.00 1.00 C +ATOM 393 O SER 27 -20.895 7.265 -17.686 1.00 1.00 O +ATOM 396 H SER 27 -19.597 8.131 -14.646 1.00 1.00 H +ATOM 397 HA SER 27 -20.800 5.816 -15.603 1.00 1.00 H +ATOM 394 CB SER 27 -22.456 6.828 -14.671 1.00 1.00 C +ATOM 395 OG SER 27 -22.713 8.034 -13.957 1.00 1.00 O +ATOM 398 HB2 SER 27 -23.223 6.688 -15.434 1.00 1.00 H +ATOM 399 HB3 SER 27 -22.528 5.980 -13.989 1.00 1.00 H +ATOM 400 HG SER 27 -23.640 8.020 -13.583 1.00 1.00 H +ATOM 401 N GLY 28 -21.304 9.021 -16.320 1.00 1.00 N +ATOM 402 CA GLY 28 -21.338 9.995 -17.399 1.00 1.00 C +ATOM 403 C GLY 28 -21.181 11.416 -16.859 1.00 1.00 C +ATOM 404 O GLY 28 -22.164 12.057 -16.491 1.00 1.00 O +ATOM 405 H GLY 28 -21.458 9.397 -15.407 1.00 1.00 H +ATOM 406 HA2 GLY 28 -20.540 9.781 -18.112 1.00 1.00 H +ATOM 407 HA3 GLY 28 -22.281 9.909 -17.941 1.00 1.00 H +ATOM 408 N ILE 29 -19.935 11.870 -16.829 1.00 1.00 N +ATOM 409 CA ILE 29 -19.636 13.205 -16.341 1.00 1.00 C +ATOM 410 C ILE 29 -19.178 14.080 -17.509 1.00 1.00 C +ATOM 411 O ILE 29 -19.014 13.594 -18.627 1.00 1.00 O +ATOM 416 H ILE 29 -19.141 11.342 -17.131 1.00 1.00 H +ATOM 417 HA ILE 29 -20.560 13.620 -15.938 1.00 1.00 H +ATOM 412 CB ILE 29 -18.630 13.141 -15.189 1.00 1.00 C +ATOM 413 CG1 ILE 29 -18.307 11.690 -14.823 1.00 1.00 C +ATOM 414 CG2 ILE 29 -19.128 13.938 -13.981 1.00 1.00 C +ATOM 415 CD1 ILE 29 -17.604 11.611 -13.467 1.00 1.00 C +ATOM 418 HB ILE 29 -17.702 13.603 -15.520 1.00 1.00 H +ATOM 419 HG12 ILE 29 -19.226 11.105 -14.796 1.00 1.00 H +ATOM 420 HG13 ILE 29 -17.672 11.251 -15.593 1.00 1.00 H +ATOM 421 HG21 ILE 29 -19.884 14.653 -14.305 1.00 1.00 H +ATOM 422 HG22 ILE 29 -19.563 13.257 -13.250 1.00 1.00 H +ATOM 423 HG23 ILE 29 -18.292 14.472 -13.529 1.00 1.00 H +ATOM 424 HD11 ILE 29 -16.916 12.449 -13.364 1.00 1.00 H +ATOM 425 HD12 ILE 29 -18.347 11.650 -12.670 1.00 1.00 H +ATOM 426 HD13 ILE 29 -17.049 10.675 -13.400 1.00 1.00 H +ATOM 427 N ASN 30 -18.985 15.357 -17.210 1.00 1.00 N +ATOM 428 CA ASN 30 -18.549 16.304 -18.221 1.00 1.00 C +ATOM 429 C ASN 30 -17.063 16.082 -18.514 1.00 1.00 C +ATOM 430 O ASN 30 -16.474 16.797 -19.325 1.00 1.00 O +ATOM 435 H ASN 30 -19.121 15.744 -16.298 1.00 1.00 H +ATOM 436 HA ASN 30 -19.179 16.107 -19.088 1.00 1.00 H +ATOM 431 CB ASN 30 -18.725 17.745 -17.738 1.00 1.00 C +ATOM 432 CG ASN 30 -19.382 18.609 -18.817 1.00 1.00 C +ATOM 433 OD1 ASN 30 -19.396 18.275 -19.991 1.00 1.00 O +ATOM 434 ND2 ASN 30 -19.921 19.733 -18.356 1.00 1.00 N +ATOM 437 HB2 ASN 30 -19.337 17.757 -16.836 1.00 1.00 H +ATOM 438 HB3 ASN 30 -17.756 18.165 -17.472 1.00 1.00 H +ATOM 439 HD21 ASN 30 -19.875 19.947 -17.380 1.00 1.00 H +ATOM 440 HD22 ASN 30 -20.374 20.365 -18.986 1.00 1.00 H +ATOM 441 N GLY 31 -16.501 15.090 -17.841 1.00 1.00 N +ATOM 442 CA GLY 31 -15.096 14.765 -18.020 1.00 1.00 C +ATOM 443 C GLY 31 -14.439 14.421 -16.682 1.00 1.00 C +ATOM 444 O GLY 31 -14.360 15.264 -15.789 1.00 1.00 O +ATOM 445 H GLY 31 -16.988 14.515 -17.184 1.00 1.00 H +ATOM 446 HA2 GLY 31 -14.998 13.925 -18.705 1.00 1.00 H +ATOM 447 HA3 GLY 31 -14.579 15.610 -18.476 1.00 1.00 H +ATOM 448 N SER 32 -13.984 13.181 -16.584 1.00 1.00 N +ATOM 449 CA SER 32 -13.334 12.715 -15.371 1.00 1.00 C +ATOM 450 C SER 32 -12.212 11.735 -15.721 1.00 1.00 C +ATOM 451 O SER 32 -12.352 10.926 -16.637 1.00 1.00 O +ATOM 454 H SER 32 -14.052 12.501 -17.315 1.00 1.00 H +ATOM 455 HA SER 32 -12.929 13.609 -14.899 1.00 1.00 H +ATOM 452 CB SER 32 -14.342 12.053 -14.428 1.00 1.00 C +ATOM 453 OG SER 32 -14.840 10.826 -14.954 1.00 1.00 O +ATOM 456 HB2 SER 32 -13.867 11.867 -13.463 1.00 1.00 H +ATOM 457 HB3 SER 32 -15.173 12.735 -14.249 1.00 1.00 H +ATOM 458 HG SER 32 -14.318 10.058 -14.585 1.00 1.00 H +ATOM 459 N PHE 33 -11.124 11.840 -14.971 1.00 1.00 N +ATOM 460 CA PHE 33 -9.979 10.974 -15.190 1.00 1.00 C +ATOM 461 C PHE 33 -9.676 10.138 -13.944 1.00 1.00 C +ATOM 462 O PHE 33 -10.262 10.362 -12.886 1.00 1.00 O +ATOM 470 H PHE 33 -11.019 12.500 -14.228 1.00 1.00 H +ATOM 471 HA PHE 33 -10.229 10.310 -16.017 1.00 1.00 H +ATOM 463 CB PHE 33 -8.782 11.880 -15.485 1.00 1.00 C +ATOM 464 CG PHE 33 -9.040 12.914 -16.584 1.00 1.00 C +ATOM 465 CD1 PHE 33 -10.216 13.595 -16.612 1.00 1.00 C +ATOM 466 CD2 PHE 33 -8.093 13.150 -17.530 1.00 1.00 C +ATOM 467 CE1 PHE 33 -10.455 14.555 -17.631 1.00 1.00 C +ATOM 468 CE2 PHE 33 -8.333 14.109 -18.549 1.00 1.00 C +ATOM 469 CZ PHE 33 -9.508 14.792 -18.578 1.00 1.00 C +ATOM 472 HB2 PHE 33 -8.500 12.401 -14.570 1.00 1.00 H +ATOM 473 HB3 PHE 33 -7.934 11.261 -15.775 1.00 1.00 H +ATOM 474 HD1 PHE 33 -10.975 13.407 -15.852 1.00 1.00 H +ATOM 475 HD2 PHE 33 -7.150 12.603 -17.507 1.00 1.00 H +ATOM 476 HE1 PHE 33 -11.399 15.102 -17.655 1.00 1.00 H +ATOM 477 HE2 PHE 33 -7.573 14.299 -19.308 1.00 1.00 H +ATOM 478 HZ PHE 33 -9.692 15.528 -19.361 1.00 1.00 H +ATOM 479 N LEU 34 -8.762 9.194 -14.111 1.00 1.00 N +ATOM 480 CA LEU 34 -8.376 8.324 -13.014 1.00 1.00 C +ATOM 481 C LEU 34 -6.942 7.838 -13.235 1.00 1.00 C +ATOM 482 O LEU 34 -6.243 8.336 -14.115 1.00 1.00 O +ATOM 487 H LEU 34 -8.291 9.018 -14.975 1.00 1.00 H +ATOM 488 HA LEU 34 -8.401 8.920 -12.101 1.00 1.00 H +ATOM 483 CB LEU 34 -9.391 7.193 -12.842 1.00 1.00 C +ATOM 484 CG LEU 34 -9.779 6.443 -14.118 1.00 1.00 C +ATOM 485 CD1 LEU 34 -9.663 4.930 -13.921 1.00 1.00 C +ATOM 486 CD2 LEU 34 -11.175 6.853 -14.593 1.00 1.00 C +ATOM 489 HB2 LEU 34 -8.987 6.473 -12.130 1.00 1.00 H +ATOM 490 HB3 LEU 34 -10.296 7.607 -12.398 1.00 1.00 H +ATOM 491 HG LEU 34 -9.076 6.718 -14.904 1.00 1.00 H +ATOM 492 HD11 LEU 34 -10.078 4.657 -12.951 1.00 1.00 H +ATOM 493 HD12 LEU 34 -10.217 4.417 -14.707 1.00 1.00 H +ATOM 494 HD13 LEU 34 -8.615 4.636 -13.964 1.00 1.00 H +ATOM 495 HD21 LEU 34 -11.368 7.886 -14.301 1.00 1.00 H +ATOM 496 HD22 LEU 34 -11.229 6.766 -15.677 1.00 1.00 H +ATOM 497 HD23 LEU 34 -11.920 6.202 -14.137 1.00 1.00 H +ATOM 498 N VAL 35 -6.548 6.867 -12.423 1.00 1.00 N +ATOM 499 CA VAL 35 -5.211 6.307 -12.519 1.00 1.00 C +ATOM 500 C VAL 35 -5.287 4.787 -12.364 1.00 1.00 C +ATOM 501 O VAL 35 -5.848 4.287 -11.390 1.00 1.00 O +ATOM 505 H VAL 35 -7.124 6.466 -11.710 1.00 1.00 H +ATOM 506 HA VAL 35 -4.828 6.539 -13.513 1.00 1.00 H +ATOM 502 CB VAL 35 -4.292 6.967 -11.491 1.00 1.00 C +ATOM 503 CG1 VAL 35 -3.439 5.923 -10.767 1.00 1.00 C +ATOM 504 CG2 VAL 35 -3.411 8.033 -12.147 1.00 1.00 C +ATOM 507 HB VAL 35 -4.918 7.461 -10.749 1.00 1.00 H +ATOM 508 HG11 VAL 35 -4.088 5.164 -10.329 1.00 1.00 H +ATOM 509 HG12 VAL 35 -2.759 5.453 -11.478 1.00 1.00 H +ATOM 510 HG13 VAL 35 -2.864 6.408 -9.978 1.00 1.00 H +ATOM 511 HG21 VAL 35 -3.425 7.900 -13.228 1.00 1.00 H +ATOM 512 HG22 VAL 35 -3.794 9.024 -11.898 1.00 1.00 H +ATOM 513 HG23 VAL 35 -2.390 7.937 -11.782 1.00 1.00 H +ATOM 514 N ARG 36 -4.718 4.095 -13.339 1.00 1.00 N +ATOM 515 CA ARG 36 -4.714 2.642 -13.324 1.00 1.00 C +ATOM 516 C ARG 36 -3.282 2.114 -13.430 1.00 1.00 C +ATOM 517 O ARG 36 -2.352 2.877 -13.684 1.00 1.00 O +ATOM 525 H ARG 36 -4.264 4.509 -14.129 1.00 1.00 H +ATOM 526 HA ARG 36 -5.161 2.372 -12.365 1.00 1.00 H +ATOM 518 CB ARG 36 -5.548 2.076 -14.475 1.00 1.00 C +ATOM 519 CG ARG 36 -6.635 1.135 -13.954 1.00 1.00 C +ATOM 520 CD ARG 36 -7.831 1.923 -13.417 1.00 1.00 C +ATOM 521 NE ARG 36 -7.456 2.620 -12.167 1.00 1.00 N +ATOM 522 CZ ARG 36 -7.173 1.997 -11.014 1.00 1.00 C +ATOM 523 NH1 ARG 36 -7.220 0.661 -10.946 1.00 1.00 N +ATOM 524 NH2 ARG 36 -6.843 2.712 -9.930 1.00 1.00 N +ATOM 527 HB2 ARG 36 -6.005 2.893 -15.033 1.00 1.00 H +ATOM 528 HB3 ARG 36 -4.899 1.540 -15.168 1.00 1.00 H +ATOM 529 HG2 ARG 36 -6.962 0.473 -14.755 1.00 1.00 H +ATOM 530 HG3 ARG 36 -6.227 0.503 -13.165 1.00 1.00 H +ATOM 531 HD2 ARG 36 -8.163 2.647 -14.161 1.00 1.00 H +ATOM 532 HD3 ARG 36 -8.667 1.249 -13.230 1.00 1.00 H +ATOM 533 HE ARG 36 -7.412 3.619 -12.181 1.00 1.00 H +ATOM 534 HH11 ARG 36 -7.467 0.127 -11.757 1.00 1.00 H +ATOM 535 HH12 ARG 36 -7.009 0.196 -10.087 1.00 1.00 H +ATOM 536 HH21 ARG 36 -6.807 3.710 -9.980 1.00 1.00 H +ATOM 537 HH22 ARG 36 -6.632 2.247 -9.070 1.00 1.00 H +ATOM 538 N GLU 37 -3.150 0.810 -13.232 1.00 1.00 N +ATOM 539 CA GLU 37 -1.847 0.170 -13.302 1.00 1.00 C +ATOM 540 C GLU 37 -1.757 -0.713 -14.550 1.00 1.00 C +ATOM 541 O GLU 37 -2.677 -1.477 -14.840 1.00 1.00 O +ATOM 547 H GLU 37 -3.911 0.195 -13.026 1.00 1.00 H +ATOM 548 HA GLU 37 -1.128 0.986 -13.375 1.00 1.00 H +ATOM 542 CB GLU 37 -1.563 -0.639 -12.036 1.00 1.00 C +ATOM 543 CG GLU 37 -0.243 -0.208 -11.394 1.00 1.00 C +ATOM 544 CD GLU 37 0.423 -1.380 -10.670 1.00 1.00 C +ATOM 545 OE1 GLU 37 0.111 -1.557 -9.473 1.00 1.00 O +ATOM 546 OE2 GLU 37 1.229 -2.071 -11.330 1.00 1.00 O +ATOM 549 HB2 GLU 37 -2.378 -0.504 -11.324 1.00 1.00 H +ATOM 550 HB3 GLU 37 -1.524 -1.700 -12.279 1.00 1.00 H +ATOM 551 HG2 GLU 37 0.427 0.179 -12.161 1.00 1.00 H +ATOM 552 HG3 GLU 37 -0.425 0.604 -10.690 1.00 1.00 H +ATOM 553 N SER 38 -0.641 -0.580 -15.250 1.00 1.00 N +ATOM 554 CA SER 38 -0.420 -1.357 -16.458 1.00 1.00 C +ATOM 555 C SER 38 -0.530 -2.851 -16.147 1.00 1.00 C +ATOM 556 O SER 38 -0.864 -3.233 -15.026 1.00 1.00 O +ATOM 559 H SER 38 0.102 0.043 -15.007 1.00 1.00 H +ATOM 560 HA SER 38 -1.206 -1.050 -17.148 1.00 1.00 H +ATOM 557 CB SER 38 0.946 -1.043 -17.073 1.00 1.00 C +ATOM 558 OG SER 38 1.699 -2.223 -17.333 1.00 1.00 O +ATOM 561 HB2 SER 38 0.807 -0.489 -18.002 1.00 1.00 H +ATOM 562 HB3 SER 38 1.507 -0.396 -16.397 1.00 1.00 H +ATOM 563 HG SER 38 2.044 -2.209 -18.271 1.00 1.00 H +ATOM 564 N GLU 39 -0.244 -3.656 -17.160 1.00 1.00 N +ATOM 565 CA GLU 39 -0.305 -5.100 -17.009 1.00 1.00 C +ATOM 566 C GLU 39 0.979 -5.622 -16.361 1.00 1.00 C +ATOM 567 O GLU 39 1.390 -5.135 -15.309 1.00 1.00 O +ATOM 573 H GLU 39 0.027 -3.338 -18.068 1.00 1.00 H +ATOM 574 HA GLU 39 -1.154 -5.286 -16.349 1.00 1.00 H +ATOM 568 CB GLU 39 -0.559 -5.782 -18.354 1.00 1.00 C +ATOM 569 CG GLU 39 -1.788 -5.190 -19.047 1.00 1.00 C +ATOM 570 CD GLU 39 -1.986 -5.806 -20.433 1.00 1.00 C +ATOM 571 OE1 GLU 39 -1.937 -7.052 -20.513 1.00 1.00 O +ATOM 572 OE2 GLU 39 -2.183 -5.016 -21.382 1.00 1.00 O +ATOM 575 HB2 GLU 39 0.315 -5.665 -18.995 1.00 1.00 H +ATOM 576 HB3 GLU 39 -0.703 -6.852 -18.202 1.00 1.00 H +ATOM 577 HG2 GLU 39 -2.675 -5.367 -18.436 1.00 1.00 H +ATOM 578 HG3 GLU 39 -1.674 -4.110 -19.137 1.00 1.00 H +ATOM 579 N SER 40 1.575 -6.606 -17.018 1.00 1.00 N +ATOM 580 CA SER 40 2.804 -7.200 -16.520 1.00 1.00 C +ATOM 581 C SER 40 3.955 -6.199 -16.638 1.00 1.00 C +ATOM 582 O SER 40 4.733 -6.252 -17.588 1.00 1.00 O +ATOM 585 H SER 40 1.234 -6.997 -17.872 1.00 1.00 H +ATOM 586 HA SER 40 2.608 -7.436 -15.474 1.00 1.00 H +ATOM 583 CB SER 40 3.141 -8.487 -17.277 1.00 1.00 C +ATOM 584 OG SER 40 2.083 -9.437 -17.212 1.00 1.00 O +ATOM 587 HB2 SER 40 3.351 -8.249 -18.320 1.00 1.00 H +ATOM 588 HB3 SER 40 4.048 -8.925 -16.861 1.00 1.00 H +ATOM 589 HG SER 40 1.944 -9.731 -16.265 1.00 1.00 H +ATOM 590 N SER 41 4.026 -5.309 -15.658 1.00 1.00 N +ATOM 591 CA SER 41 5.068 -4.297 -15.640 1.00 1.00 C +ATOM 592 C SER 41 5.764 -4.287 -14.277 1.00 1.00 C +ATOM 593 O SER 41 5.161 -4.639 -13.266 1.00 1.00 O +ATOM 596 H SER 41 3.388 -5.275 -14.888 1.00 1.00 H +ATOM 597 HA SER 41 5.766 -4.587 -16.425 1.00 1.00 H +ATOM 594 CB SER 41 4.496 -2.912 -15.954 1.00 1.00 C +ATOM 595 OG SER 41 3.138 -2.790 -15.542 1.00 1.00 O +ATOM 598 HB2 SER 41 5.096 -2.152 -15.455 1.00 1.00 H +ATOM 599 HB3 SER 41 4.569 -2.724 -17.025 1.00 1.00 H +ATOM 600 HG SER 41 2.974 -3.351 -14.730 1.00 1.00 H +ATOM 601 N PRO 42 7.059 -3.869 -14.298 1.00 1.00 N +ATOM 602 CA PRO 42 7.844 -3.810 -13.076 1.00 1.00 C +ATOM 603 C PRO 42 7.434 -2.610 -12.218 1.00 1.00 C +ATOM 604 O PRO 42 8.030 -2.357 -11.173 1.00 1.00 O +ATOM 608 HA PRO 42 7.674 -4.618 -12.514 1.00 1.00 H +ATOM 605 CB PRO 42 9.289 -3.739 -13.541 1.00 1.00 C +ATOM 606 CG PRO 42 9.238 -3.295 -14.994 1.00 1.00 C +ATOM 607 CD PRO 42 7.805 -3.444 -15.478 1.00 1.00 C +ATOM 609 HB2 PRO 42 9.861 -3.034 -12.937 1.00 1.00 H +ATOM 610 HB3 PRO 42 9.777 -4.709 -13.446 1.00 1.00 H +ATOM 611 HG2 PRO 42 9.569 -2.260 -15.088 1.00 1.00 H +ATOM 612 HG3 PRO 42 9.912 -3.901 -15.602 1.00 1.00 H +ATOM 613 HD2 PRO 42 7.421 -2.504 -15.872 1.00 1.00 H +ATOM 614 HD3 PRO 42 7.732 -4.180 -16.278 1.00 1.00 H +ATOM 615 N GLY 43 6.417 -1.904 -12.693 1.00 1.00 N +ATOM 616 CA GLY 43 5.919 -0.738 -11.983 1.00 1.00 C +ATOM 617 C GLY 43 5.465 0.347 -12.961 1.00 1.00 C +ATOM 618 O GLY 43 5.958 1.472 -12.918 1.00 1.00 O +ATOM 619 H GLY 43 5.938 -2.117 -13.544 1.00 1.00 H +ATOM 620 HA2 GLY 43 5.087 -1.028 -11.340 1.00 1.00 H +ATOM 621 HA3 GLY 43 6.701 -0.344 -11.333 1.00 1.00 H +ATOM 622 N GLN 44 4.529 -0.030 -13.819 1.00 1.00 N +ATOM 623 CA GLN 44 4.001 0.896 -14.806 1.00 1.00 C +ATOM 624 C GLN 44 2.632 1.417 -14.367 1.00 1.00 C +ATOM 625 O GLN 44 1.883 0.712 -13.692 1.00 1.00 O +ATOM 631 H GLN 44 4.133 -0.948 -13.847 1.00 1.00 H +ATOM 632 HA GLN 44 4.715 1.719 -14.842 1.00 1.00 H +ATOM 626 CB GLN 44 3.923 0.241 -16.187 1.00 1.00 C +ATOM 627 CG GLN 44 5.200 0.494 -16.988 1.00 1.00 C +ATOM 628 CD GLN 44 6.429 -0.031 -16.242 1.00 1.00 C +ATOM 629 OE1 GLN 44 6.347 -0.526 -15.130 1.00 1.00 O +ATOM 630 NE2 GLN 44 7.569 0.105 -16.914 1.00 1.00 N +ATOM 633 HB2 GLN 44 3.766 -0.832 -16.075 1.00 1.00 H +ATOM 634 HB3 GLN 44 3.063 0.634 -16.731 1.00 1.00 H +ATOM 635 HG2 GLN 44 5.126 0.009 -17.961 1.00 1.00 H +ATOM 636 HG3 GLN 44 5.312 1.564 -17.172 1.00 1.00 H +ATOM 637 HE21 GLN 44 7.567 0.521 -17.822 1.00 1.00 H +ATOM 638 HE22 GLN 44 8.427 -0.208 -16.509 1.00 1.00 H +ATOM 639 N ARG 45 2.345 2.647 -14.768 1.00 1.00 N +ATOM 640 CA ARG 45 1.078 3.269 -14.423 1.00 1.00 C +ATOM 641 C ARG 45 0.413 3.846 -15.676 1.00 1.00 C +ATOM 642 O ARG 45 1.095 4.314 -16.586 1.00 1.00 O +ATOM 650 H ARG 45 2.959 3.214 -15.316 1.00 1.00 H +ATOM 651 HA ARG 45 0.479 2.466 -13.996 1.00 1.00 H +ATOM 643 CB ARG 45 1.275 4.389 -13.399 1.00 1.00 C +ATOM 644 CG ARG 45 0.022 5.260 -13.291 1.00 1.00 C +ATOM 645 CD ARG 45 0.081 6.428 -14.277 1.00 1.00 C +ATOM 646 NE ARG 45 -0.497 7.643 -13.658 1.00 1.00 N +ATOM 647 CZ ARG 45 0.213 8.732 -13.335 1.00 1.00 C +ATOM 648 NH1 ARG 45 1.531 8.767 -13.571 1.00 1.00 N +ATOM 649 NH2 ARG 45 -0.396 9.788 -12.778 1.00 1.00 N +ATOM 652 HB2 ARG 45 1.507 3.958 -12.425 1.00 1.00 H +ATOM 653 HB3 ARG 45 2.127 5.004 -13.686 1.00 1.00 H +ATOM 654 HG2 ARG 45 -0.863 4.656 -13.489 1.00 1.00 H +ATOM 655 HG3 ARG 45 -0.075 5.642 -12.274 1.00 1.00 H +ATOM 656 HD2 ARG 45 1.113 6.616 -14.570 1.00 1.00 H +ATOM 657 HD3 ARG 45 -0.467 6.178 -15.185 1.00 1.00 H +ATOM 658 HE ARG 45 -1.479 7.650 -13.467 1.00 1.00 H +ATOM 659 HH11 ARG 45 1.986 7.979 -13.988 1.00 1.00 H +ATOM 660 HH12 ARG 45 2.062 9.580 -13.330 1.00 1.00 H +ATOM 661 HH21 ARG 45 -1.380 9.762 -12.601 1.00 1.00 H +ATOM 662 HH22 ARG 45 0.134 10.601 -12.537 1.00 1.00 H +ATOM 663 N SER 46 -0.911 3.793 -15.681 1.00 1.00 N +ATOM 664 CA SER 46 -1.675 4.304 -16.806 1.00 1.00 C +ATOM 665 C SER 46 -2.683 5.350 -16.322 1.00 1.00 C +ATOM 666 O SER 46 -2.837 5.559 -15.119 1.00 1.00 O +ATOM 669 H SER 46 -1.459 3.411 -14.936 1.00 1.00 H +ATOM 670 HA SER 46 -0.942 4.758 -17.470 1.00 1.00 H +ATOM 667 CB SER 46 -2.397 3.173 -17.540 1.00 1.00 C +ATOM 668 OG SER 46 -1.879 2.971 -18.852 1.00 1.00 O +ATOM 671 HB2 SER 46 -2.302 2.250 -16.968 1.00 1.00 H +ATOM 672 HB3 SER 46 -3.462 3.400 -17.602 1.00 1.00 H +ATOM 673 HG SER 46 -2.142 2.069 -19.190 1.00 1.00 H +ATOM 674 N ILE 47 -3.342 5.978 -17.283 1.00 1.00 N +ATOM 675 CA ILE 47 -4.331 6.998 -16.971 1.00 1.00 C +ATOM 676 C ILE 47 -5.633 6.682 -17.709 1.00 1.00 C +ATOM 677 O ILE 47 -5.620 6.402 -18.906 1.00 1.00 O +ATOM 682 H ILE 47 -3.210 5.802 -18.259 1.00 1.00 H +ATOM 683 HA ILE 47 -4.521 6.950 -15.899 1.00 1.00 H +ATOM 678 CB ILE 47 -3.776 8.391 -17.271 1.00 1.00 C +ATOM 679 CG1 ILE 47 -3.847 9.289 -16.034 1.00 1.00 C +ATOM 680 CG2 ILE 47 -4.486 9.016 -18.473 1.00 1.00 C +ATOM 681 CD1 ILE 47 -2.446 9.655 -15.541 1.00 1.00 C +ATOM 684 HB ILE 47 -2.724 8.291 -17.535 1.00 1.00 H +ATOM 685 HG12 ILE 47 -4.403 10.195 -16.269 1.00 1.00 H +ATOM 686 HG13 ILE 47 -4.392 8.776 -15.241 1.00 1.00 H +ATOM 687 HG21 ILE 47 -5.531 8.704 -18.483 1.00 1.00 H +ATOM 688 HG22 ILE 47 -4.433 10.103 -18.403 1.00 1.00 H +ATOM 689 HG23 ILE 47 -4.002 8.688 -19.393 1.00 1.00 H +ATOM 690 HD11 ILE 47 -1.897 10.153 -16.342 1.00 1.00 H +ATOM 691 HD12 ILE 47 -2.526 10.326 -14.685 1.00 1.00 H +ATOM 692 HD13 ILE 47 -1.915 8.750 -15.247 1.00 1.00 H +ATOM 693 N SER 48 -6.726 6.737 -16.962 1.00 1.00 N +ATOM 694 CA SER 48 -8.035 6.460 -17.530 1.00 1.00 C +ATOM 695 C SER 48 -8.885 7.733 -17.531 1.00 1.00 C +ATOM 696 O SER 48 -9.382 8.152 -16.487 1.00 1.00 O +ATOM 699 H SER 48 -6.728 6.965 -15.989 1.00 1.00 H +ATOM 700 HA SER 48 -7.842 6.127 -18.550 1.00 1.00 H +ATOM 697 CB SER 48 -8.747 5.347 -16.759 1.00 1.00 C +ATOM 698 OG SER 48 -8.876 4.158 -17.533 1.00 1.00 O +ATOM 701 HB2 SER 48 -8.192 5.128 -15.845 1.00 1.00 H +ATOM 702 HB3 SER 48 -9.735 5.692 -16.455 1.00 1.00 H +ATOM 703 HG SER 48 -9.775 4.130 -17.969 1.00 1.00 H +ATOM 704 N LEU 49 -9.025 8.312 -18.716 1.00 1.00 N +ATOM 705 CA LEU 49 -9.804 9.528 -18.866 1.00 1.00 C +ATOM 706 C LEU 49 -11.189 9.175 -19.414 1.00 1.00 C +ATOM 707 O LEU 49 -11.311 8.353 -20.320 1.00 1.00 O +ATOM 712 H LEU 49 -8.616 7.964 -19.559 1.00 1.00 H +ATOM 713 HA LEU 49 -9.927 9.963 -17.875 1.00 1.00 H +ATOM 708 CB LEU 49 -9.048 10.549 -19.718 1.00 1.00 C +ATOM 709 CG LEU 49 -7.580 10.227 -20.003 1.00 1.00 C +ATOM 710 CD1 LEU 49 -7.370 9.884 -21.480 1.00 1.00 C +ATOM 711 CD2 LEU 49 -6.669 11.368 -19.545 1.00 1.00 C +ATOM 714 HB2 LEU 49 -9.568 10.654 -20.671 1.00 1.00 H +ATOM 715 HB3 LEU 49 -9.098 11.517 -19.219 1.00 1.00 H +ATOM 716 HG LEU 49 -7.305 9.344 -19.426 1.00 1.00 H +ATOM 717 HD11 LEU 49 -8.150 10.355 -22.076 1.00 1.00 H +ATOM 718 HD12 LEU 49 -6.394 10.250 -21.801 1.00 1.00 H +ATOM 719 HD13 LEU 49 -7.414 8.803 -21.611 1.00 1.00 H +ATOM 720 HD21 LEU 49 -7.227 12.304 -19.553 1.00 1.00 H +ATOM 721 HD22 LEU 49 -6.314 11.167 -18.535 1.00 1.00 H +ATOM 722 HD23 LEU 49 -5.817 11.447 -20.220 1.00 1.00 H +ATOM 723 N ARG 50 -12.198 9.817 -18.841 1.00 1.00 N +ATOM 724 CA ARG 50 -13.568 9.581 -19.261 1.00 1.00 C +ATOM 725 C ARG 50 -14.099 10.785 -20.044 1.00 1.00 C +ATOM 726 O ARG 50 -13.912 11.928 -19.631 1.00 1.00 O +ATOM 734 H ARG 50 -12.089 10.484 -18.105 1.00 1.00 H +ATOM 735 HA ARG 50 -13.519 8.693 -19.892 1.00 1.00 H +ATOM 727 CB ARG 50 -14.477 9.325 -18.057 1.00 1.00 C +ATOM 728 CG ARG 50 -15.904 9.806 -18.333 1.00 1.00 C +ATOM 729 CD ARG 50 -16.928 8.749 -17.916 1.00 1.00 C +ATOM 730 NE ARG 50 -17.264 7.886 -19.069 1.00 1.00 N +ATOM 731 CZ ARG 50 -18.034 6.792 -18.991 1.00 1.00 C +ATOM 732 NH1 ARG 50 -18.554 6.422 -17.813 1.00 1.00 N +ATOM 733 NH2 ARG 50 -18.285 6.068 -20.091 1.00 1.00 N +ATOM 736 HB2 ARG 50 -14.487 8.260 -17.824 1.00 1.00 H +ATOM 737 HB3 ARG 50 -14.080 9.839 -17.181 1.00 1.00 H +ATOM 738 HG2 ARG 50 -16.090 10.732 -17.792 1.00 1.00 H +ATOM 739 HG3 ARG 50 -16.016 10.028 -19.394 1.00 1.00 H +ATOM 740 HD2 ARG 50 -16.528 8.145 -17.102 1.00 1.00 H +ATOM 741 HD3 ARG 50 -17.830 9.233 -17.540 1.00 1.00 H +ATOM 742 HE ARG 50 -16.892 8.134 -19.965 1.00 1.00 H +ATOM 743 HH11 ARG 50 -18.366 6.962 -16.992 1.00 1.00 H +ATOM 744 HH12 ARG 50 -19.128 5.606 -17.754 1.00 1.00 H +ATOM 745 HH21 ARG 50 -17.898 6.345 -20.970 1.00 1.00 H +ATOM 746 HH22 ARG 50 -18.860 5.253 -20.032 1.00 1.00 H +ATOM 747 N TYR 51 -14.747 10.485 -21.158 1.00 1.00 N +ATOM 748 CA TYR 51 -15.305 11.528 -22.004 1.00 1.00 C +ATOM 749 C TYR 51 -16.834 11.470 -22.008 1.00 1.00 C +ATOM 750 O TYR 51 -17.440 10.913 -21.094 1.00 1.00 O +ATOM 759 H TYR 51 -14.894 9.552 -21.488 1.00 1.00 H +ATOM 760 HA TYR 51 -14.986 12.490 -21.604 1.00 1.00 H +ATOM 751 CB TYR 51 -14.791 11.245 -23.417 1.00 1.00 C +ATOM 752 CG TYR 51 -13.689 12.199 -23.881 1.00 1.00 C +ATOM 753 CD1 TYR 51 -12.438 12.139 -23.302 1.00 1.00 C +ATOM 754 CD2 TYR 51 -13.947 13.118 -24.879 1.00 1.00 C +ATOM 755 CE1 TYR 51 -11.400 13.038 -23.739 1.00 1.00 C +ATOM 756 CE2 TYR 51 -12.908 14.015 -25.314 1.00 1.00 C +ATOM 757 CZ TYR 51 -11.686 13.931 -24.724 1.00 1.00 C +ATOM 758 OH TYR 51 -10.706 14.779 -25.136 1.00 1.00 O +ATOM 761 HB2 TYR 51 -14.416 10.222 -23.459 1.00 1.00 H +ATOM 762 HB3 TYR 51 -15.628 11.306 -24.115 1.00 1.00 H +ATOM 763 HD1 TYR 51 -12.235 11.413 -22.515 1.00 1.00 H +ATOM 764 HD2 TYR 51 -14.935 13.164 -25.335 1.00 1.00 H +ATOM 765 HE1 TYR 51 -10.407 13.002 -23.291 1.00 1.00 H +ATOM 766 HE2 TYR 51 -13.098 14.746 -26.101 1.00 1.00 H +ATOM 767 HH TYR 51 -10.802 15.662 -24.677 1.00 1.00 H +ATOM 768 N GLU 52 -17.413 12.054 -23.047 1.00 1.00 N +ATOM 769 CA GLU 52 -18.860 12.077 -23.182 1.00 1.00 C +ATOM 770 C GLU 52 -19.389 10.666 -23.453 1.00 1.00 C +ATOM 771 O GLU 52 -20.154 10.457 -24.393 1.00 1.00 O +ATOM 777 H GLU 52 -16.912 12.505 -23.786 1.00 1.00 H +ATOM 778 HA GLU 52 -19.235 12.435 -22.224 1.00 1.00 H +ATOM 772 CB GLU 52 -19.293 13.046 -24.283 1.00 1.00 C +ATOM 773 CG GLU 52 -19.157 14.497 -23.820 1.00 1.00 C +ATOM 774 CD GLU 52 -18.606 15.382 -24.939 1.00 1.00 C +ATOM 775 OE1 GLU 52 -19.109 15.239 -26.075 1.00 1.00 O +ATOM 776 OE2 GLU 52 -17.696 16.182 -24.635 1.00 1.00 O +ATOM 779 HB2 GLU 52 -18.683 12.887 -25.172 1.00 1.00 H +ATOM 780 HB3 GLU 52 -20.326 12.844 -24.565 1.00 1.00 H +ATOM 781 HG2 GLU 52 -20.131 14.873 -23.501 1.00 1.00 H +ATOM 782 HG3 GLU 52 -18.498 14.547 -22.954 1.00 1.00 H +ATOM 783 N GLY 53 -18.962 9.737 -22.612 1.00 1.00 N +ATOM 784 CA GLY 53 -19.384 8.353 -22.749 1.00 1.00 C +ATOM 785 C GLY 53 -18.275 7.501 -23.369 1.00 1.00 C +ATOM 786 O GLY 53 -18.549 6.603 -24.164 1.00 1.00 O +ATOM 787 H GLY 53 -18.341 9.916 -21.849 1.00 1.00 H +ATOM 788 HA2 GLY 53 -19.651 7.952 -21.771 1.00 1.00 H +ATOM 789 HA3 GLY 53 -20.278 8.301 -23.371 1.00 1.00 H +ATOM 790 N ARG 54 -17.047 7.812 -22.982 1.00 1.00 N +ATOM 791 CA ARG 54 -15.896 7.086 -23.491 1.00 1.00 C +ATOM 792 C ARG 54 -14.763 7.098 -22.461 1.00 1.00 C +ATOM 793 O ARG 54 -14.559 8.094 -21.769 1.00 1.00 O +ATOM 801 H ARG 54 -16.833 8.544 -22.336 1.00 1.00 H +ATOM 802 HA ARG 54 -16.258 6.074 -23.662 1.00 1.00 H +ATOM 794 CB ARG 54 -15.392 7.699 -24.799 1.00 1.00 C +ATOM 795 CG ARG 54 -15.369 6.656 -25.920 1.00 1.00 C +ATOM 796 CD ARG 54 -16.758 6.490 -26.540 1.00 1.00 C +ATOM 797 NE ARG 54 -16.641 5.877 -27.883 1.00 1.00 N +ATOM 798 CZ ARG 54 -16.465 6.573 -29.014 1.00 1.00 C +ATOM 799 NH1 ARG 54 -16.382 7.910 -28.971 1.00 1.00 N +ATOM 800 NH2 ARG 54 -16.370 5.933 -30.187 1.00 1.00 N +ATOM 803 HB2 ARG 54 -16.033 8.533 -25.085 1.00 1.00 H +ATOM 804 HB3 ARG 54 -14.390 8.103 -24.654 1.00 1.00 H +ATOM 805 HG2 ARG 54 -14.657 6.959 -26.688 1.00 1.00 H +ATOM 806 HG3 ARG 54 -15.027 5.700 -25.525 1.00 1.00 H +ATOM 807 HD2 ARG 54 -17.379 5.865 -25.899 1.00 1.00 H +ATOM 808 HD3 ARG 54 -17.250 7.460 -26.616 1.00 1.00 H +ATOM 809 HE ARG 54 -16.698 4.881 -27.950 1.00 1.00 H +ATOM 810 HH11 ARG 54 -16.453 8.388 -28.097 1.00 1.00 H +ATOM 811 HH12 ARG 54 -16.250 8.430 -29.816 1.00 1.00 H +ATOM 812 HH21 ARG 54 -16.431 4.935 -30.219 1.00 1.00 H +ATOM 813 HH22 ARG 54 -16.238 6.452 -31.031 1.00 1.00 H +ATOM 814 N VAL 55 -14.058 5.979 -22.392 1.00 1.00 N +ATOM 815 CA VAL 55 -12.952 5.847 -21.458 1.00 1.00 C +ATOM 816 C VAL 55 -11.659 5.603 -22.238 1.00 1.00 C +ATOM 817 O VAL 55 -11.567 4.652 -23.015 1.00 1.00 O +ATOM 821 H VAL 55 -14.231 5.173 -22.958 1.00 1.00 H +ATOM 822 HA VAL 55 -12.864 6.791 -20.920 1.00 1.00 H +ATOM 818 CB VAL 55 -13.255 4.746 -20.440 1.00 1.00 C +ATOM 819 CG1 VAL 55 -13.252 3.368 -21.106 1.00 1.00 C +ATOM 820 CG2 VAL 55 -12.267 4.793 -19.272 1.00 1.00 C +ATOM 823 HB VAL 55 -14.254 4.924 -20.042 1.00 1.00 H +ATOM 824 HG11 VAL 55 -12.280 3.190 -21.569 1.00 1.00 H +ATOM 825 HG12 VAL 55 -13.444 2.601 -20.355 1.00 1.00 H +ATOM 826 HG13 VAL 55 -14.030 3.333 -21.869 1.00 1.00 H +ATOM 827 HG21 VAL 55 -12.014 5.830 -19.052 1.00 1.00 H +ATOM 828 HG22 VAL 55 -12.721 4.334 -18.394 1.00 1.00 H +ATOM 829 HG23 VAL 55 -11.362 4.248 -19.540 1.00 1.00 H +ATOM 830 N TYR 56 -10.691 6.475 -22.004 1.00 1.00 N +ATOM 831 CA TYR 56 -9.406 6.366 -22.675 1.00 1.00 C +ATOM 832 C TYR 56 -8.316 5.918 -21.700 1.00 1.00 C +ATOM 833 O TYR 56 -8.111 6.542 -20.661 1.00 1.00 O +ATOM 842 H TYR 56 -10.772 7.246 -21.372 1.00 1.00 H +ATOM 843 HA TYR 56 -9.503 5.625 -23.467 1.00 1.00 H +ATOM 834 CB TYR 56 -9.073 7.771 -23.182 1.00 1.00 C +ATOM 835 CG TYR 56 -9.910 8.213 -24.385 1.00 1.00 C +ATOM 836 CD1 TYR 56 -11.164 8.757 -24.190 1.00 1.00 C +ATOM 837 CD2 TYR 56 -9.412 8.067 -25.663 1.00 1.00 C +ATOM 838 CE1 TYR 56 -11.952 9.172 -25.321 1.00 1.00 C +ATOM 839 CE2 TYR 56 -10.200 8.484 -26.794 1.00 1.00 C +ATOM 840 CZ TYR 56 -11.430 9.016 -26.568 1.00 1.00 C +ATOM 841 OH TYR 56 -12.175 9.408 -27.636 1.00 1.00 O +ATOM 844 HB2 TYR 56 -9.218 8.483 -22.371 1.00 1.00 H +ATOM 845 HB3 TYR 56 -8.019 7.808 -23.453 1.00 1.00 H +ATOM 846 HD1 TYR 56 -11.558 8.872 -23.180 1.00 1.00 H +ATOM 847 HD2 TYR 56 -8.421 7.639 -25.816 1.00 1.00 H +ATOM 848 HE1 TYR 56 -12.944 9.603 -25.182 1.00 1.00 H +ATOM 849 HE2 TYR 56 -9.818 8.375 -27.810 1.00 1.00 H +ATOM 850 HH TYR 56 -12.163 8.699 -28.341 1.00 1.00 H +ATOM 851 N HIS 57 -7.644 4.837 -22.072 1.00 1.00 N +ATOM 852 CA HIS 57 -6.578 4.297 -21.243 1.00 1.00 C +ATOM 853 C HIS 57 -5.237 4.461 -21.960 1.00 1.00 C +ATOM 854 O HIS 57 -4.935 3.723 -22.897 1.00 1.00 O +ATOM 861 H HIS 57 -7.816 4.335 -22.919 1.00 1.00 H +ATOM 862 HA HIS 57 -6.566 4.888 -20.327 1.00 1.00 H +ATOM 855 CB HIS 57 -6.871 2.846 -20.859 1.00 1.00 C +ATOM 856 CG HIS 57 -8.318 2.582 -20.514 1.00 1.00 C +ATOM 857 ND1 HIS 57 -8.729 2.197 -19.251 1.00 1.00 N +ATOM 858 CD2 HIS 57 -9.444 2.652 -21.282 1.00 1.00 C +ATOM 859 CE1 HIS 57 -10.046 2.044 -19.268 1.00 1.00 C +ATOM 860 NE2 HIS 57 -10.486 2.326 -20.527 1.00 1.00 N +ATOM 863 HB2 HIS 57 -6.580 2.196 -21.685 1.00 1.00 H +ATOM 864 HB3 HIS 57 -6.250 2.573 -20.006 1.00 1.00 H +ATOM 865 HD1 HIS 57 -8.136 2.057 -18.460 1.00 1.00 H +ATOM 866 HD2 HIS 57 -9.481 2.930 -22.336 1.00 1.00 H +ATOM 867 HE1 HIS 57 -10.667 1.745 -18.424 1.00 1.00 H +ATOM 868 N TYR 58 -4.467 5.434 -21.493 1.00 1.00 N +ATOM 869 CA TYR 58 -3.165 5.705 -22.078 1.00 1.00 C +ATOM 870 C TYR 58 -2.060 5.605 -21.025 1.00 1.00 C +ATOM 871 O TYR 58 -2.019 6.397 -20.086 1.00 1.00 O +ATOM 880 H TYR 58 -4.720 6.029 -20.731 1.00 1.00 H +ATOM 881 HA TYR 58 -2.985 4.962 -22.855 1.00 1.00 H +ATOM 872 CB TYR 58 -3.227 7.141 -22.600 1.00 1.00 C +ATOM 873 CG TYR 58 -3.018 7.264 -24.111 1.00 1.00 C +ATOM 874 CD1 TYR 58 -4.026 6.894 -24.979 1.00 1.00 C +ATOM 875 CD2 TYR 58 -1.823 7.745 -24.605 1.00 1.00 C +ATOM 876 CE1 TYR 58 -3.828 7.010 -26.401 1.00 1.00 C +ATOM 877 CE2 TYR 58 -1.627 7.862 -26.026 1.00 1.00 C +ATOM 878 CZ TYR 58 -2.639 7.488 -26.854 1.00 1.00 C +ATOM 879 OH TYR 58 -2.453 7.597 -28.197 1.00 1.00 O +ATOM 882 HB2 TYR 58 -4.196 7.569 -22.341 1.00 1.00 H +ATOM 883 HB3 TYR 58 -2.470 7.735 -22.088 1.00 1.00 H +ATOM 884 HD1 TYR 58 -4.970 6.514 -24.587 1.00 1.00 H +ATOM 885 HD2 TYR 58 -1.029 8.037 -23.919 1.00 1.00 H +ATOM 886 HE1 TYR 58 -4.615 6.722 -27.097 1.00 1.00 H +ATOM 887 HE2 TYR 58 -0.687 8.240 -26.431 1.00 1.00 H +ATOM 888 HH TYR 58 -2.622 6.717 -28.638 1.00 1.00 H +ATOM 889 N ARG 59 -1.190 4.623 -21.217 1.00 1.00 N +ATOM 890 CA ARG 59 -0.089 4.408 -20.296 1.00 1.00 C +ATOM 891 C ARG 59 1.007 5.451 -20.528 1.00 1.00 C +ATOM 892 O ARG 59 1.291 5.815 -21.667 1.00 1.00 O +ATOM 900 H ARG 59 -1.231 3.981 -21.983 1.00 1.00 H +ATOM 901 HA ARG 59 -0.529 4.514 -19.304 1.00 1.00 H +ATOM 893 CB ARG 59 0.506 3.007 -20.464 1.00 1.00 C +ATOM 894 CG ARG 59 0.688 2.664 -21.943 1.00 1.00 C +ATOM 895 CD ARG 59 2.073 2.067 -22.201 1.00 1.00 C +ATOM 896 NE ARG 59 1.962 0.905 -23.111 1.00 1.00 N +ATOM 897 CZ ARG 59 1.322 -0.232 -22.803 1.00 1.00 C +ATOM 898 NH1 ARG 59 0.733 -0.367 -21.609 1.00 1.00 N +ATOM 899 NH2 ARG 59 1.272 -1.234 -23.692 1.00 1.00 N +ATOM 902 HB2 ARG 59 1.468 2.954 -19.952 1.00 1.00 H +ATOM 903 HB3 ARG 59 -0.147 2.273 -19.994 1.00 1.00 H +ATOM 904 HG2 ARG 59 -0.081 1.956 -22.253 1.00 1.00 H +ATOM 905 HG3 ARG 59 0.558 3.561 -22.547 1.00 1.00 H +ATOM 906 HD2 ARG 59 2.728 2.819 -22.638 1.00 1.00 H +ATOM 907 HD3 ARG 59 2.526 1.758 -21.258 1.00 1.00 H +ATOM 908 HE ARG 59 2.392 0.972 -24.012 1.00 1.00 H +ATOM 909 HH11 ARG 59 0.769 0.380 -20.945 1.00 1.00 H +ATOM 910 HH12 ARG 59 0.255 -1.216 -21.379 1.00 1.00 H +ATOM 911 HH21 ARG 59 1.712 -1.133 -24.584 1.00 1.00 H +ATOM 912 HH22 ARG 59 0.795 -2.082 -23.464 1.00 1.00 H +ATOM 913 N ILE 60 1.594 5.900 -19.428 1.00 1.00 N +ATOM 914 CA ILE 60 2.652 6.894 -19.497 1.00 1.00 C +ATOM 915 C ILE 60 3.991 6.191 -19.728 1.00 1.00 C +ATOM 916 O ILE 60 4.116 4.991 -19.487 1.00 1.00 O +ATOM 921 H ILE 60 1.357 5.598 -18.504 1.00 1.00 H +ATOM 922 HA ILE 60 2.445 7.533 -20.355 1.00 1.00 H +ATOM 917 CB ILE 60 2.632 7.785 -18.254 1.00 1.00 C +ATOM 918 CG1 ILE 60 1.252 8.414 -18.051 1.00 1.00 C +ATOM 919 CG2 ILE 60 3.739 8.839 -18.318 1.00 1.00 C +ATOM 920 CD1 ILE 60 0.708 8.105 -16.655 1.00 1.00 C +ATOM 923 HB ILE 60 2.833 7.161 -17.382 1.00 1.00 H +ATOM 924 HG12 ILE 60 1.316 9.492 -18.191 1.00 1.00 H +ATOM 925 HG13 ILE 60 0.563 8.035 -18.805 1.00 1.00 H +ATOM 926 HG21 ILE 60 3.779 9.264 -19.321 1.00 1.00 H +ATOM 927 HG22 ILE 60 3.529 9.630 -17.597 1.00 1.00 H +ATOM 928 HG23 ILE 60 4.697 8.377 -18.080 1.00 1.00 H +ATOM 929 HD11 ILE 60 0.778 7.034 -16.466 1.00 1.00 H +ATOM 930 HD12 ILE 60 1.294 8.644 -15.910 1.00 1.00 H +ATOM 931 HD13 ILE 60 -0.335 8.418 -16.594 1.00 1.00 H +ATOM 932 N ASN 61 4.958 6.968 -20.194 1.00 1.00 N +ATOM 933 CA ASN 61 6.283 6.434 -20.461 1.00 1.00 C +ATOM 934 C ASN 61 7.180 6.678 -19.245 1.00 1.00 C +ATOM 935 O ASN 61 6.825 7.444 -18.351 1.00 1.00 O +ATOM 940 H ASN 61 4.848 7.942 -20.388 1.00 1.00 H +ATOM 941 HA ASN 61 6.131 5.374 -20.660 1.00 1.00 H +ATOM 936 CB ASN 61 6.923 7.126 -21.666 1.00 1.00 C +ATOM 937 CG ASN 61 5.866 7.501 -22.707 1.00 1.00 C +ATOM 938 OD1 ASN 61 5.131 6.669 -23.211 1.00 1.00 O +ATOM 939 ND2 ASN 61 5.833 8.798 -23.000 1.00 1.00 N +ATOM 942 HB2 ASN 61 7.449 8.022 -21.339 1.00 1.00 H +ATOM 943 HB3 ASN 61 7.665 6.467 -22.116 1.00 1.00 H +ATOM 944 HD21 ASN 61 6.464 9.429 -22.551 1.00 1.00 H +ATOM 945 HD22 ASN 61 5.174 9.143 -23.671 1.00 1.00 H +ATOM 946 N THR 62 8.326 6.011 -19.253 1.00 1.00 N +ATOM 947 CA THR 62 9.275 6.146 -18.161 1.00 1.00 C +ATOM 948 C THR 62 10.540 6.862 -18.641 1.00 1.00 C +ATOM 949 O THR 62 10.980 6.662 -19.772 1.00 1.00 O +ATOM 953 H THR 62 8.606 5.390 -19.984 1.00 1.00 H +ATOM 954 HA THR 62 8.827 6.771 -17.390 1.00 1.00 H +ATOM 950 CB THR 62 9.546 4.750 -17.595 1.00 1.00 C +ATOM 951 OG1 THR 62 8.250 4.172 -17.464 1.00 1.00 O +ATOM 952 CG2 THR 62 10.083 4.793 -16.163 1.00 1.00 C +ATOM 955 HB THR 62 10.217 4.189 -18.247 1.00 1.00 H +ATOM 956 HG1 THR 62 7.712 4.347 -18.288 1.00 1.00 H +ATOM 957 HG21 THR 62 10.789 5.617 -16.064 1.00 1.00 H +ATOM 958 HG22 THR 62 9.254 4.938 -15.469 1.00 1.00 H +ATOM 959 HG23 THR 62 10.587 3.854 -15.936 1.00 1.00 H +ATOM 960 N ALA 63 11.088 7.682 -17.757 1.00 1.00 N +ATOM 961 CA ALA 63 12.292 8.429 -18.075 1.00 1.00 C +ATOM 962 C ALA 63 13.470 7.461 -18.202 1.00 1.00 C +ATOM 963 O ALA 63 13.411 6.502 -18.970 1.00 1.00 O +ATOM 965 H ALA 63 10.724 7.838 -16.838 1.00 1.00 H +ATOM 966 HA ALA 63 12.134 8.921 -19.034 1.00 1.00 H +ATOM 964 CB ALA 63 12.529 9.497 -17.004 1.00 1.00 C +ATOM 967 HB1 ALA 63 11.605 10.047 -16.830 1.00 1.00 H +ATOM 968 HB2 ALA 63 12.849 9.019 -16.079 1.00 1.00 H +ATOM 969 HB3 ALA 63 13.303 10.186 -17.344 1.00 1.00 H +ATOM 970 N SER 64 14.514 7.744 -17.435 1.00 1.00 N +ATOM 971 CA SER 64 15.703 6.909 -17.452 1.00 1.00 C +ATOM 972 C SER 64 15.331 5.461 -17.131 1.00 1.00 C +ATOM 973 O SER 64 15.387 4.594 -18.003 1.00 1.00 O +ATOM 976 H SER 64 14.555 8.526 -16.813 1.00 1.00 H +ATOM 977 HA SER 64 16.096 6.988 -18.466 1.00 1.00 H +ATOM 974 CB SER 64 16.749 7.421 -16.459 1.00 1.00 C +ATOM 975 OG SER 64 17.769 6.456 -16.213 1.00 1.00 O +ATOM 978 HB2 SER 64 17.201 8.334 -16.847 1.00 1.00 H +ATOM 979 HB3 SER 64 16.261 7.681 -15.520 1.00 1.00 H +ATOM 980 HG SER 64 17.387 5.675 -15.719 1.00 1.00 H +ATOM 981 N ASP 65 14.959 5.242 -15.879 1.00 1.00 N +ATOM 982 CA ASP 65 14.578 3.913 -15.432 1.00 1.00 C +ATOM 983 C ASP 65 13.766 4.027 -14.140 1.00 1.00 C +ATOM 984 O ASP 65 14.122 3.431 -13.124 1.00 1.00 O +ATOM 989 H ASP 65 14.917 5.953 -15.176 1.00 1.00 H +ATOM 990 HA ASP 65 13.999 3.491 -16.253 1.00 1.00 H +ATOM 985 CB ASP 65 15.812 3.055 -15.142 1.00 1.00 C +ATOM 986 CG ASP 65 15.582 1.544 -15.233 1.00 1.00 C +ATOM 987 OD1 ASP 65 15.190 0.967 -14.196 1.00 1.00 O +ATOM 988 OD2 ASP 65 15.808 1.002 -16.336 1.00 1.00 O +ATOM 991 HB2 ASP 65 16.600 3.331 -15.842 1.00 1.00 H +ATOM 992 HB3 ASP 65 16.173 3.293 -14.142 1.00 1.00 H +ATOM 993 N GLY 66 12.692 4.798 -14.220 1.00 1.00 N +ATOM 994 CA GLY 66 11.827 4.998 -13.070 1.00 1.00 C +ATOM 995 C GLY 66 10.893 6.191 -13.287 1.00 1.00 C +ATOM 996 O GLY 66 9.682 6.019 -13.417 1.00 1.00 O +ATOM 997 H GLY 66 12.410 5.280 -15.049 1.00 1.00 H +ATOM 998 HA2 GLY 66 11.238 4.098 -12.891 1.00 1.00 H +ATOM 999 HA3 GLY 66 12.432 5.164 -12.179 1.00 1.00 H +ATOM 1000 N LYS 67 11.492 7.372 -13.319 1.00 1.00 N +ATOM 1001 CA LYS 67 10.729 8.592 -13.518 1.00 1.00 C +ATOM 1002 C LYS 67 9.674 8.359 -14.600 1.00 1.00 C +ATOM 1003 O LYS 67 9.848 7.504 -15.468 1.00 1.00 O +ATOM 1009 H LYS 67 12.478 7.503 -13.213 1.00 1.00 H +ATOM 1010 HA LYS 67 10.220 8.815 -12.581 1.00 1.00 H +ATOM 1004 CB LYS 67 11.664 9.767 -13.814 1.00 1.00 C +ATOM 1005 CG LYS 67 13.090 9.464 -13.346 1.00 1.00 C +ATOM 1006 CD LYS 67 13.948 10.730 -13.350 1.00 1.00 C +ATOM 1007 CE LYS 67 15.150 10.580 -12.415 1.00 1.00 C +ATOM 1008 NZ LYS 67 15.314 11.793 -11.583 1.00 1.00 N +ATOM 1011 HB2 LYS 67 11.664 9.976 -14.884 1.00 1.00 H +ATOM 1012 HB3 LYS 67 11.297 10.664 -13.315 1.00 1.00 H +ATOM 1013 HG2 LYS 67 13.065 9.040 -12.343 1.00 1.00 H +ATOM 1014 HG3 LYS 67 13.538 8.715 -14.000 1.00 1.00 H +ATOM 1015 HD2 LYS 67 14.294 10.938 -14.363 1.00 1.00 H +ATOM 1016 HD3 LYS 67 13.344 11.583 -13.038 1.00 1.00 H +ATOM 1017 HE2 LYS 67 15.014 9.708 -11.775 1.00 1.00 H +ATOM 1018 HE3 LYS 67 16.053 10.408 -12.999 1.00 1.00 H +ATOM 1019 HZ1 LYS 67 15.127 12.605 -12.135 1.00 1.00 H +ATOM 1020 HZ2 LYS 67 14.674 11.759 -10.814 1.00 1.00 H +ATOM 1021 HZ3 LYS 67 16.250 11.833 -11.234 1.00 1.00 H +ATOM 1022 N LEU 68 8.602 9.133 -14.515 1.00 1.00 N +ATOM 1023 CA LEU 68 7.519 9.021 -15.476 1.00 1.00 C +ATOM 1024 C LEU 68 7.384 10.338 -16.242 1.00 1.00 C +ATOM 1025 O LEU 68 7.062 11.371 -15.655 1.00 1.00 O +ATOM 1030 H LEU 68 8.468 9.826 -13.806 1.00 1.00 H +ATOM 1031 HA LEU 68 7.790 8.237 -16.184 1.00 1.00 H +ATOM 1026 CB LEU 68 6.230 8.578 -14.782 1.00 1.00 C +ATOM 1027 CG LEU 68 6.373 7.454 -13.754 1.00 1.00 C +ATOM 1028 CD1 LEU 68 5.430 7.670 -12.569 1.00 1.00 C +ATOM 1029 CD2 LEU 68 6.171 6.085 -14.406 1.00 1.00 C +ATOM 1032 HB2 LEU 68 5.792 9.444 -14.285 1.00 1.00 H +ATOM 1033 HB3 LEU 68 5.521 8.256 -15.545 1.00 1.00 H +ATOM 1034 HG LEU 68 7.392 7.476 -13.363 1.00 1.00 H +ATOM 1035 HD11 LEU 68 4.491 8.096 -12.926 1.00 1.00 H +ATOM 1036 HD12 LEU 68 5.233 6.714 -12.084 1.00 1.00 H +ATOM 1037 HD13 LEU 68 5.892 8.352 -11.857 1.00 1.00 H +ATOM 1038 HD21 LEU 68 6.657 6.072 -15.382 1.00 1.00 H +ATOM 1039 HD22 LEU 68 6.607 5.313 -13.772 1.00 1.00 H +ATOM 1040 HD23 LEU 68 5.105 5.895 -14.529 1.00 1.00 H +ATOM 1041 N TYR 69 7.636 10.260 -17.541 1.00 1.00 N +ATOM 1042 CA TYR 69 7.545 11.434 -18.392 1.00 1.00 C +ATOM 1043 C TYR 69 6.701 11.147 -19.635 1.00 1.00 C +ATOM 1044 O TYR 69 6.986 10.208 -20.379 1.00 1.00 O +ATOM 1053 H TYR 69 7.895 9.417 -18.010 1.00 1.00 H +ATOM 1054 HA TYR 69 7.072 12.231 -17.819 1.00 1.00 H +ATOM 1045 CB TYR 69 8.978 11.752 -18.824 1.00 1.00 C +ATOM 1046 CG TYR 69 9.416 11.033 -20.102 1.00 1.00 C +ATOM 1047 CD1 TYR 69 9.555 9.661 -20.108 1.00 1.00 C +ATOM 1048 CD2 TYR 69 9.673 11.759 -21.248 1.00 1.00 C +ATOM 1049 CE1 TYR 69 9.969 8.984 -21.311 1.00 1.00 C +ATOM 1050 CE2 TYR 69 10.084 11.082 -22.451 1.00 1.00 C +ATOM 1051 CZ TYR 69 10.212 9.728 -22.423 1.00 1.00 C +ATOM 1052 OH TYR 69 10.602 9.090 -23.558 1.00 1.00 O +ATOM 1055 HB2 TYR 69 9.071 12.827 -18.974 1.00 1.00 H +ATOM 1056 HB3 TYR 69 9.659 11.482 -18.017 1.00 1.00 H +ATOM 1057 HD1 TYR 69 9.353 9.088 -19.203 1.00 1.00 H +ATOM 1058 HD2 TYR 69 9.563 12.843 -21.243 1.00 1.00 H +ATOM 1059 HE1 TYR 69 10.081 7.900 -21.330 1.00 1.00 H +ATOM 1060 HE2 TYR 69 10.291 11.642 -23.363 1.00 1.00 H +ATOM 1061 HH TYR 69 11.241 8.354 -23.336 1.00 1.00 H +ATOM 1062 N VAL 70 5.681 11.970 -19.824 1.00 1.00 N +ATOM 1063 CA VAL 70 4.795 11.816 -20.964 1.00 1.00 C +ATOM 1064 C VAL 70 5.431 12.473 -22.192 1.00 1.00 C +ATOM 1065 O VAL 70 5.315 11.960 -23.305 1.00 1.00 O +ATOM 1069 H VAL 70 5.457 12.731 -19.215 1.00 1.00 H +ATOM 1070 HA VAL 70 4.687 10.748 -21.154 1.00 1.00 H +ATOM 1066 CB VAL 70 3.412 12.381 -20.633 1.00 1.00 C +ATOM 1067 CG1 VAL 70 2.341 11.779 -21.545 1.00 1.00 C +ATOM 1068 CG2 VAL 70 3.068 12.158 -19.160 1.00 1.00 C +ATOM 1071 HB VAL 70 3.438 13.456 -20.812 1.00 1.00 H +ATOM 1072 HG11 VAL 70 2.806 11.420 -22.463 1.00 1.00 H +ATOM 1073 HG12 VAL 70 1.856 10.947 -21.034 1.00 1.00 H +ATOM 1074 HG13 VAL 70 1.600 12.540 -21.786 1.00 1.00 H +ATOM 1075 HG21 VAL 70 3.335 11.140 -18.873 1.00 1.00 H +ATOM 1076 HG22 VAL 70 3.623 12.867 -18.545 1.00 1.00 H +ATOM 1077 HG23 VAL 70 1.998 12.308 -19.010 1.00 1.00 H +ATOM 1078 N SER 71 6.089 13.596 -21.947 1.00 1.00 N +ATOM 1079 CA SER 71 6.744 14.328 -23.019 1.00 1.00 C +ATOM 1080 C SER 71 8.257 14.121 -22.946 1.00 1.00 C +ATOM 1081 O SER 71 8.762 13.062 -23.312 1.00 1.00 O +ATOM 1084 H SER 71 6.179 14.006 -21.040 1.00 1.00 H +ATOM 1085 HA SER 71 6.345 13.906 -23.942 1.00 1.00 H +ATOM 1082 CB SER 71 6.408 15.819 -22.952 1.00 1.00 C +ATOM 1083 OG SER 71 7.039 16.556 -23.997 1.00 1.00 O +ATOM 1086 HB2 SER 71 5.327 15.951 -23.019 1.00 1.00 H +ATOM 1087 HB3 SER 71 6.719 16.219 -21.988 1.00 1.00 H +ATOM 1088 HG SER 71 7.159 15.973 -24.802 1.00 1.00 H +ATOM 1089 N SER 72 8.940 15.151 -22.468 1.00 1.00 N +ATOM 1090 CA SER 72 10.388 15.096 -22.341 1.00 1.00 C +ATOM 1091 C SER 72 10.833 15.864 -21.095 1.00 1.00 C +ATOM 1092 O SER 72 11.507 15.309 -20.228 1.00 1.00 O +ATOM 1095 H SER 72 8.523 16.010 -22.172 1.00 1.00 H +ATOM 1096 HA SER 72 10.628 14.038 -22.245 1.00 1.00 H +ATOM 1093 CB SER 72 11.071 15.662 -23.586 1.00 1.00 C +ATOM 1094 OG SER 72 10.820 17.056 -23.747 1.00 1.00 O +ATOM 1097 HB2 SER 72 12.146 15.493 -23.519 1.00 1.00 H +ATOM 1098 HB3 SER 72 10.720 15.127 -24.468 1.00 1.00 H +ATOM 1099 HG SER 72 11.649 17.518 -24.062 1.00 1.00 H +ATOM 1100 N GLU 73 10.439 17.128 -21.046 1.00 1.00 N +ATOM 1101 CA GLU 73 10.789 17.978 -19.920 1.00 1.00 C +ATOM 1102 C GLU 73 9.670 17.966 -18.878 1.00 1.00 C +ATOM 1103 O GLU 73 9.675 18.770 -17.947 1.00 1.00 O +ATOM 1109 H GLU 73 9.890 17.572 -21.756 1.00 1.00 H +ATOM 1110 HA GLU 73 11.694 17.541 -19.499 1.00 1.00 H +ATOM 1104 CB GLU 73 11.091 19.405 -20.384 1.00 1.00 C +ATOM 1105 CG GLU 73 10.762 19.581 -21.868 1.00 1.00 C +ATOM 1106 CD GLU 73 11.217 20.951 -22.372 1.00 1.00 C +ATOM 1107 OE1 GLU 73 12.348 21.342 -22.010 1.00 1.00 O +ATOM 1108 OE2 GLU 73 10.424 21.577 -23.109 1.00 1.00 O +ATOM 1111 HB2 GLU 73 10.511 20.113 -19.792 1.00 1.00 H +ATOM 1112 HB3 GLU 73 12.143 19.631 -20.213 1.00 1.00 H +ATOM 1113 HG2 GLU 73 11.249 18.796 -22.448 1.00 1.00 H +ATOM 1114 HG3 GLU 73 9.688 19.471 -22.022 1.00 1.00 H +ATOM 1115 N SER 74 8.737 17.044 -19.067 1.00 1.00 N +ATOM 1116 CA SER 74 7.614 16.916 -18.154 1.00 1.00 C +ATOM 1117 C SER 74 7.670 15.563 -17.443 1.00 1.00 C +ATOM 1118 O SER 74 6.667 14.854 -17.371 1.00 1.00 O +ATOM 1121 H SER 74 8.741 16.394 -19.826 1.00 1.00 H +ATOM 1122 HA SER 74 7.730 17.731 -17.439 1.00 1.00 H +ATOM 1119 CB SER 74 6.283 17.074 -18.893 1.00 1.00 C +ATOM 1120 OG SER 74 6.148 16.133 -19.955 1.00 1.00 O +ATOM 1123 HB2 SER 74 5.461 16.947 -18.189 1.00 1.00 H +ATOM 1124 HB3 SER 74 6.208 18.085 -19.293 1.00 1.00 H +ATOM 1125 HG SER 74 6.085 15.207 -19.584 1.00 1.00 H +ATOM 1126 N ARG 75 8.852 15.246 -16.935 1.00 1.00 N +ATOM 1127 CA ARG 75 9.051 13.991 -16.231 1.00 1.00 C +ATOM 1128 C ARG 75 8.672 14.143 -14.756 1.00 1.00 C +ATOM 1129 O ARG 75 8.850 15.211 -14.172 1.00 1.00 O +ATOM 1137 H ARG 75 9.661 15.829 -16.997 1.00 1.00 H +ATOM 1138 HA ARG 75 8.393 13.282 -16.733 1.00 1.00 H +ATOM 1130 CB ARG 75 10.506 13.528 -16.330 1.00 1.00 C +ATOM 1131 CG ARG 75 11.059 13.760 -17.738 1.00 1.00 C +ATOM 1132 CD ARG 75 12.517 14.221 -17.685 1.00 1.00 C +ATOM 1133 NE ARG 75 13.420 13.050 -17.719 1.00 1.00 N +ATOM 1134 CZ ARG 75 14.412 12.840 -16.843 1.00 1.00 C +ATOM 1135 NH1 ARG 75 14.634 13.721 -15.860 1.00 1.00 N +ATOM 1136 NH2 ARG 75 15.182 11.749 -16.952 1.00 1.00 N +ATOM 1139 HB2 ARG 75 11.113 14.067 -15.603 1.00 1.00 H +ATOM 1140 HB3 ARG 75 10.571 12.469 -16.080 1.00 1.00 H +ATOM 1141 HG2 ARG 75 10.987 12.840 -18.318 1.00 1.00 H +ATOM 1142 HG3 ARG 75 10.455 14.509 -18.251 1.00 1.00 H +ATOM 1143 HD2 ARG 75 12.729 14.880 -18.526 1.00 1.00 H +ATOM 1144 HD3 ARG 75 12.691 14.798 -16.777 1.00 1.00 H +ATOM 1145 HE ARG 75 13.281 12.371 -18.442 1.00 1.00 H +ATOM 1146 HH11 ARG 75 14.060 14.536 -15.778 1.00 1.00 H +ATOM 1147 HH12 ARG 75 15.375 13.565 -15.206 1.00 1.00 H +ATOM 1148 HH21 ARG 75 15.015 11.091 -17.687 1.00 1.00 H +ATOM 1149 HH22 ARG 75 15.922 11.591 -16.299 1.00 1.00 H +ATOM 1150 N PHE 76 8.156 13.059 -14.196 1.00 1.00 N +ATOM 1151 CA PHE 76 7.751 13.058 -12.800 1.00 1.00 C +ATOM 1152 C PHE 76 8.058 11.713 -12.139 1.00 1.00 C +ATOM 1153 O PHE 76 7.763 10.660 -12.702 1.00 1.00 O +ATOM 1161 H PHE 76 8.013 12.194 -14.677 1.00 1.00 H +ATOM 1162 HA PHE 76 8.314 13.845 -12.298 1.00 1.00 H +ATOM 1154 CB PHE 76 6.238 13.291 -12.774 1.00 1.00 C +ATOM 1155 CG PHE 76 5.777 14.476 -13.624 1.00 1.00 C +ATOM 1156 CD1 PHE 76 5.821 15.737 -13.116 1.00 1.00 C +ATOM 1157 CD2 PHE 76 5.321 14.269 -14.890 1.00 1.00 C +ATOM 1158 CE1 PHE 76 5.392 16.837 -13.906 1.00 1.00 C +ATOM 1159 CE2 PHE 76 4.892 15.368 -15.679 1.00 1.00 C +ATOM 1160 CZ PHE 76 4.936 16.629 -15.171 1.00 1.00 C +ATOM 1163 HB2 PHE 76 5.735 12.389 -13.122 1.00 1.00 H +ATOM 1164 HB3 PHE 76 5.923 13.453 -11.743 1.00 1.00 H +ATOM 1165 HD1 PHE 76 6.186 15.903 -12.103 1.00 1.00 H +ATOM 1166 HD2 PHE 76 5.285 13.259 -15.297 1.00 1.00 H +ATOM 1167 HE1 PHE 76 5.428 17.847 -13.499 1.00 1.00 H +ATOM 1168 HE2 PHE 76 4.528 15.202 -16.692 1.00 1.00 H +ATOM 1169 HZ PHE 76 4.607 17.473 -15.776 1.00 1.00 H +ATOM 1170 N ASN 77 8.648 11.792 -10.956 1.00 1.00 N +ATOM 1171 CA ASN 77 9.000 10.594 -10.213 1.00 1.00 C +ATOM 1172 C ASN 77 7.773 10.096 -9.447 1.00 1.00 C +ATOM 1173 O ASN 77 7.782 8.991 -8.906 1.00 1.00 O +ATOM 1178 H ASN 77 8.885 12.653 -10.506 1.00 1.00 H +ATOM 1179 HA ASN 77 9.340 9.881 -10.965 1.00 1.00 H +ATOM 1174 CB ASN 77 10.107 10.880 -9.198 1.00 1.00 C +ATOM 1175 CG ASN 77 11.247 11.676 -9.838 1.00 1.00 C +ATOM 1176 OD1 ASN 77 11.064 12.407 -10.797 1.00 1.00 O +ATOM 1177 ND2 ASN 77 12.428 11.493 -9.256 1.00 1.00 N +ATOM 1180 HB2 ASN 77 9.698 11.439 -8.356 1.00 1.00 H +ATOM 1181 HB3 ASN 77 10.493 9.942 -8.800 1.00 1.00 H +ATOM 1182 HD21 ASN 77 12.509 10.878 -8.471 1.00 1.00 H +ATOM 1183 HD22 ASN 77 13.237 11.970 -9.603 1.00 1.00 H +ATOM 1184 N THR 78 6.747 10.933 -9.426 1.00 1.00 N +ATOM 1185 CA THR 78 5.515 10.593 -8.735 1.00 1.00 C +ATOM 1186 C THR 78 4.317 10.751 -9.673 1.00 1.00 C +ATOM 1187 O THR 78 4.365 11.532 -10.621 1.00 1.00 O +ATOM 1191 H THR 78 6.748 11.831 -9.870 1.00 1.00 H +ATOM 1192 HA THR 78 5.562 9.542 -8.451 1.00 1.00 H +ATOM 1188 CB THR 78 5.423 11.460 -7.479 1.00 1.00 C +ATOM 1189 OG1 THR 78 5.588 10.536 -6.407 1.00 1.00 O +ATOM 1190 CG2 THR 78 4.020 12.032 -7.264 1.00 1.00 C +ATOM 1193 HB THR 78 6.169 12.254 -7.498 1.00 1.00 H +ATOM 1194 HG1 THR 78 5.432 10.995 -5.532 1.00 1.00 H +ATOM 1195 HG21 THR 78 3.510 12.113 -8.225 1.00 1.00 H +ATOM 1196 HG22 THR 78 3.455 11.372 -6.606 1.00 1.00 H +ATOM 1197 HG23 THR 78 4.095 13.019 -6.809 1.00 1.00 H +ATOM 1198 N LEU 79 3.269 9.996 -9.375 1.00 1.00 N +ATOM 1199 CA LEU 79 2.061 10.043 -10.179 1.00 1.00 C +ATOM 1200 C LEU 79 1.457 11.446 -10.104 1.00 1.00 C +ATOM 1201 O LEU 79 1.299 12.114 -11.125 1.00 1.00 O +ATOM 1206 H LEU 79 3.239 9.362 -8.602 1.00 1.00 H +ATOM 1207 HA LEU 79 2.347 9.845 -11.212 1.00 1.00 H +ATOM 1202 CB LEU 79 1.093 8.934 -9.759 1.00 1.00 C +ATOM 1203 CG LEU 79 1.297 7.575 -10.430 1.00 1.00 C +ATOM 1204 CD1 LEU 79 2.610 6.932 -9.979 1.00 1.00 C +ATOM 1205 CD2 LEU 79 0.097 6.658 -10.187 1.00 1.00 C +ATOM 1208 HB2 LEU 79 1.174 8.800 -8.679 1.00 1.00 H +ATOM 1209 HB3 LEU 79 0.077 9.269 -9.962 1.00 1.00 H +ATOM 1210 HG LEU 79 1.368 7.733 -11.505 1.00 1.00 H +ATOM 1211 HD11 LEU 79 3.049 7.524 -9.175 1.00 1.00 H +ATOM 1212 HD12 LEU 79 2.415 5.921 -9.620 1.00 1.00 H +ATOM 1213 HD13 LEU 79 3.302 6.892 -10.819 1.00 1.00 H +ATOM 1214 HD21 LEU 79 -0.273 6.804 -9.172 1.00 1.00 H +ATOM 1215 HD22 LEU 79 -0.692 6.897 -10.899 1.00 1.00 H +ATOM 1216 HD23 LEU 79 0.402 5.619 -10.317 1.00 1.00 H +ATOM 1217 N ALA 80 1.135 11.854 -8.884 1.00 1.00 N +ATOM 1218 CA ALA 80 0.552 13.167 -8.663 1.00 1.00 C +ATOM 1219 C ALA 80 1.319 14.204 -9.485 1.00 1.00 C +ATOM 1220 O ALA 80 0.772 14.790 -10.420 1.00 1.00 O +ATOM 1222 H ALA 80 1.266 11.304 -8.059 1.00 1.00 H +ATOM 1223 HA ALA 80 -0.481 13.134 -9.007 1.00 1.00 H +ATOM 1221 CB ALA 80 0.564 13.484 -7.166 1.00 1.00 C +ATOM 1224 HB1 ALA 80 1.500 13.138 -6.728 1.00 1.00 H +ATOM 1225 HB2 ALA 80 0.471 14.560 -7.022 1.00 1.00 H +ATOM 1226 HB3 ALA 80 -0.272 12.979 -6.682 1.00 1.00 H +ATOM 1227 N GLU 81 2.573 14.403 -9.108 1.00 1.00 N +ATOM 1228 CA GLU 81 3.420 15.362 -9.799 1.00 1.00 C +ATOM 1229 C GLU 81 3.159 15.311 -11.306 1.00 1.00 C +ATOM 1230 O GLU 81 3.279 16.322 -11.993 1.00 1.00 O +ATOM 1236 H GLU 81 3.011 13.923 -8.347 1.00 1.00 H +ATOM 1237 HA GLU 81 3.134 16.336 -9.406 1.00 1.00 H +ATOM 1231 CB GLU 81 4.897 15.110 -9.489 1.00 1.00 C +ATOM 1232 CG GLU 81 5.446 16.172 -8.534 1.00 1.00 C +ATOM 1233 CD GLU 81 5.044 15.870 -7.088 1.00 1.00 C +ATOM 1234 OE1 GLU 81 3.934 15.324 -6.911 1.00 1.00 O +ATOM 1235 OE2 GLU 81 5.857 16.190 -6.195 1.00 1.00 O +ATOM 1238 HB2 GLU 81 5.017 14.121 -9.046 1.00 1.00 H +ATOM 1239 HB3 GLU 81 5.473 15.116 -10.415 1.00 1.00 H +ATOM 1240 HG2 GLU 81 6.532 16.211 -8.613 1.00 1.00 H +ATOM 1241 HG3 GLU 81 5.070 17.154 -8.822 1.00 1.00 H +ATOM 1242 N LEU 82 2.807 14.122 -11.774 1.00 1.00 N +ATOM 1243 CA LEU 82 2.527 13.926 -13.186 1.00 1.00 C +ATOM 1244 C LEU 82 1.215 14.624 -13.543 1.00 1.00 C +ATOM 1245 O LEU 82 1.211 15.615 -14.271 1.00 1.00 O +ATOM 1250 H LEU 82 2.712 13.304 -11.206 1.00 1.00 H +ATOM 1251 HA LEU 82 3.335 14.400 -13.747 1.00 1.00 H +ATOM 1246 CB LEU 82 2.549 12.437 -13.535 1.00 1.00 C +ATOM 1247 CG LEU 82 2.778 12.097 -15.008 1.00 1.00 C +ATOM 1248 CD1 LEU 82 3.900 11.068 -15.167 1.00 1.00 C +ATOM 1249 CD2 LEU 82 1.480 11.633 -15.672 1.00 1.00 C +ATOM 1252 HB2 LEU 82 3.331 11.956 -12.947 1.00 1.00 H +ATOM 1253 HB3 LEU 82 1.601 11.998 -13.224 1.00 1.00 H +ATOM 1254 HG LEU 82 3.097 13.003 -15.524 1.00 1.00 H +ATOM 1255 HD11 LEU 82 4.760 11.376 -14.571 1.00 1.00 H +ATOM 1256 HD12 LEU 82 3.551 10.094 -14.826 1.00 1.00 H +ATOM 1257 HD13 LEU 82 4.189 11.006 -16.216 1.00 1.00 H +ATOM 1258 HD21 LEU 82 0.954 10.950 -15.005 1.00 1.00 H +ATOM 1259 HD22 LEU 82 0.847 12.497 -15.877 1.00 1.00 H +ATOM 1260 HD23 LEU 82 1.710 11.123 -16.607 1.00 1.00 H +ATOM 1261 N VAL 83 0.128 14.079 -13.013 1.00 1.00 N +ATOM 1262 CA VAL 83 -1.189 14.635 -13.267 1.00 1.00 C +ATOM 1263 C VAL 83 -1.205 16.106 -12.847 1.00 1.00 C +ATOM 1264 O VAL 83 -1.843 16.934 -13.495 1.00 1.00 O +ATOM 1268 H VAL 83 0.140 13.272 -12.422 1.00 1.00 H +ATOM 1269 HA VAL 83 -1.369 14.575 -14.340 1.00 1.00 H +ATOM 1265 CB VAL 83 -2.256 13.799 -12.558 1.00 1.00 C +ATOM 1266 CG1 VAL 83 -3.201 14.689 -11.749 1.00 1.00 C +ATOM 1267 CG2 VAL 83 -3.033 12.940 -13.559 1.00 1.00 C +ATOM 1270 HB VAL 83 -1.750 13.129 -11.864 1.00 1.00 H +ATOM 1271 HG11 VAL 83 -3.611 15.466 -12.394 1.00 1.00 H +ATOM 1272 HG12 VAL 83 -4.015 14.084 -11.348 1.00 1.00 H +ATOM 1273 HG13 VAL 83 -2.652 15.149 -10.927 1.00 1.00 H +ATOM 1274 HG21 VAL 83 -3.442 13.576 -14.344 1.00 1.00 H +ATOM 1275 HG22 VAL 83 -2.363 12.202 -14.001 1.00 1.00 H +ATOM 1276 HG23 VAL 83 -3.847 12.431 -13.044 1.00 1.00 H +ATOM 1277 N HIS 84 -0.496 16.387 -11.763 1.00 1.00 N +ATOM 1278 CA HIS 84 -0.422 17.744 -11.248 1.00 1.00 C +ATOM 1279 C HIS 84 -0.110 18.711 -12.393 1.00 1.00 C +ATOM 1280 O HIS 84 -0.828 19.688 -12.598 1.00 1.00 O +ATOM 1287 H HIS 84 0.019 15.707 -11.241 1.00 1.00 H +ATOM 1288 HA HIS 84 -1.406 17.978 -10.843 1.00 1.00 H +ATOM 1281 CB HIS 84 0.588 17.835 -10.103 1.00 1.00 C +ATOM 1282 CG HIS 84 -0.031 18.148 -8.762 1.00 1.00 C +ATOM 1283 ND1 HIS 84 -1.351 17.862 -8.461 1.00 1.00 N +ATOM 1284 CD2 HIS 84 0.503 18.722 -7.645 1.00 1.00 C +ATOM 1285 CE1 HIS 84 -1.591 18.253 -7.217 1.00 1.00 C +ATOM 1286 NE2 HIS 84 -0.440 18.786 -6.714 1.00 1.00 N +ATOM 1289 HB2 HIS 84 1.128 16.891 -10.032 1.00 1.00 H +ATOM 1290 HB3 HIS 84 1.323 18.604 -10.341 1.00 1.00 H +ATOM 1291 HD1 HIS 84 -2.013 17.435 -9.076 1.00 1.00 H +ATOM 1292 HD2 HIS 84 1.531 19.071 -7.538 1.00 1.00 H +ATOM 1293 HE1 HIS 84 -2.540 18.163 -6.688 1.00 1.00 H +ATOM 1294 N HIS 85 0.961 18.403 -13.110 1.00 1.00 N +ATOM 1295 CA HIS 85 1.377 19.231 -14.228 1.00 1.00 C +ATOM 1296 C HIS 85 0.412 19.034 -15.399 1.00 1.00 C +ATOM 1297 O HIS 85 0.046 19.995 -16.075 1.00 1.00 O +ATOM 1304 H HIS 85 1.539 17.606 -12.936 1.00 1.00 H +ATOM 1305 HA HIS 85 1.316 20.266 -13.889 1.00 1.00 H +ATOM 1298 CB HIS 85 2.832 18.948 -14.603 1.00 1.00 C +ATOM 1299 CG HIS 85 3.239 19.502 -15.947 1.00 1.00 C +ATOM 1300 ND1 HIS 85 3.447 20.852 -16.170 1.00 1.00 N +ATOM 1301 CD2 HIS 85 3.475 18.876 -17.135 1.00 1.00 C +ATOM 1302 CE1 HIS 85 3.791 21.019 -17.438 1.00 1.00 C +ATOM 1303 NE2 HIS 85 3.806 19.793 -18.035 1.00 1.00 N +ATOM 1306 HB2 HIS 85 3.484 19.367 -13.836 1.00 1.00 H +ATOM 1307 HB3 HIS 85 2.992 17.870 -14.603 1.00 1.00 H +ATOM 1308 HD1 HIS 85 3.353 21.579 -15.489 1.00 1.00 H +ATOM 1309 HD2 HIS 85 3.402 17.804 -17.316 1.00 1.00 H +ATOM 1310 HE1 HIS 85 4.022 21.970 -17.920 1.00 1.00 H +ATOM 1311 N HIS 86 0.028 17.784 -15.603 1.00 1.00 N +ATOM 1312 CA HIS 86 -0.887 17.448 -16.681 1.00 1.00 C +ATOM 1313 C HIS 86 -2.313 17.832 -16.282 1.00 1.00 C +ATOM 1314 O HIS 86 -3.271 17.474 -16.966 1.00 1.00 O +ATOM 1321 H HIS 86 0.330 17.007 -15.049 1.00 1.00 H +ATOM 1322 HA HIS 86 -0.586 18.043 -17.543 1.00 1.00 H +ATOM 1315 CB HIS 86 -0.755 15.972 -17.066 1.00 1.00 C +ATOM 1316 CG HIS 86 0.521 15.642 -17.803 1.00 1.00 C +ATOM 1317 ND1 HIS 86 1.268 16.594 -18.471 1.00 1.00 N +ATOM 1318 CD2 HIS 86 1.170 14.455 -17.971 1.00 1.00 C +ATOM 1319 CE1 HIS 86 2.320 15.997 -19.013 1.00 1.00 C +ATOM 1320 NE2 HIS 86 2.257 14.670 -18.702 1.00 1.00 N +ATOM 1323 HB2 HIS 86 -0.807 15.366 -16.161 1.00 1.00 H +ATOM 1324 HB3 HIS 86 -1.605 15.692 -17.687 1.00 1.00 H +ATOM 1325 HD1 HIS 86 1.053 17.569 -18.534 1.00 1.00 H +ATOM 1326 HD2 HIS 86 0.852 13.491 -17.571 1.00 1.00 H +ATOM 1327 HE1 HIS 86 3.098 16.480 -19.603 1.00 1.00 H +ATOM 1328 N SER 87 -2.409 18.554 -15.176 1.00 1.00 N +ATOM 1329 CA SER 87 -3.702 18.991 -14.677 1.00 1.00 C +ATOM 1330 C SER 87 -4.055 20.360 -15.265 1.00 1.00 C +ATOM 1331 O SER 87 -5.230 20.699 -15.393 1.00 1.00 O +ATOM 1334 H SER 87 -1.625 18.841 -14.625 1.00 1.00 H +ATOM 1335 HA SER 87 -4.412 18.236 -15.015 1.00 1.00 H +ATOM 1332 CB SER 87 -3.712 19.052 -13.148 1.00 1.00 C +ATOM 1333 OG SER 87 -4.744 18.244 -12.589 1.00 1.00 O +ATOM 1336 HB2 SER 87 -2.746 18.721 -12.767 1.00 1.00 H +ATOM 1337 HB3 SER 87 -3.845 20.085 -12.827 1.00 1.00 H +ATOM 1338 HG SER 87 -5.636 18.558 -12.913 1.00 1.00 H +ATOM 1339 N THR 88 -3.016 21.106 -15.606 1.00 1.00 N +ATOM 1340 CA THR 88 -3.201 22.430 -16.177 1.00 1.00 C +ATOM 1341 C THR 88 -2.441 22.552 -17.499 1.00 1.00 C +ATOM 1342 O THR 88 -2.947 23.135 -18.458 1.00 1.00 O +ATOM 1346 H THR 88 -2.062 20.822 -15.499 1.00 1.00 H +ATOM 1347 HA THR 88 -4.259 22.561 -16.403 1.00 1.00 H +ATOM 1343 CB THR 88 -2.770 23.460 -15.132 1.00 1.00 C +ATOM 1344 OG1 THR 88 -1.417 23.114 -14.841 1.00 1.00 O +ATOM 1345 CG2 THR 88 -3.495 23.280 -13.797 1.00 1.00 C +ATOM 1348 HB THR 88 -2.895 24.475 -15.510 1.00 1.00 H +ATOM 1349 HG1 THR 88 -1.390 22.356 -14.192 1.00 1.00 H +ATOM 1350 HG21 THR 88 -4.571 23.336 -13.958 1.00 1.00 H +ATOM 1351 HG22 THR 88 -3.243 22.307 -13.375 1.00 1.00 H +ATOM 1352 HG23 THR 88 -3.188 24.067 -13.108 1.00 1.00 H +ATOM 1353 N VAL 89 -1.241 21.990 -17.509 1.00 1.00 N +ATOM 1354 CA VAL 89 -0.408 22.029 -18.699 1.00 1.00 C +ATOM 1355 C VAL 89 -0.114 20.599 -19.158 1.00 1.00 C +ATOM 1356 O VAL 89 0.966 20.070 -18.898 1.00 1.00 O +ATOM 1360 H VAL 89 -0.838 21.518 -16.726 1.00 1.00 H +ATOM 1361 HA VAL 89 -0.971 22.539 -19.481 1.00 1.00 H +ATOM 1357 CB VAL 89 0.860 22.841 -18.424 1.00 1.00 C +ATOM 1358 CG1 VAL 89 1.787 22.841 -19.641 1.00 1.00 C +ATOM 1359 CG2 VAL 89 0.515 24.268 -17.996 1.00 1.00 C +ATOM 1362 HB VAL 89 1.391 22.363 -17.600 1.00 1.00 H +ATOM 1363 HG11 VAL 89 1.468 22.067 -20.340 1.00 1.00 H +ATOM 1364 HG12 VAL 89 1.741 23.814 -20.131 1.00 1.00 H +ATOM 1365 HG13 VAL 89 2.810 22.643 -19.321 1.00 1.00 H +ATOM 1366 HG21 VAL 89 -0.458 24.543 -18.401 1.00 1.00 H +ATOM 1367 HG22 VAL 89 0.487 24.325 -16.908 1.00 1.00 H +ATOM 1368 HG23 VAL 89 1.273 24.954 -18.376 1.00 1.00 H +ATOM 1369 N ALA 90 -1.095 20.014 -19.830 1.00 1.00 N +ATOM 1370 CA ALA 90 -0.955 18.657 -20.328 1.00 1.00 C +ATOM 1371 C ALA 90 0.010 18.649 -21.515 1.00 1.00 C +ATOM 1372 O ALA 90 -0.418 18.578 -22.666 1.00 1.00 O +ATOM 1374 H ALA 90 -1.969 20.453 -20.037 1.00 1.00 H +ATOM 1375 HA ALA 90 -0.535 18.051 -19.524 1.00 1.00 H +ATOM 1373 CB ALA 90 -2.334 18.102 -20.693 1.00 1.00 C +ATOM 1376 HB1 ALA 90 -3.078 18.491 -19.997 1.00 1.00 H +ATOM 1377 HB2 ALA 90 -2.591 18.408 -21.707 1.00 1.00 H +ATOM 1378 HB3 ALA 90 -2.315 17.014 -20.634 1.00 1.00 H +ATOM 1379 N ASP 91 1.293 18.722 -21.194 1.00 1.00 N +ATOM 1380 CA ASP 91 2.323 18.725 -22.220 1.00 1.00 C +ATOM 1381 C ASP 91 2.487 17.307 -22.775 1.00 1.00 C +ATOM 1382 O ASP 91 3.313 17.074 -23.656 1.00 1.00 O +ATOM 1387 H ASP 91 1.633 18.779 -20.255 1.00 1.00 H +ATOM 1388 HA ASP 91 1.973 19.429 -22.975 1.00 1.00 H +ATOM 1383 CB ASP 91 3.669 19.168 -21.649 1.00 1.00 C +ATOM 1384 CG ASP 91 4.278 20.405 -22.312 1.00 1.00 C +ATOM 1385 OD1 ASP 91 3.653 20.897 -23.276 1.00 1.00 O +ATOM 1386 OD2 ASP 91 5.355 20.830 -21.840 1.00 1.00 O +ATOM 1389 HB2 ASP 91 3.546 19.370 -20.584 1.00 1.00 H +ATOM 1390 HB3 ASP 91 4.375 18.343 -21.736 1.00 1.00 H +ATOM 1391 N GLY 92 1.689 16.399 -22.234 1.00 1.00 N +ATOM 1392 CA GLY 92 1.737 15.011 -22.661 1.00 1.00 C +ATOM 1393 C GLY 92 0.328 14.464 -22.904 1.00 1.00 C +ATOM 1394 O GLY 92 -0.009 14.077 -24.022 1.00 1.00 O +ATOM 1395 H GLY 92 1.021 16.597 -21.516 1.00 1.00 H +ATOM 1396 HA2 GLY 92 2.324 14.930 -23.576 1.00 1.00 H +ATOM 1397 HA3 GLY 92 2.240 14.410 -21.905 1.00 1.00 H +ATOM 1398 N LEU 93 -0.455 14.446 -21.835 1.00 1.00 N +ATOM 1399 CA LEU 93 -1.820 13.952 -21.917 1.00 1.00 C +ATOM 1400 C LEU 93 -2.655 14.911 -22.768 1.00 1.00 C +ATOM 1401 O LEU 93 -2.509 16.128 -22.665 1.00 1.00 O +ATOM 1406 H LEU 93 -0.175 14.762 -20.929 1.00 1.00 H +ATOM 1407 HA LEU 93 -1.787 12.985 -22.417 1.00 1.00 H +ATOM 1402 CB LEU 93 -2.390 13.719 -20.518 1.00 1.00 C +ATOM 1403 CG LEU 93 -1.366 13.615 -19.385 1.00 1.00 C +ATOM 1404 CD1 LEU 93 -2.051 13.306 -18.053 1.00 1.00 C +ATOM 1405 CD2 LEU 93 -0.279 12.591 -19.721 1.00 1.00 C +ATOM 1408 HB2 LEU 93 -3.077 14.532 -20.286 1.00 1.00 H +ATOM 1409 HB3 LEU 93 -2.977 12.800 -20.535 1.00 1.00 H +ATOM 1410 HG LEU 93 -0.875 14.582 -19.277 1.00 1.00 H +ATOM 1411 HD11 LEU 93 -2.964 13.895 -17.969 1.00 1.00 H +ATOM 1412 HD12 LEU 93 -2.297 12.245 -18.007 1.00 1.00 H +ATOM 1413 HD13 LEU 93 -1.380 13.559 -17.231 1.00 1.00 H +ATOM 1414 HD21 LEU 93 -0.683 11.842 -20.400 1.00 1.00 H +ATOM 1415 HD22 LEU 93 0.562 13.098 -20.195 1.00 1.00 H +ATOM 1416 HD23 LEU 93 0.059 12.107 -18.805 1.00 1.00 H +ATOM 1417 N ILE 94 -3.512 14.326 -23.593 1.00 1.00 N +ATOM 1418 CA ILE 94 -4.371 15.113 -24.462 1.00 1.00 C +ATOM 1419 C ILE 94 -5.114 16.157 -23.626 1.00 1.00 C +ATOM 1420 O ILE 94 -4.678 17.302 -23.526 1.00 1.00 O +ATOM 1425 H ILE 94 -3.624 13.335 -23.672 1.00 1.00 H +ATOM 1426 HA ILE 94 -3.728 15.632 -25.172 1.00 1.00 H +ATOM 1421 CB ILE 94 -5.295 14.200 -25.271 1.00 1.00 C +ATOM 1422 CG1 ILE 94 -6.431 14.999 -25.910 1.00 1.00 C +ATOM 1423 CG2 ILE 94 -5.816 13.047 -24.411 1.00 1.00 C +ATOM 1424 CD1 ILE 94 -7.244 14.126 -26.870 1.00 1.00 C +ATOM 1427 HB ILE 94 -4.714 13.760 -26.083 1.00 1.00 H +ATOM 1428 HG12 ILE 94 -7.085 15.396 -25.132 1.00 1.00 H +ATOM 1429 HG13 ILE 94 -6.022 15.854 -26.450 1.00 1.00 H +ATOM 1430 HG21 ILE 94 -5.502 13.193 -23.378 1.00 1.00 H +ATOM 1431 HG22 ILE 94 -6.906 13.023 -24.460 1.00 1.00 H +ATOM 1432 HG23 ILE 94 -5.416 12.104 -24.784 1.00 1.00 H +ATOM 1433 HD11 ILE 94 -7.524 13.201 -26.368 1.00 1.00 H +ATOM 1434 HD12 ILE 94 -8.143 14.661 -27.174 1.00 1.00 H +ATOM 1435 HD13 ILE 94 -6.642 13.896 -27.749 1.00 1.00 H +ATOM 1436 N THR 95 -6.225 15.723 -23.049 1.00 1.00 N +ATOM 1437 CA THR 95 -7.034 16.607 -22.226 1.00 1.00 C +ATOM 1438 C THR 95 -6.420 16.748 -20.832 1.00 1.00 C +ATOM 1439 O THR 95 -5.499 16.013 -20.479 1.00 1.00 O +ATOM 1443 H THR 95 -6.573 14.790 -23.136 1.00 1.00 H +ATOM 1444 HA THR 95 -7.030 17.598 -22.678 1.00 1.00 H +ATOM 1440 CB THR 95 -8.463 16.060 -22.208 1.00 1.00 C +ATOM 1441 OG1 THR 95 -9.102 16.791 -21.167 1.00 1.00 O +ATOM 1442 CG2 THR 95 -8.528 14.606 -21.737 1.00 1.00 C +ATOM 1445 HB THR 95 -8.935 16.175 -23.184 1.00 1.00 H +ATOM 1446 HG1 THR 95 -10.059 16.512 -21.088 1.00 1.00 H +ATOM 1447 HG21 THR 95 -7.557 14.310 -21.337 1.00 1.00 H +ATOM 1448 HG22 THR 95 -9.287 14.510 -20.960 1.00 1.00 H +ATOM 1449 HG23 THR 95 -8.785 13.963 -22.578 1.00 1.00 H +ATOM 1450 N THR 96 -6.956 17.694 -20.077 1.00 1.00 N +ATOM 1451 CA THR 96 -6.473 17.941 -18.729 1.00 1.00 C +ATOM 1452 C THR 96 -7.502 17.470 -17.698 1.00 1.00 C +ATOM 1453 O THR 96 -8.553 18.085 -17.539 1.00 1.00 O +ATOM 1457 H THR 96 -7.706 18.287 -20.370 1.00 1.00 H +ATOM 1458 HA THR 96 -5.570 17.349 -18.574 1.00 1.00 H +ATOM 1454 CB THR 96 -6.134 19.428 -18.612 1.00 1.00 C +ATOM 1455 OG1 THR 96 -7.389 20.050 -18.349 1.00 1.00 O +ATOM 1456 CG2 THR 96 -5.689 20.034 -19.945 1.00 1.00 C +ATOM 1459 HB THR 96 -5.385 19.596 -17.838 1.00 1.00 H +ATOM 1460 HG1 THR 96 -8.037 19.836 -19.080 1.00 1.00 H +ATOM 1461 HG21 THR 96 -6.326 19.655 -20.745 1.00 1.00 H +ATOM 1462 HG22 THR 96 -5.774 21.119 -19.897 1.00 1.00 H +ATOM 1463 HG23 THR 96 -4.654 19.758 -20.143 1.00 1.00 H +ATOM 1464 N LEU 97 -7.161 16.380 -17.026 1.00 1.00 N +ATOM 1465 CA LEU 97 -8.041 15.817 -16.016 1.00 1.00 C +ATOM 1466 C LEU 97 -8.829 16.947 -15.347 1.00 1.00 C +ATOM 1467 O LEU 97 -8.297 18.035 -15.130 1.00 1.00 O +ATOM 1472 H LEU 97 -6.304 15.884 -17.161 1.00 1.00 H +ATOM 1473 HA LEU 97 -8.745 15.160 -16.525 1.00 1.00 H +ATOM 1468 CB LEU 97 -7.247 14.955 -15.033 1.00 1.00 C +ATOM 1469 CG LEU 97 -6.077 15.644 -14.329 1.00 1.00 C +ATOM 1470 CD1 LEU 97 -5.910 15.123 -12.900 1.00 1.00 C +ATOM 1471 CD2 LEU 97 -4.789 15.507 -15.143 1.00 1.00 C +ATOM 1474 HB2 LEU 97 -7.933 14.582 -14.272 1.00 1.00 H +ATOM 1475 HB3 LEU 97 -6.863 14.088 -15.569 1.00 1.00 H +ATOM 1476 HG LEU 97 -6.300 16.710 -14.258 1.00 1.00 H +ATOM 1477 HD11 LEU 97 -6.880 14.806 -12.515 1.00 1.00 H +ATOM 1478 HD12 LEU 97 -5.226 14.275 -12.901 1.00 1.00 H +ATOM 1479 HD13 LEU 97 -5.510 15.915 -12.269 1.00 1.00 H +ATOM 1480 HD21 LEU 97 -4.721 14.496 -15.546 1.00 1.00 H +ATOM 1481 HD22 LEU 97 -4.799 16.224 -15.964 1.00 1.00 H +ATOM 1482 HD23 LEU 97 -3.931 15.702 -14.501 1.00 1.00 H +ATOM 1483 N HIS 98 -10.083 16.649 -15.038 1.00 1.00 N +ATOM 1484 CA HIS 98 -10.947 17.625 -14.399 1.00 1.00 C +ATOM 1485 C HIS 98 -11.561 17.017 -13.136 1.00 1.00 C +ATOM 1486 O HIS 98 -11.474 17.601 -12.057 1.00 1.00 O +ATOM 1493 H HIS 98 -10.506 15.761 -15.218 1.00 1.00 H +ATOM 1494 HA HIS 98 -10.314 18.467 -14.117 1.00 1.00 H +ATOM 1487 CB HIS 98 -12.002 18.142 -15.379 1.00 1.00 C +ATOM 1488 CG HIS 98 -11.752 17.745 -16.816 1.00 1.00 C +ATOM 1489 ND1 HIS 98 -10.659 18.192 -17.537 1.00 1.00 N +ATOM 1490 CD2 HIS 98 -12.464 16.939 -17.654 1.00 1.00 C +ATOM 1491 CE1 HIS 98 -10.721 17.671 -18.754 1.00 1.00 C +ATOM 1492 NE2 HIS 98 -11.840 16.895 -18.825 1.00 1.00 N +ATOM 1495 HB2 HIS 98 -12.979 17.771 -15.076 1.00 1.00 H +ATOM 1496 HB3 HIS 98 -12.040 19.229 -15.317 1.00 1.00 H +ATOM 1497 HD1 HIS 98 -9.944 18.802 -17.199 1.00 1.00 H +ATOM 1498 HD2 HIS 98 -13.387 16.417 -17.403 1.00 1.00 H +ATOM 1499 HE1 HIS 98 -10.003 17.834 -19.559 1.00 1.00 H +ATOM 1500 N TYR 99 -12.169 15.853 -13.313 1.00 1.00 N +ATOM 1501 CA TYR 99 -12.797 15.160 -12.201 1.00 1.00 C +ATOM 1502 C TYR 99 -12.123 13.809 -11.947 1.00 1.00 C +ATOM 1503 O TYR 99 -12.199 12.907 -12.778 1.00 1.00 O +ATOM 1512 H TYR 99 -12.235 15.385 -14.195 1.00 1.00 H +ATOM 1513 HA TYR 99 -12.691 15.784 -11.313 1.00 1.00 H +ATOM 1504 CB TYR 99 -14.249 14.922 -12.619 1.00 1.00 C +ATOM 1505 CG TYR 99 -15.143 16.158 -12.494 1.00 1.00 C +ATOM 1506 CD1 TYR 99 -15.202 17.073 -13.525 1.00 1.00 C +ATOM 1507 CD2 TYR 99 -15.890 16.356 -11.352 1.00 1.00 C +ATOM 1508 CE1 TYR 99 -16.043 18.235 -13.409 1.00 1.00 C +ATOM 1509 CE2 TYR 99 -16.732 17.519 -11.235 1.00 1.00 C +ATOM 1510 CZ TYR 99 -16.766 18.401 -12.269 1.00 1.00 C +ATOM 1511 OH TYR 99 -17.561 19.499 -12.158 1.00 1.00 O +ATOM 1514 HB2 TYR 99 -14.267 14.575 -13.652 1.00 1.00 H +ATOM 1515 HB3 TYR 99 -14.666 14.121 -12.007 1.00 1.00 H +ATOM 1516 HD1 TYR 99 -14.611 16.916 -14.427 1.00 1.00 H +ATOM 1517 HD2 TYR 99 -15.844 15.631 -10.537 1.00 1.00 H +ATOM 1518 HE1 TYR 99 -16.099 18.966 -14.215 1.00 1.00 H +ATOM 1519 HE2 TYR 99 -17.328 17.687 -10.338 1.00 1.00 H +ATOM 1520 HH TYR 99 -18.338 19.300 -11.559 1.00 1.00 H +ATOM 1521 N PRO 100 -11.463 13.712 -10.761 1.00 1.00 N +ATOM 1522 CA PRO 100 -10.777 12.486 -10.386 1.00 1.00 C +ATOM 1523 C PRO 100 -11.774 11.408 -9.959 1.00 1.00 C +ATOM 1524 O PRO 100 -12.127 11.315 -8.785 1.00 1.00 O +ATOM 1528 HA PRO 100 -10.286 12.109 -11.171 1.00 1.00 H +ATOM 1525 CB PRO 100 -9.827 12.893 -9.271 1.00 1.00 C +ATOM 1526 CG PRO 100 -10.345 14.224 -8.747 1.00 1.00 C +ATOM 1527 CD PRO 100 -11.352 14.760 -9.751 1.00 1.00 C +ATOM 1529 HB2 PRO 100 -9.809 12.142 -8.482 1.00 1.00 H +ATOM 1530 HB3 PRO 100 -8.806 12.991 -9.642 1.00 1.00 H +ATOM 1531 HG2 PRO 100 -10.812 14.092 -7.771 1.00 1.00 H +ATOM 1532 HG3 PRO 100 -9.523 14.927 -8.616 1.00 1.00 H +ATOM 1533 HD2 PRO 100 -12.314 14.959 -9.279 1.00 1.00 H +ATOM 1534 HD3 PRO 100 -11.012 15.698 -10.190 1.00 1.00 H +ATOM 1535 N ALA 101 -12.200 10.621 -10.935 1.00 1.00 N +ATOM 1536 CA ALA 101 -13.149 9.552 -10.675 1.00 1.00 C +ATOM 1537 C ALA 101 -12.826 8.905 -9.327 1.00 1.00 C +ATOM 1538 O ALA 101 -11.939 8.057 -9.239 1.00 1.00 O +ATOM 1540 H ALA 101 -11.908 10.704 -11.888 1.00 1.00 H +ATOM 1541 HA ALA 101 -14.143 9.997 -10.626 1.00 1.00 H +ATOM 1539 CB ALA 101 -13.117 8.547 -11.827 1.00 1.00 C +ATOM 1542 HB1 ALA 101 -13.344 9.059 -12.763 1.00 1.00 H +ATOM 1543 HB2 ALA 101 -12.125 8.101 -11.891 1.00 1.00 H +ATOM 1544 HB3 ALA 101 -13.856 7.767 -11.651 1.00 1.00 H +ATOM 1545 N PRO 102 -13.582 9.341 -8.284 1.00 1.00 N +ATOM 1546 CA PRO 102 -13.383 8.813 -6.945 1.00 1.00 C +ATOM 1547 C PRO 102 -13.963 7.403 -6.820 1.00 1.00 C +ATOM 1548 O PRO 102 -14.682 6.943 -7.705 1.00 1.00 O +ATOM 1552 HA PRO 102 -12.407 8.726 -6.747 1.00 1.00 H +ATOM 1549 CB PRO 102 -14.058 9.816 -6.023 1.00 1.00 C +ATOM 1550 CG PRO 102 -15.004 10.619 -6.901 1.00 1.00 C +ATOM 1551 CD PRO 102 -14.640 10.345 -8.351 1.00 1.00 C +ATOM 1553 HB2 PRO 102 -14.601 9.311 -5.225 1.00 1.00 H +ATOM 1554 HB3 PRO 102 -13.322 10.465 -5.546 1.00 1.00 H +ATOM 1555 HG2 PRO 102 -16.037 10.335 -6.706 1.00 1.00 H +ATOM 1556 HG3 PRO 102 -14.919 11.684 -6.681 1.00 1.00 H +ATOM 1557 HD2 PRO 102 -15.498 9.977 -8.911 1.00 1.00 H +ATOM 1558 HD3 PRO 102 -14.296 11.251 -8.852 1.00 1.00 H +ATOM 1559 N LYS 103 -13.629 6.756 -5.712 1.00 1.00 N +ATOM 1560 CA LYS 103 -14.108 5.408 -5.461 1.00 1.00 C +ATOM 1561 C LYS 103 -15.538 5.471 -4.921 1.00 1.00 C +ATOM 1562 O LYS 103 -15.748 5.467 -3.708 1.00 1.00 O +ATOM 1568 H LYS 103 -13.044 7.138 -4.997 1.00 1.00 H +ATOM 1569 HA LYS 103 -14.122 4.883 -6.415 1.00 1.00 H +ATOM 1563 CB LYS 103 -13.137 4.658 -4.546 1.00 1.00 C +ATOM 1564 CG LYS 103 -11.710 5.184 -4.709 1.00 1.00 C +ATOM 1565 CD LYS 103 -11.367 5.387 -6.186 1.00 1.00 C +ATOM 1566 CE LYS 103 -10.578 6.682 -6.393 1.00 1.00 C +ATOM 1567 NZ LYS 103 -10.310 6.902 -7.832 1.00 1.00 N +ATOM 1570 HB2 LYS 103 -13.453 4.766 -3.508 1.00 1.00 H +ATOM 1571 HB3 LYS 103 -13.165 3.593 -4.776 1.00 1.00 H +ATOM 1572 HG2 LYS 103 -11.604 6.128 -4.175 1.00 1.00 H +ATOM 1573 HG3 LYS 103 -11.007 4.483 -4.262 1.00 1.00 H +ATOM 1574 HD2 LYS 103 -10.785 4.540 -6.547 1.00 1.00 H +ATOM 1575 HD3 LYS 103 -12.284 5.418 -6.776 1.00 1.00 H +ATOM 1576 HE2 LYS 103 -11.138 7.525 -5.988 1.00 1.00 H +ATOM 1577 HE3 LYS 103 -9.637 6.633 -5.845 1.00 1.00 H +ATOM 1578 HZ1 LYS 103 -9.855 6.096 -8.213 1.00 1.00 H +ATOM 1579 HZ2 LYS 103 -11.173 7.056 -8.312 1.00 1.00 H +ATOM 1580 HZ3 LYS 103 -9.719 7.701 -7.942 1.00 1.00 H +ATOM 1581 N ARG 104 -16.484 5.529 -5.847 1.00 1.00 N +ATOM 1582 CA ARG 104 -17.888 5.594 -5.479 1.00 1.00 C +ATOM 1583 C ARG 104 -18.396 4.206 -5.082 1.00 1.00 C +ATOM 1584 O ARG 104 -18.069 3.212 -5.727 1.00 1.00 O +ATOM 1592 H ARG 104 -16.304 5.532 -6.831 1.00 1.00 H +ATOM 1593 HA ARG 104 -17.924 6.282 -4.635 1.00 1.00 H +ATOM 1585 CB ARG 104 -18.737 6.128 -6.634 1.00 1.00 C +ATOM 1586 CG ARG 104 -19.352 7.483 -6.282 1.00 1.00 C +ATOM 1587 CD ARG 104 -18.578 8.625 -6.942 1.00 1.00 C +ATOM 1588 NE ARG 104 -19.483 9.771 -7.192 1.00 1.00 N +ATOM 1589 CZ ARG 104 -19.299 10.676 -8.163 1.00 1.00 C +ATOM 1590 NH1 ARG 104 -18.242 10.574 -8.981 1.00 1.00 N +ATOM 1591 NH2 ARG 104 -20.169 11.682 -8.316 1.00 1.00 N +ATOM 1594 HB2 ARG 104 -18.119 6.226 -7.528 1.00 1.00 H +ATOM 1595 HB3 ARG 104 -19.526 5.415 -6.870 1.00 1.00 H +ATOM 1596 HG2 ARG 104 -20.393 7.508 -6.605 1.00 1.00 H +ATOM 1597 HG3 ARG 104 -19.352 7.616 -5.200 1.00 1.00 H +ATOM 1598 HD2 ARG 104 -17.754 8.936 -6.302 1.00 1.00 H +ATOM 1599 HD3 ARG 104 -18.142 8.286 -7.882 1.00 1.00 H +ATOM 1600 HE ARG 104 -20.281 9.877 -6.598 1.00 1.00 H +ATOM 1601 HH11 ARG 104 -17.593 9.823 -8.868 1.00 1.00 H +ATOM 1602 HH12 ARG 104 -18.105 11.250 -9.707 1.00 1.00 H +ATOM 1603 HH21 ARG 104 -20.958 11.758 -7.706 1.00 1.00 H +ATOM 1604 HH22 ARG 104 -20.032 12.356 -9.041 1.00 1.00 H +ATOM 1605 N GLY 105 -19.188 4.184 -4.018 1.00 1.00 N +ATOM 1606 CA GLY 105 -19.746 2.936 -3.527 1.00 1.00 C +ATOM 1607 C GLY 105 -21.062 2.607 -4.233 1.00 1.00 C +ATOM 1608 O GLY 105 -21.253 2.962 -5.395 1.00 1.00 O +ATOM 1609 H GLY 105 -19.449 4.997 -3.499 1.00 1.00 H +ATOM 1610 HA2 GLY 105 -19.031 2.126 -3.687 1.00 1.00 H +ATOM 1611 HA3 GLY 105 -19.912 3.005 -2.453 1.00 1.00 H +ATOM 1612 N ILE 106 -21.936 1.932 -3.501 1.00 1.00 N +ATOM 1613 CA ILE 106 -23.230 1.551 -4.043 1.00 1.00 C +ATOM 1614 C ILE 106 -24.318 1.841 -3.007 1.00 1.00 C +ATOM 1615 O ILE 106 -25.162 2.712 -3.213 1.00 1.00 O +ATOM 1620 H ILE 106 -21.774 1.646 -2.557 1.00 1.00 H +ATOM 1621 HA ILE 106 -23.413 2.174 -4.919 1.00 1.00 H +ATOM 1616 CB ILE 106 -23.206 0.098 -4.518 1.00 1.00 C +ATOM 1617 CG1 ILE 106 -24.601 -0.366 -4.940 1.00 1.00 C +ATOM 1618 CG2 ILE 106 -22.597 -0.817 -3.453 1.00 1.00 C +ATOM 1619 CD1 ILE 106 -24.965 0.178 -6.323 1.00 1.00 C +ATOM 1622 HB ILE 106 -22.566 0.036 -5.398 1.00 1.00 H +ATOM 1623 HG12 ILE 106 -24.638 -1.455 -4.952 1.00 1.00 H +ATOM 1624 HG13 ILE 106 -25.336 -0.030 -4.209 1.00 1.00 H +ATOM 1625 HG21 ILE 106 -21.901 -0.246 -2.839 1.00 1.00 H +ATOM 1626 HG22 ILE 106 -23.390 -1.221 -2.823 1.00 1.00 H +ATOM 1627 HG23 ILE 106 -22.065 -1.636 -3.937 1.00 1.00 H +ATOM 1628 HD11 ILE 106 -24.392 1.084 -6.518 1.00 1.00 H +ATOM 1629 HD12 ILE 106 -24.730 -0.570 -7.081 1.00 1.00 H +ATOM 1630 HD13 ILE 106 -26.029 0.406 -6.357 1.00 1.00 H +ATOM 1631 N HIS 107 -24.262 1.096 -1.913 1.00 1.00 N +ATOM 1632 CA HIS 107 -25.233 1.262 -0.844 1.00 1.00 C +ATOM 1633 C HIS 107 -25.230 0.018 0.048 1.00 1.00 C +ATOM 1634 O HIS 107 -25.371 0.124 1.267 1.00 1.00 O +ATOM 1641 H HIS 107 -23.573 0.388 -1.753 1.00 1.00 H +ATOM 1642 HA HIS 107 -24.907 2.120 -0.258 1.00 1.00 H +ATOM 1635 CB HIS 107 -26.617 1.581 -1.412 1.00 1.00 C +ATOM 1636 CG HIS 107 -26.991 0.756 -2.619 1.00 1.00 C +ATOM 1637 ND1 HIS 107 -27.039 -0.627 -2.598 1.00 1.00 N +ATOM 1638 CD2 HIS 107 -27.336 1.133 -3.885 1.00 1.00 C +ATOM 1639 CE1 HIS 107 -27.396 -1.052 -3.800 1.00 1.00 C +ATOM 1640 NE2 HIS 107 -27.580 0.041 -4.597 1.00 1.00 N +ATOM 1643 HB2 HIS 107 -27.363 1.425 -0.632 1.00 1.00 H +ATOM 1644 HB3 HIS 107 -26.653 2.637 -1.680 1.00 1.00 H +ATOM 1645 HD1 HIS 107 -26.838 -1.206 -1.807 1.00 1.00 H +ATOM 1646 HD2 HIS 107 -27.399 2.159 -4.248 1.00 1.00 H +ATOM 1647 HE1 HIS 107 -27.523 -2.092 -4.101 1.00 1.00 H +ATOM 1648 N ARG 108 -25.070 -1.130 -0.592 1.00 1.00 N +ATOM 1649 CA ARG 108 -25.047 -2.392 0.129 1.00 1.00 C +ATOM 1650 C ARG 108 -24.295 -2.234 1.453 1.00 1.00 C +ATOM 1651 O ARG 108 -23.094 -1.967 1.460 1.00 1.00 O +ATOM 1659 H ARG 108 -24.955 -1.207 -1.582 1.00 1.00 H +ATOM 1660 HA ARG 108 -26.095 -2.633 0.302 1.00 1.00 H +ATOM 1652 CB ARG 108 -24.378 -3.488 -0.701 1.00 1.00 C +ATOM 1653 CG ARG 108 -25.424 -4.396 -1.354 1.00 1.00 C +ATOM 1654 CD ARG 108 -26.005 -3.745 -2.610 1.00 1.00 C +ATOM 1655 NE ARG 108 -27.484 -3.815 -2.579 1.00 1.00 N +ATOM 1656 CZ ARG 108 -28.220 -4.558 -3.418 1.00 1.00 C +ATOM 1657 NH1 ARG 108 -27.619 -5.299 -4.359 1.00 1.00 N +ATOM 1658 NH2 ARG 108 -29.555 -4.559 -3.315 1.00 1.00 N +ATOM 1661 HB2 ARG 108 -23.753 -3.037 -1.471 1.00 1.00 H +ATOM 1662 HB3 ARG 108 -23.722 -4.083 -0.065 1.00 1.00 H +ATOM 1663 HG2 ARG 108 -24.971 -5.352 -1.611 1.00 1.00 H +ATOM 1664 HG3 ARG 108 -26.225 -4.604 -0.643 1.00 1.00 H +ATOM 1665 HD2 ARG 108 -25.683 -2.707 -2.675 1.00 1.00 H +ATOM 1666 HD3 ARG 108 -25.629 -4.253 -3.499 1.00 1.00 H +ATOM 1667 HE ARG 108 -27.964 -3.274 -1.888 1.00 1.00 H +ATOM 1668 HH11 ARG 108 -26.622 -5.298 -4.435 1.00 1.00 H +ATOM 1669 HH12 ARG 108 -28.167 -5.853 -4.985 1.00 1.00 H +ATOM 1670 HH21 ARG 108 -30.004 -4.007 -2.613 1.00 1.00 H +ATOM 1671 HH22 ARG 108 -30.105 -5.114 -3.940 1.00 1.00 H +ATOM 1672 N ASP 109 -25.032 -2.405 2.540 1.00 1.00 N +ATOM 1673 CA ASP 109 -24.449 -2.284 3.866 1.00 1.00 C +ATOM 1674 C ASP 109 -25.535 -2.515 4.917 1.00 1.00 C +ATOM 1675 O ASP 109 -25.194 -3.106 5.965 1.00 1.00 O +ATOM 1681 H ASP 109 -26.007 -2.620 2.525 1.00 1.00 H +ATOM 1682 HA ASP 109 -23.664 -3.040 3.903 1.00 1.00 H +ATOM 1676 CB ASP 109 -23.866 -0.887 4.086 1.00 1.00 C +ATOM 1677 CG ASP 109 -24.880 0.178 4.508 1.00 1.00 C +ATOM 1678 OD1 ASP 109 -25.504 0.837 3.662 1.00 1.00 O +ATOM 1679 OD2 ASP 109 -25.022 0.322 5.784 1.00 1.00 O +ATOM 1683 HB2 ASP 109 -23.090 -0.950 4.848 1.00 1.00 H +ATOM 1684 HB3 ASP 109 -23.383 -0.561 3.165 1.00 1.00 H +ATOM 1680 OXT ASP 109 -26.687 -2.128 4.722 1.00 1.00 O +TER +END diff --git a/documentation.Doxyfile b/documentation.Doxyfile new file mode 100644 index 0000000..589cb5c --- /dev/null +++ b/documentation.Doxyfile @@ -0,0 +1,2303 @@ +# Doxyfile 1.8.6 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project. +# +# All text after a double hash (##) is considered a comment and is placed in +# front of the TAG it is preceding. +# +# All text after a single hash (#) is considered a comment and will be ignored. +# The format is: +# TAG = value [value, ...] +# For lists, items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (\" \"). + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all text +# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv +# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv +# for the list of possible encodings. +# The default value is: UTF-8. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by +# double-quotes, unless you are using Doxywizard) that should identify the +# project for which the documentation is generated. This name is used in the +# title of most generated pages and in a few other places. +# The default value is: My Project. + +PROJECT_NAME = documentation Mobi + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. This +# could be handy for archiving the generated documentation or if some version +# control system is used. + +PROJECT_NUMBER = + +# Using the PROJECT_BRIEF tag one can provide an optional one line description +# for a project that appears at the top of each page and should give viewer a +# quick idea about the purpose of the project. Keep the description short. + +PROJECT_BRIEF = + +# With the PROJECT_LOGO tag one can specify an logo or icon that is included in +# the documentation. The maximum height of the logo should not exceed 55 pixels +# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo +# to the output directory. + +PROJECT_LOGO = + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path +# into which the generated documentation will be written. If a relative path is +# entered, it will be relative to the location where doxygen was started. If +# left blank the current directory will be used. + +OUTPUT_DIRECTORY = + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub- +# directories (in 2 levels) under the output directory of each output format and +# will distribute the generated files over these directories. Enabling this +# option can be useful when feeding doxygen a huge amount of source files, where +# putting all generated files in the same directory would otherwise causes +# performance problems for the file system. +# The default value is: NO. + +CREATE_SUBDIRS = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, +# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), +# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, +# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), +# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, +# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, +# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, +# Ukrainian and Vietnamese. +# The default value is: English. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES doxygen will include brief member +# descriptions after the members that are listed in the file and class +# documentation (similar to Javadoc). Set to NO to disable this. +# The default value is: YES. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES doxygen will prepend the brief +# description of a member or function before the detailed description +# +# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. +# The default value is: YES. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator that is +# used to form the text in various listings. Each string in this list, if found +# as the leading text of the brief description, will be stripped from the text +# and the result, after processing the whole list, is used as the annotated +# text. Otherwise, the brief description is used as-is. If left blank, the +# following values are used ($name is automatically replaced with the name of +# the entity):The $name class, The $name widget, The $name file, is, provides, +# specifies, contains, represents, a, an and the. + +ABBREVIATE_BRIEF = + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# doxygen will generate a detailed section even if there is only a brief +# description. +# The default value is: NO. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. +# The default value is: NO. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES doxygen will prepend the full path +# before files name in the file list and in the header files. If set to NO the +# shortest path that makes the file name unique will be used +# The default value is: YES. + +FULL_PATH_NAMES = YES + +# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. +# Stripping is only done if one of the specified strings matches the left-hand +# part of the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the path to +# strip. +# +# Note that you can specify absolute paths here, but also relative paths, which +# will be relative from the directory where doxygen is started. +# This tag requires that the tag FULL_PATH_NAMES is set to YES. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the +# path mentioned in the documentation of a class, which tells the reader which +# header file to include in order to use a class. If left blank only the name of +# the header file containing the class definition is used. Otherwise one should +# specify the list of include paths that are normally passed to the compiler +# using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but +# less readable) file names. This can be useful is your file systems doesn't +# support long names like on DOS, Mac, or CD-ROM. +# The default value is: NO. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the +# first line (until the first dot) of a Javadoc-style comment as the brief +# description. If set to NO, the Javadoc-style will behave just like regular Qt- +# style comments (thus requiring an explicit @brief command for a brief +# description.) +# The default value is: NO. + +JAVADOC_AUTOBRIEF = NO + +# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first +# line (until the first dot) of a Qt-style comment as the brief description. If +# set to NO, the Qt-style will behave just like regular Qt-style comments (thus +# requiring an explicit \brief command for a brief description.) +# The default value is: NO. + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a +# multi-line C++ special comment block (i.e. a block of //! or /// comments) as +# a brief description. This used to be the default behavior. The new default is +# to treat a multi-line C++ comment block as a detailed description. Set this +# tag to YES if you prefer the old behavior instead. +# +# Note that setting this tag to YES also means that rational rose comments are +# not recognized any more. +# The default value is: NO. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the +# documentation from any documented member that it re-implements. +# The default value is: YES. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce a +# new page for each member. If set to NO, the documentation of a member will be +# part of the file/class/namespace that contains it. +# The default value is: NO. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen +# uses this value to replace tabs by spaces in code fragments. +# Minimum value: 1, maximum value: 16, default value: 4. + +TAB_SIZE = 4 + +# This tag can be used to specify a number of aliases that act as commands in +# the documentation. An alias has the form: +# name=value +# For example adding +# "sideeffect=@par Side Effects:\n" +# will allow you to put the command \sideeffect (or @sideeffect) in the +# documentation, which will result in a user-defined paragraph with heading +# "Side Effects:". You can put \n's in the value part of an alias to insert +# newlines. + +ALIASES = + +# This tag can be used to specify a number of word-keyword mappings (TCL only). +# A mapping has the form "name=value". For example adding "class=itcl::class" +# will allow you to use the command class in the itcl::class meaning. + +TCL_SUBST = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources +# only. Doxygen will then generate output that is more tailored for C. For +# instance, some of the names that are used will be different. The list of all +# members will be omitted, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or +# Python sources only. Doxygen will then generate output that is more tailored +# for that language. For instance, namespaces will be presented as packages, +# qualified scopes will look different, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources. Doxygen will then generate output that is tailored for Fortran. +# The default value is: NO. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for VHDL. +# The default value is: NO. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it +# parses. With this tag you can assign which parser to use for a given +# extension. Doxygen has a built-in mapping, but you can override or extend it +# using this tag. The format is ext=language, where ext is a file extension, and +# language is one of the parsers supported by doxygen: IDL, Java, Javascript, +# C#, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL. For instance to make +# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C +# (default is Fortran), use: inc=Fortran f=C. +# +# Note For files without extension you can use no_extension as a placeholder. +# +# Note that for custom extensions you also need to set FILE_PATTERNS otherwise +# the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments +# according to the Markdown format, which allows for more readable +# documentation. See http://daringfireball.net/projects/markdown/ for details. +# The output of markdown processing is further processed by doxygen, so you can +# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in +# case of backward compatibilities issues. +# The default value is: YES. + +MARKDOWN_SUPPORT = YES + +# When enabled doxygen tries to link words that correspond to documented +# classes, or namespaces to their corresponding documentation. Such a link can +# be prevented in individual cases by by putting a % sign in front of the word +# or globally by setting AUTOLINK_SUPPORT to NO. +# The default value is: YES. + +AUTOLINK_SUPPORT = YES + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should set this +# tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); +# versus func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. +# The default value is: NO. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. +# The default value is: NO. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: +# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen +# will parse them like normal C++ but will assume all classes use public instead +# of private inheritance when no explicit protection keyword is present. +# The default value is: NO. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate +# getter and setter methods for a property. Setting this option to YES will make +# doxygen to replace the get and set methods by a property in the documentation. +# This will only work if the methods are indeed getting or setting a simple +# type. If this is not the case, or you want to show the methods anyway, you +# should set this option to NO. +# The default value is: YES. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. +# The default value is: NO. + +DISTRIBUTE_GROUP_DOC = NO + +# Set the SUBGROUPING tag to YES to allow class member groups of the same type +# (for instance a group of public functions) to be put as a subgroup of that +# type (e.g. under the Public Functions section). Set it to NO to prevent +# subgrouping. Alternatively, this can be done per class using the +# \nosubgrouping command. +# The default value is: YES. + +SUBGROUPING = YES + +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions +# are shown inside the group in which they are included (e.g. using \ingroup) +# instead of on a separate page (for HTML and Man pages) or section (for LaTeX +# and RTF). +# +# Note that this feature does not work in combination with +# SEPARATE_MEMBER_PAGES. +# The default value is: NO. + +INLINE_GROUPED_CLASSES = NO + +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions +# with only public data fields or simple typedef fields will be shown inline in +# the documentation of the scope in which they are defined (i.e. file, +# namespace, or group documentation), provided this scope is documented. If set +# to NO, structs, classes, and unions are shown on a separate page (for HTML and +# Man pages) or section (for LaTeX and RTF). +# The default value is: NO. + +INLINE_SIMPLE_STRUCTS = NO + +# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or +# enum is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically be +# useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. +# The default value is: NO. + +TYPEDEF_HIDES_STRUCT = NO + +# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This +# cache is used to resolve symbols given their name and scope. Since this can be +# an expensive process and often the same symbol appears multiple times in the +# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small +# doxygen will become slower. If the cache is too large, memory is wasted. The +# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range +# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 +# symbols. At the end of a run doxygen will report the cache usage and suggest +# the optimal cache size from a speed point of view. +# Minimum value: 0, maximum value: 9, default value: 0. + +LOOKUP_CACHE_SIZE = 0 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. Private +# class members and static file members will be hidden unless the +# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. +# Note: This will also disable the warnings about undocumented members that are +# normally produced when WARNINGS is set to YES. +# The default value is: NO. + +EXTRACT_ALL = NO + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class will +# be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal +# scope will be included in the documentation. +# The default value is: NO. + +EXTRACT_PACKAGE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file will be +# included in the documentation. +# The default value is: NO. + +EXTRACT_STATIC = NO + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) defined +# locally in source files will be included in the documentation. If set to NO +# only classes defined in header files are included. Does not have any effect +# for Java sources. +# The default value is: YES. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. When set to YES local methods, +# which are defined in the implementation section but not in the interface are +# included in the documentation. If set to NO only methods in the interface are +# included. +# The default value is: NO. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base name of +# the file that contains the anonymous namespace. By default anonymous namespace +# are hidden. +# The default value is: NO. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all +# undocumented members inside documented classes or files. If set to NO these +# members will be included in the various overviews, but no documentation +# section is generated. This option has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. If set +# to NO these classes will be included in the various overviews. This option has +# no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend +# (class|struct|union) declarations. If set to NO these declarations will be +# included in the documentation. +# The default value is: NO. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any +# documentation blocks found inside the body of a function. If set to NO these +# blocks will be appended to the function's detailed documentation block. +# The default value is: NO. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation that is typed after a +# \internal command is included. If the tag is set to NO then the documentation +# will be excluded. Set it to YES to include the internal documentation. +# The default value is: NO. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file +# names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. +# The default value is: system dependent. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with +# their full class and namespace scopes in the documentation. If set to YES the +# scope will be hidden. +# The default value is: NO. + +HIDE_SCOPE_NAMES = NO + +# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of +# the files that are included by a file in the documentation of that file. +# The default value is: YES. + +SHOW_INCLUDE_FILES = YES + +# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each +# grouped member an include statement to the documentation, telling the reader +# which file to include in order to use the member. +# The default value is: NO. + +SHOW_GROUPED_MEMB_INC = NO + +# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include +# files with double quotes in the documentation rather than with sharp brackets. +# The default value is: NO. + +FORCE_LOCAL_INCLUDES = NO + +# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the +# documentation for inline members. +# The default value is: YES. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the +# (detailed) documentation of file and class members alphabetically by member +# name. If set to NO the members will appear in declaration order. +# The default value is: YES. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief +# descriptions of file, namespace and class members alphabetically by member +# name. If set to NO the members will appear in declaration order. Note that +# this will also influence the order of the classes in the class list. +# The default value is: NO. + +SORT_BRIEF_DOCS = NO + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the +# (brief and detailed) documentation of class members so that constructors and +# destructors are listed first. If set to NO the constructors will appear in the +# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. +# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief +# member documentation. +# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting +# detailed member documentation. +# The default value is: NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy +# of group names into alphabetical order. If set to NO the group names will +# appear in their defined order. +# The default value is: NO. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by +# fully-qualified names, including namespaces. If set to NO, the class list will +# be sorted only by class name, not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the alphabetical +# list. +# The default value is: NO. + +SORT_BY_SCOPE_NAME = NO + +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper +# type resolution of all parameters of a function it will reject a match between +# the prototype and the implementation of a member function even if there is +# only one candidate or it is obvious which candidate to choose by doing a +# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still +# accept a match between prototype and implementation in such cases. +# The default value is: NO. + +STRICT_PROTO_MATCHING = NO + +# The GENERATE_TODOLIST tag can be used to enable ( YES) or disable ( NO) the +# todo list. This list is created by putting \todo commands in the +# documentation. +# The default value is: YES. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable ( YES) or disable ( NO) the +# test list. This list is created by putting \test commands in the +# documentation. +# The default value is: YES. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable ( YES) or disable ( NO) the bug +# list. This list is created by putting \bug commands in the documentation. +# The default value is: YES. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable ( YES) or disable ( NO) +# the deprecated list. This list is created by putting \deprecated commands in +# the documentation. +# The default value is: YES. + +GENERATE_DEPRECATEDLIST = YES + +# The ENABLED_SECTIONS tag can be used to enable conditional documentation +# sections, marked by \if ... \endif and \cond +# ... \endcond blocks. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the +# initial value of a variable or macro / define can have for it to appear in the +# documentation. If the initializer consists of more lines than specified here +# it will be hidden. Use a value of 0 to hide initializers completely. The +# appearance of the value of individual variables and macros / defines can be +# controlled using \showinitializer or \hideinitializer command in the +# documentation regardless of this setting. +# Minimum value: 0, maximum value: 10000, default value: 30. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at +# the bottom of the documentation of classes and structs. If set to YES the list +# will mention the files that were used to generate the documentation. +# The default value is: YES. + +SHOW_USED_FILES = YES + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This +# will remove the Files entry from the Quick Index and from the Folder Tree View +# (if specified). +# The default value is: YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces +# page. This will remove the Namespaces entry from the Quick Index and from the +# Folder Tree View (if specified). +# The default value is: YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command command input-file, where command is the value of the +# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided +# by doxygen. Whatever the program writes to standard output is used as the file +# version. For an example see the documentation. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed +# by doxygen. The layout file controls the global structure of the generated +# output files in an output format independent way. To create the layout file +# that represents doxygen's defaults, run doxygen with the -l option. You can +# optionally specify a file name after the option, if omitted DoxygenLayout.xml +# will be used as the name of the layout file. +# +# Note that if you run doxygen from a directory containing a file called +# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE +# tag is left empty. + +LAYOUT_FILE = + +# The CITE_BIB_FILES tag can be used to specify one or more bib files containing +# the reference definitions. This must be a list of .bib files. The .bib +# extension is automatically appended if omitted. This requires the bibtex tool +# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info. +# For LaTeX the style of the bibliography can be controlled using +# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the +# search path. Do not use file names with spaces, bibtex cannot handle them. See +# also \cite for info how to create references. + +CITE_BIB_FILES = + +#--------------------------------------------------------------------------- +# Configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated to +# standard output by doxygen. If QUIET is set to YES this implies that the +# messages are off. +# The default value is: NO. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated to standard error ( stderr) by doxygen. If WARNINGS is set to YES +# this implies that the warnings are on. +# +# Tip: Turn warnings on while writing the documentation. +# The default value is: YES. + +WARNINGS = YES + +# If the WARN_IF_UNDOCUMENTED tag is set to YES, then doxygen will generate +# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag +# will automatically be disabled. +# The default value is: YES. + +WARN_IF_UNDOCUMENTED = YES + +# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some parameters +# in a documented function, or documenting parameters that don't exist or using +# markup commands wrongly. +# The default value is: YES. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that +# are documented, but have no documentation for their parameters or return +# value. If set to NO doxygen will only warn about wrong or incomplete parameter +# documentation, but not about the absence of documentation. +# The default value is: NO. + +WARN_NO_PARAMDOC = NO + +# The WARN_FORMAT tag determines the format of the warning messages that doxygen +# can produce. The string should contain the $file, $line, and $text tags, which +# will be replaced by the file and line number from which the warning originated +# and the warning text. Optionally the format may contain $version, which will +# be replaced by the version of the file (if it could be obtained via +# FILE_VERSION_FILTER) +# The default value is: $file:$line: $text. + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning and error +# messages should be written. If left blank the output is written to standard +# error (stderr). + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# Configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag is used to specify the files and/or directories that contain +# documented source files. You may enter file names like myfile.cpp or +# directories like /usr/src/myproject. Separate the files or directories with +# spaces. +# Note: If this tag is empty the current directory is searched. + +INPUT = . + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses +# libiconv (or the iconv built into libc) for the transcoding. See the libiconv +# documentation (see: http://www.gnu.org/software/libiconv) for the list of +# possible encodings. +# The default value is: UTF-8. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and +# *.h) to filter out the source-files in the directories. If left blank the +# following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii, +# *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, +# *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, +# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf, +# *.qsf, *.as and *.js. + +FILE_PATTERNS = + +# The RECURSIVE tag can be used to specify whether or not subdirectories should +# be searched for input files as well. +# The default value is: NO. + +RECURSIVE = YES + +# The EXCLUDE tag can be used to specify files and/or directories that should be +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. +# +# Note that relative paths are relative to the directory from which doxygen is +# run. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or +# directories that are symbolic links (a Unix file system feature) are excluded +# from the input. +# The default value is: NO. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories use the pattern */test/* + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or directories +# that contain example code fragments that are included (see the \include +# command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and +# *.h) to filter out the source-files in the directories. If left blank all +# files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude commands +# irrespective of the value of the RECURSIVE tag. +# The default value is: NO. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or directories +# that contain images that are to be included in the documentation (see the +# \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command: +# +# +# +# where is the value of the INPUT_FILTER tag, and is the +# name of an input file. Doxygen will then use the output that the filter +# program writes to standard output. If FILTER_PATTERNS is specified, this tag +# will be ignored. +# +# Note that the filter must not add or remove lines; it is applied before the +# code is scanned, but not when the output code is generated. If lines are added +# or removed, the anchors will not be placed correctly. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: pattern=filter +# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how +# filters are used. If the FILTER_PATTERNS tag is empty or if none of the +# patterns match the file name, INPUT_FILTER is applied. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER ) will also be used to filter the input files that are used for +# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). +# The default value is: NO. + +FILTER_SOURCE_FILES = NO + +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and +# it is also possible to disable source filtering for a specific pattern using +# *.ext= (so without naming a filter). +# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. + +FILTER_SOURCE_PATTERNS = + +# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that +# is part of the input, its contents will be placed on the main page +# (index.html). This can be useful if you have a project on for instance GitHub +# and want to reuse the introduction page also for the doxygen output. + +USE_MDFILE_AS_MAINPAGE = + +#--------------------------------------------------------------------------- +# Configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will be +# generated. Documented entities will be cross-referenced with these sources. +# +# Note: To get rid of all source code in the generated output, make sure that +# also VERBATIM_HEADERS is set to NO. +# The default value is: NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body of functions, +# classes and enums directly into the documentation. +# The default value is: NO. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any +# special comment blocks from generated source code fragments. Normal C, C++ and +# Fortran comments will always remain visible. +# The default value is: YES. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES then for each documented +# function all documented functions referencing it will be listed. +# The default value is: NO. + +REFERENCED_BY_RELATION = NO + +# If the REFERENCES_RELATION tag is set to YES then for each documented function +# all documented entities called/used by that function will be listed. +# The default value is: NO. + +REFERENCES_RELATION = NO + +# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set +# to YES, then the hyperlinks from functions in REFERENCES_RELATION and +# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will +# link to the documentation. +# The default value is: YES. + +REFERENCES_LINK_SOURCE = YES + +# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the +# source code will show a tooltip with additional information such as prototype, +# brief description and links to the definition and documentation. Since this +# will make the HTML file larger and loading of large files a bit slower, you +# can opt to disable this feature. +# The default value is: YES. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +SOURCE_TOOLTIPS = YES + +# If the USE_HTAGS tag is set to YES then the references to source code will +# point to the HTML generated by the htags(1) tool instead of doxygen built-in +# source browser. The htags tool is part of GNU's global source tagging system +# (see http://www.gnu.org/software/global/global.html). You will need version +# 4.8.6 or higher. +# +# To use it do the following: +# - Install the latest version of global +# - Enable SOURCE_BROWSER and USE_HTAGS in the config file +# - Make sure the INPUT points to the root of the source tree +# - Run doxygen as normal +# +# Doxygen will invoke htags (and that will in turn invoke gtags), so these +# tools must be available from the command line (i.e. in the search path). +# +# The result: instead of the source browser generated by doxygen, the links to +# source code will now point to the output of htags. +# The default value is: NO. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a +# verbatim copy of the header file for each class for which an include is +# specified. Set to NO to disable this. +# See also: Section \class. +# The default value is: YES. + +VERBATIM_HEADERS = YES + +#--------------------------------------------------------------------------- +# Configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all +# compounds will be generated. Enable this if the project contains a lot of +# classes, structs, unions or interfaces. +# The default value is: YES. + +ALPHABETICAL_INDEX = YES + +# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in +# which the alphabetical index list will be split. +# Minimum value: 1, maximum value: 20, default value: 5. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all classes will +# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag +# can be used to specify a prefix (or a list of prefixes) that should be ignored +# while generating the index headers. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES doxygen will generate HTML output +# The default value is: YES. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each +# generated HTML page (for example: .htm, .php, .asp). +# The default value is: .html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a user-defined HTML header file for +# each generated HTML page. If the tag is left blank doxygen will generate a +# standard header. +# +# To get valid HTML the header file that includes any scripts and style sheets +# that doxygen needs, which is dependent on the configuration options used (e.g. +# the setting GENERATE_TREEVIEW). It is highly recommended to start with a +# default header using +# doxygen -w html new_header.html new_footer.html new_stylesheet.css +# YourConfigFile +# and then modify the file new_header.html. See also section "Doxygen usage" +# for information on how to generate the default header that doxygen normally +# uses. +# Note: The header is subject to change so you typically have to regenerate the +# default header when upgrading to a newer version of doxygen. For a description +# of the possible markers and block names see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each +# generated HTML page. If the tag is left blank doxygen will generate a standard +# footer. See HTML_HEADER for more information on how to generate a default +# footer and what special commands can be used inside the footer. See also +# section "Doxygen usage" for information on how to generate the default footer +# that doxygen normally uses. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style +# sheet that is used by each HTML page. It can be used to fine-tune the look of +# the HTML output. If left blank doxygen will generate a default style sheet. +# See also section "Doxygen usage" for information on how to generate the style +# sheet that doxygen normally uses. +# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as +# it is more robust and this tag (HTML_STYLESHEET) will in the future become +# obsolete. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_STYLESHEET = + +# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user- +# defined cascading style sheet that is included after the standard style sheets +# created by doxygen. Using this option one can overrule certain style aspects. +# This is preferred over using HTML_STYLESHEET since it does not replace the +# standard style sheet and is therefor more robust against future updates. +# Doxygen will copy the style sheet file to the output directory. For an example +# see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_STYLESHEET = + +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the HTML output directory. Note +# that these files will be copied to the base HTML output directory. Use the +# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these +# files. In the HTML_STYLESHEET file, use the file name only. Also note that the +# files will be copied as-is; there are no commands or markers available. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_FILES = + +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen +# will adjust the colors in the stylesheet and background images according to +# this color. Hue is specified as an angle on a colorwheel, see +# http://en.wikipedia.org/wiki/Hue for more information. For instance the value +# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 +# purple, and 360 is red again. +# Minimum value: 0, maximum value: 359, default value: 220. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_HUE = 220 + +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors +# in the HTML output. For a value of 0 the output will use grayscales only. A +# value of 255 will produce the most vivid colors. +# Minimum value: 0, maximum value: 255, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_SAT = 100 + +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the +# luminance component of the colors in the HTML output. Values below 100 +# gradually make the output lighter, whereas values above 100 make the output +# darker. The value divided by 100 is the actual gamma applied, so 80 represents +# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not +# change the gamma. +# Minimum value: 40, maximum value: 240, default value: 80. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_GAMMA = 80 + +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting this +# to NO can help when comparing the output of multiple runs. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_TIMESTAMP = NO + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_SECTIONS = NO + +# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries +# shown in the various tree structured indices initially; the user can expand +# and collapse entries dynamically later on. Doxygen will expand the tree to +# such a level that at most the specified number of entries are visible (unless +# a fully collapsed tree already exceeds this amount). So setting the number of +# entries 1 will produce a full collapsed tree by default. 0 is a special value +# representing an infinite number of entries and will result in a full expanded +# tree by default. +# Minimum value: 0, maximum value: 9999, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_INDEX_NUM_ENTRIES = 100 + +# If the GENERATE_DOCSET tag is set to YES, additional index files will be +# generated that can be used as input for Apple's Xcode 3 integrated development +# environment (see: http://developer.apple.com/tools/xcode/), introduced with +# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a +# Makefile in the HTML output directory. Running make will produce the docset in +# that directory and running make install will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at +# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html +# for more information. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_DOCSET = NO + +# This tag determines the name of the docset feed. A documentation feed provides +# an umbrella under which multiple documentation sets from a single provider +# (such as a company or product suite) can be grouped. +# The default value is: Doxygen generated docs. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# This tag specifies a string that should uniquely identify the documentation +# set bundle. This should be a reverse domain-name style string, e.g. +# com.mycompany.MyDocSet. Doxygen will append .docset to the name. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify +# the documentation publisher. This should be a reverse domain-name style +# string, e.g. com.mycompany.MyDocSet.documentation. +# The default value is: org.doxygen.Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_ID = org.doxygen.Publisher + +# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. +# The default value is: Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_NAME = Publisher + +# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three +# additional HTML index files: index.hhp, index.hhc, and index.hhk. The +# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop +# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on +# Windows. +# +# The HTML Help Workshop contains a compiler that can convert all HTML output +# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML +# files are now used as the Windows 98 help format, and will replace the old +# Windows help format (.hlp) on all Windows platforms in the future. Compressed +# HTML files also contain an index, a table of contents, and you can search for +# words in the documentation. The HTML workshop also contains a viewer for +# compressed HTML files. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_HTMLHELP = NO + +# The CHM_FILE tag can be used to specify the file name of the resulting .chm +# file. You can add a path in front of the file if the result should not be +# written to the html output directory. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_FILE = + +# The HHC_LOCATION tag can be used to specify the location (absolute path +# including file name) of the HTML help compiler ( hhc.exe). If non-empty +# doxygen will try to run the HTML help compiler on the generated index.hhp. +# The file has to be specified with full path. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +HHC_LOCATION = + +# The GENERATE_CHI flag controls if a separate .chi index file is generated ( +# YES) or that it should be included in the master .chm file ( NO). +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +GENERATE_CHI = NO + +# The CHM_INDEX_ENCODING is used to encode HtmlHelp index ( hhk), content ( hhc) +# and project file content. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_INDEX_ENCODING = + +# The BINARY_TOC flag controls whether a binary table of contents is generated ( +# YES) or a normal table of contents ( NO) in the .chm file. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members to +# the table of contents of the HTML help documentation and to the tree view. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +TOC_EXPAND = NO + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that +# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help +# (.qch) of the generated HTML documentation. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify +# the file name of the resulting .qch file. The path specified is relative to +# the HTML output folder. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help +# Project output. For more information please see Qt Help Project / Namespace +# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace). +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt +# Help Project output. For more information please see Qt Help Project / Virtual +# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual- +# folders). +# The default value is: doc. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_VIRTUAL_FOLDER = doc + +# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom +# filter to add. For more information please see Qt Help Project / Custom +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the +# custom filter to add. For more information please see Qt Help Project / Custom +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this +# project's filter section matches. Qt Help Project / Filter Attributes (see: +# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_SECT_FILTER_ATTRS = + +# The QHG_LOCATION tag can be used to specify the location of Qt's +# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the +# generated .qhp file. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be +# generated, together with the HTML files, they form an Eclipse help plugin. To +# install this plugin and make it available under the help contents menu in +# Eclipse, the contents of the directory containing the HTML and XML files needs +# to be copied into the plugins directory of eclipse. The name of the directory +# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. +# After copying Eclipse needs to be restarted before the help appears. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the Eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have this +# name. Each documentation set should have its own identifier. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. + +ECLIPSE_DOC_ID = org.doxygen.Project + +# If you want full control over the layout of the generated HTML pages it might +# be necessary to disable the index and replace it with your own. The +# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top +# of each HTML page. A value of NO enables the index and the value YES disables +# it. Since the tabs in the index contain the same information as the navigation +# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +DISABLE_INDEX = NO + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. If the tag +# value is set to YES, a side panel will be generated containing a tree-like +# index structure (just like the one that is generated for HTML Help). For this +# to work a browser that supports JavaScript, DHTML, CSS and frames is required +# (i.e. any modern browser). Windows users are probably better off using the +# HTML help feature. Via custom stylesheets (see HTML_EXTRA_STYLESHEET) one can +# further fine-tune the look of the index. As an example, the default style +# sheet generated by doxygen has an example that shows how to put an image at +# the root of the tree instead of the PROJECT_NAME. Since the tree basically has +# the same information as the tab index, you could consider setting +# DISABLE_INDEX to YES when enabling this option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_TREEVIEW = YES + +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that +# doxygen will group on one line in the generated HTML documentation. +# +# Note that a value of 0 will completely suppress the enum values from appearing +# in the overview section. +# Minimum value: 0, maximum value: 20, default value: 4. +# This tag requires that the tag GENERATE_HTML is set to YES. + +ENUM_VALUES_PER_LINE = 4 + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used +# to set the initial width (in pixels) of the frame in which the tree is shown. +# Minimum value: 0, maximum value: 1500, default value: 250. +# This tag requires that the tag GENERATE_HTML is set to YES. + +TREEVIEW_WIDTH = 250 + +# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open links to +# external symbols imported via tag files in a separate window. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +EXT_LINKS_IN_WINDOW = NO + +# Use this tag to change the font size of LaTeX formulas included as images in +# the HTML documentation. When you change the font size after a successful +# doxygen run you need to manually remove any form_*.png images from the HTML +# output directory to force them to be regenerated. +# Minimum value: 8, maximum value: 50, default value: 10. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_FONTSIZE = 10 + +# Use the FORMULA_TRANPARENT tag to determine whether or not the images +# generated for formulas are transparent PNGs. Transparent PNGs are not +# supported properly for IE 6.0, but are supported on all modern browsers. +# +# Note that when changing this option you need to delete any form_*.png files in +# the HTML output directory before the changes have effect. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_TRANSPARENT = YES + +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see +# http://www.mathjax.org) which uses client side Javascript for the rendering +# instead of using prerendered bitmaps. Use this if you do not have LaTeX +# installed or if you want to formulas look prettier in the HTML output. When +# enabled you may also need to install MathJax separately and configure the path +# to it using the MATHJAX_RELPATH option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +USE_MATHJAX = NO + +# When MathJax is enabled you can set the default output format to be used for +# the MathJax output. See the MathJax site (see: +# http://docs.mathjax.org/en/latest/output.html) for more details. +# Possible values are: HTML-CSS (which is slower, but has the best +# compatibility), NativeMML (i.e. MathML) and SVG. +# The default value is: HTML-CSS. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_FORMAT = HTML-CSS + +# When MathJax is enabled you need to specify the location relative to the HTML +# output directory using the MATHJAX_RELPATH option. The destination directory +# should contain the MathJax.js script. For instance, if the mathjax directory +# is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax +# Content Delivery Network so you can quickly see the result without installing +# MathJax. However, it is strongly recommended to install a local copy of +# MathJax from http://www.mathjax.org before deployment. +# The default value is: http://cdn.mathjax.org/mathjax/latest. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest + +# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax +# extension names that should be enabled during MathJax rendering. For example +# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_EXTENSIONS = + +# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces +# of code that will be used on startup of the MathJax code. See the MathJax site +# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an +# example see the documentation. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_CODEFILE = + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box for +# the HTML output. The underlying search engine uses javascript and DHTML and +# should work on any modern browser. Note that when using HTML help +# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) +# there is already a search function so this one should typically be disabled. +# For large projects the javascript based search engine can be slow, then +# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to +# search using the keyboard; to jump to the search box use + S +# (what the is depends on the OS and browser, but it is typically +# , /

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

)%%9~C;T;L5r{p9cW?{=vRcb9OA1#w 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

ZfxE!9QMH1Qq(8p+4wvkiM)L0<+%<2E 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 Date: Sat, 11 Jul 2015 13:02:49 +0200 Subject: [PATCH 09/61] Sistemato problema di ritorno proteina traslata --- .settings/language.settings.xml | 2 +- Mobi/APPS/mobi.cc | 35 +++- Mobi/APPS/mobi.o | Bin 20704 -> 29416 bytes Mobi/Sources/ProteinModels.cc | 8 +- Mobi/Sources/ProteinModels.h | 1 + Mobi/Sources/ProteinModels.o | Bin 49616 -> 49968 bytes Mobi/Sources/TmScore.cc | 273 ++++++++++++++++++++++---------- Mobi/Sources/TmScore.h | 5 +- Mobi/Sources/TmScore.o | Bin 34288 -> 34640 bytes 9 files changed, 226 insertions(+), 98 deletions(-) diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml index 9a57648..7596dc4 100644 --- a/.settings/language.settings.xml +++ b/.settings/language.settings.xml @@ -5,7 +5,7 @@ - + diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 205bbf8..def3bda 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -31,6 +31,8 @@ #include #include #include + #include + using namespace Victor; @@ -150,14 +152,31 @@ ///////////////////////////////////////////////////////////////////// TmScore tm("./Mobi/data/TMscore", outputFile, v); -// -// Spacer sp; -// //for (unsigned int i=0; igetSpacer(d))); + ps.endFile(); + pippo.close(); + } + // tm.TmImpose(outputFile + (itosDEF(0)), outputFile + (itosDEF(1))); // sp=*(tm.spacerFromTMOutput(tm.outputTmScore + "_atm")); // prot.models.push_back(sp); // cout << prot.models.size()<< endl; diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index 004d4d058088815f205b39d8009958e4b42b7290..49cac74297caf61ed5c6d334bfcfc8ad6feb7192 100644 GIT binary patch literal 29416 zcmdU24Rlo1wZ6$PHAF}vip2VNp;4pNn1KL+s!bq~NeK{{;17tC$z(!CCo|*B1cJ2{ zo1n&+ik8>fr?u2){i{E;MXM~UQ53YVy0Es@*1lI2~fu%N);RA8KE*fmBCqiCjGu2aQ2<5J@iMLP@X z$WuZ2DU_c|`Dv6_Qhqw+XHfoG%Fm>{it@85ucq8b`E1JPP+mj%T*~KBUQ78ol%GfW zBFG!4yp-}~lrN{eh4Kq14?vE|zxi;$Kk!lJg#D^E@ZbJ{XP?HRsy~jUHM{(SUM%O91shs?`ED)NwNd5DpRy!)}!=HCd!cUW~s^^-sRdyc^3F0Q|yEm_F_b^Tw|o)PvB z*{A9){=p;sp5FZ;m{vR7XJBwbOqCIzfAE?X2-%ERjf8*ji?y=0xY|F2A$l0K^_=7% zTwE!E+5SBqZ1ML!SGH!?6RJ3LQJH`9i}vPsp= zVxt&{&suMq>m#Z5L^@(7dNRqLOck^M-esCykyz3&x{Qk=v2db0VrCNNGSD^CK#f)5 zu(8lsXc~>FR3f#|48_d|mdr#r+>?rQR2lW{iBu*UUsq+!G!n*o}4lpbSYF(BNCsGl^=kpnj%Nx*MWHxu* zXZFO+bfPn}A(V=k;jW08iiRWWBW5%X|Dbc&t_-MB7NjB}um}t>Gm&sS5lgI#hRo&5 zR^r}(X|gGe&KlgEh-ISS_l`&`7B%rRWTrEbbUI`vQ;AF@8V{XmLJKf-rl6N06AXdQ zM>9RqbXZx#c63C^?WUyw=sZq@eXQ{SbXC`Fsi-i{dLVahuwk5Jx8`8vpvzKilG;g>^hg1Q*we}IhyNRm*jhx|&&t<#Wy z$YI}5Z?$r%f3Uw|lQN3>3X*OBHcZ%wEuwszC~p(x`?!p|9Pn(Xx}{*~Ni~$J(%An_ zW-1uA9U`*e$4FLp!-J|vr6+Gfl{=4v59L-dtRMk>t0WBU77ZAcaQv%-;kv_n5IFst z-ze=r4nlv^7i*2u{>LCxOCMXjxb&%m{sC*+aXjv3`=u9g zR#e-uw|Tg9^JyU40jnv3eA_@I4aE+cRa+J4ANY_g@3-pt@eZ?0skTLItuV=+?EuC^E}AOq_cm2TrVFqV}y7h-dw_FQ)~>VAl}ju90o9%=Z({UFW3-8Z42_C>wGl ziU!NSPA_3(my_p3pFn|AmWms0S>j&>QxWL!BEbx}wbEhUu0q1A{x0#P#`y6h&zTq`% z>o2WeyQ}nMYa^7C`uLCFs~m{So75wx{{8Ub&g}P9K1&RGp2C9*cohav<`h(#+})+ypDifvr37YqIK| zEp;b`z5{!z9WX%xQErjIe!@%BPFRB(w7v=L6l4~n#AZXEZbJ}A+sJ4j?_N)%iFSXu zQ@9XW%KmsF4TTSi^0e=OYcart$!Qox4OfGd;WnpLX-(sHyrbF2cH|scz^%OeWhzd##lLQM^Ptk}*d0cGWE0>#!>B*W zW`7nI3UY$g>U6?)Y=Z41KgS6pPm;esR%SkL$K!#K1D53@KY<*0Il;G;_X_I0&rUbi zc<-KWY%Mqoiflz9ROtQdvBpD%Sl(0UeeGD|BUQeAlJ{rF8apO=Z#vev%jAVtyC8OI@&}3)W8~_1Pj0L^5Qv zT_2O*hc>rZ_dPA{`CJ>5w+4Ba_k?4SLEiIi3iDU55L83*R}2;_G+blBGDijCln0QV0-K>gYEiQ2K&%p9(=_-b|{eM z8e|pYuDB-<3A{K|)jv5lkiE@7w!tBf|*n(nn^c>8v`NuXbiMBwFX;YczQgmo5f<_A}Q5;1m%(i!+OL{E||i^ijwU?`OefrFf?xGzLX z9Sg2*ZPF~@jm!Z?wgyHa!X081an?wVF3qON6?Wmc)#g!VMZzD&x+8JezvA#WpDH-~ zodr${UqOC|bOk$8q3#Gc4EG^xKl~>@z3_egC>I%Zgz@=nHPrDr2DNXCT*vQs;a?^A zSdNar#fAUE3Gnl|RoZ{i1o+!r^rK9+n{%E0T`v5WOn{$9SK5zbzF;&Xzh(mb zn_T!WodEw0F8uiX3){`P&i*Yf{B0B9zs-d|Gy(o?F8u8i;J?p>KRf~c?JoQs6X1W` zg+DR@{$UsX&I$0p;KILd0{nYj_`4>+|GEqRRB#hnpQH^>y4ZaQse!i~U)S zZIJLgHmV>pgjDLF@8DeL+^Gw{-=j<&zr*}ITltyAPdW4@sm}JYerNyXnSyCB--nwe zBOUPvU5!Q~xH??=VZ?QZ~n=bS*=LoV^h za|PQu{$d*aWi+9v8_1%PQ~zBWesi4sZ)*6f$H|X+-27iRPX0?Y{4L|;zg5HEHctLm zH2leN@=t-mckBPAaqu(0csxoK)PX~T- zl_WDZ;g?NFZR*oH|15&Cv;R@jU+5VBX+-GM$99ug<59Ms0m`e1f3sr(JLPTH*uRhL zzl|7h{2JkM+W!LZmjF)TO4<$Mar%QE({qEfzDuLOx7*_2I6?hO;9`Epe-8ZU6NmeZ zVbcE>OHB6D>A$x%{5xpkLvv1Y^1sjg4g-dX-|25>{axU9i=Qpj|7y~X{l|A^oc%9{ zI9L65=-*5F@$pHSocb4O_z#ZL{&Ruf&HiB*`>2{Ql?E|6in^mzDZ}R*@DL~vt?QE!0RS%$)moJ=C^pVe=*N(^BAY(0#x&;Z}Is} z9^-mxUJC_I%e;Z%S}5YGL9lt$ z$x#4Q^r#b^8(x*A*G%xUKYv zyPZG~m!oH!;K{q&$$A}|Mb=JU^=%ng@)$Uq@{fq z`(Z8MGsXJDe%Pp?|GL8MeVOI&R=B+{Gk#d%_Gy>#T37;RiG7*zD->?uU10o9h1>fw zt!4(%`RY@KfNNJxlE4 zd|&B&z}@V`?`3ZI4I2DjjrZ=&#k_U)A8-H2BjR{ACUPHsTyKWFuzpYv_-J3FX$`a=@p-Ij5Rr;IpWh zPSnujeIPeE=WFnbH260)_zyJrFEn@|Y?*HM9IwGo)8KP8_<0)qRt^5L27gn7Pl2u7 z&Hghr_-qY+fd&t1@XZ>0hX#LDga2NGp8-b`w|-rq!LQfgPiyc$Yw(#6zixWZ)!=O! z{ALaQOAY>^20sFhTyFLpr@?(1{Bs(-RfBH(Qq&U&u~UU-A&=v zU}Iozuw`ku3V*W!p6dLh?C?Vo=?whHL$YcP2wBp+Vo`l_FqrOX4>kpZs~4mLU5O2T z_%)98N<(vPFc?kXBbiWLU4t*`H2P)-gXgbWz8HV%BNzl+^L%5&TzEb)CIrY!(kHO>m zpthc8tmpOhoTELdujd-aGy3_=6i~W|;Ad#HjPCJZvFV=W*9jZ*DgMzJClm~pg+Be0 z`&wO!Wt^cvTGZPK_S5-!PwQ)SjrN?rmZ@g!C-n1qd4A&~@WIs`v6fL*AB$#rAhW<) zXQK&t>fL22o(r#wgi?*rGCSCmNaK|WWg-SF%dtot)C4j$Vf@V?EcxaIdBF}wu>^U?3RjPG&X+Q;}p4 zeikVeS{IQNzUttzU<2Y5E!0}tGzpEI=(Jwb@0NKF%Llpq=cFW8Yz1iRo3shBHKgGChX4Fw^b zu!HIyST$@Q0QPx%Am*)$Wa?Av6c%l12?x^cYkC@ZCrRhGb_ejs#=xb4v^C1{4c)>%wt(MsBHz!CW)kU!#`9sw1hE<{7FpZc z-PElD86_hX1OP=#VvJ~UKWNp$`$+-l3%pvbqLwES1fw!}obqe%7sAkQZUM>T;_UYV zhyZ$7@p92)Cd-;O>fZQ?PTv#o9Bdu9aHvgaoX)UTh1_uD5p-*FOhqQKwM9o8S|*nv z=#c1B(I0?Ui)i+aIu9~)!4q(-DT95$J93r z*aw2)-ri7qbiL0vAIdQ>JBU4n&UGd*{zrMW%uT*^rgCS@wgr>mi3qsiipa)b7=J!6 zg5M(HHiJrd%PR&K`~rna{1*Xi?^YDn2j8(r`Z!!ne=^ZH=_?6GdX&TTd`A~`chV0M&h+fB z+cfmwa?tag?gupVj|h79EkaLf=$~=WUrhCvHT17K=wG1vJ`Mfv1wHz|j_QA=-07bW z31|N-qB_6t;iR7oe>cH|^w{5nSb=mb;ZFMF1wGn>&z)eZ)X<+T@C`u6aRPs)PzmEO z02kkfk@#gAT++jBRF%-qC|qvxr5qhS|78&6$oNP5FkzmAi|yq5Nlv||Au%K;&VKthL(op_7DWq;|hQ8ixMg&dwos5b={`(YE&;P^`VI|+Bv|Eu+v=abW)VNJiT z)%5EI4gEbDdbmxf66(DQF7{`+1*`G>qQH54k^X9dpC{8THWv3jDPsBGdG2{!WjQB}#sm%y-jw_Bs?q>(lJ8|BdoH)iFCbYi~ zF1G)A1R=5BPOEC%L^;y;!^QOX3S9bgm~fWUMfK+eJ<4J^F9}@kQ*Q`-v!H)R;J62| zoT-j=?|!12Ce}CE-!mQb-y?ebF+ogdBl?8pFA=!x?!xQAC697Pz$MRe|GNX1{$* zIL8C;-}rZVOo(%=V!eoPWRvHp=>i{sHkN;aM$Sw@f1{vZCGbIkS{f`J-+W(lqhd?gteTHz< zi#Y53J>fVmh;#ZMA?K?AvYfvNdR(twB!=T?(L{gVEa*Q&IL8Ce(@H_VMbIyF(Epm` ze_qhb_2B}6%Xp3o{1zeqD*~7Cyj9>*&i#b5{qK-H4-5J}A^&B8-zxAw2wdvrN50T+ z5-;{ziV**rkTYH2TLnH>;QuD@6$0-SctYTken8-o{vLsUUC4P>;L`p#H27aM_|#8< zP)JTcd`95kfOd|<2Es9(Z-a~1w_63h9LKu}=W#5cd40d2|E7??OW^-5@ZShr_7|T^ z$AtFZ4j0>r&x>P1{0_Jn_Z)$!z5ja2o+84L9=|Iw{d9rfDe%(?M?YK!7yF?~(0^Od ze@@`r1nw93cLcsl;Aw%c75H5OPYYc7XA|M*e|g^Ctf9YMgMVLxzbNG6y7ZrLVR~24 z{|D6BpOff|2m1MLfmdko1`VDh9Q}{|;&a-U1pRk~{F@2qID84(Fl`m|G7j$%xIEuJ zF7SJRpZoQSz@`7+5cs`<{(!*cxE~U@9Cv<%6#XX0{piU6Ktf#VJ&|zdxX;qi<8v~Y zoO1jcyhY&hJikidvcIb}c${z^7yka17WjRZY3j3A$dUX0R|GxA;kCqby}+fMn>2F1 zuA#qO(BBWTdECD%=ut23Ntm_^dTHlQL0@T+s?TRN^gk8!QvT01^uKb@Uq?FdIVDUu zzH)sV5xD$b@UD=9=P|yo@qwV1ay}Ngl;gpHg~a2FYa*s233u9aw7{jD;|2Zz@U#C< z5xBgsa)!Wr1pV0>e5t_YJnGQkR|HF-!$;F^vM~1Mvsp;(ec%ZAJf(Bpe4le^*0NDd&4a4(ma^tpewL5AiO6n^Z=8 zmB4w;LHt62S5q1Biv(UP@QVdrC-6%I?icuKfwu^p@3A1nGEwiPM1z_1!@~lXeh3O& z`r&ecn^Z>mZB)ig`XMB6>4$cKOFx7KUPon=-yv}6hls$XA36mt{jg5pCY3Qh=?Jfo z8iCVMS0Sty>FEfjaP}?Y>|1O|s#YuhX$eRU=Z>mBEsxMfuAXGEOPuU pB^<|=&s@mXCg@EBC`ASROa>v}BIsuc{5}U>O>N&7a!wQU{|k1T(18E| literal 20704 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 diff --git a/Mobi/Sources/ProteinModels.cc b/Mobi/Sources/ProteinModels.cc index 2b44f24..db0baf7 100644 --- a/Mobi/Sources/ProteinModels.cc +++ b/Mobi/Sources/ProteinModels.cc @@ -32,7 +32,6 @@ void ProteinModels::load(PdbLoader& pl) { pl.setModel(i); pl.checkModel(); this->Protein::load(pl); - models.push_back(*(this->getSpacer(i-1))); } } @@ -86,7 +85,6 @@ void ProteinModels::loadSameModels(PdbLoader& pl){ pl.setModel(i); //dal pdb loader scelgo il modello da caricare nella proteina pl.checkModel(); this->Protein::load(pl); // creates the Protein object - models.push_back(*(this->getSpacer(i-1))); } cout << "\n" << "Modelli caricati nella proteina" << endl; @@ -132,6 +130,8 @@ void ProteinModels::save(ProteinModels& prot, string outputFile){ string outputFile_1; PdbSaver ps(fout); + if (verbose) + cout << "Salvataggio dei modelli su file" << endl; // Open the proper output stream (file or stdout) for (unsigned int i = 0; i < prot.size(); i++) { @@ -157,6 +157,10 @@ void ProteinModels::save(ProteinModels& prot, string outputFile){ } +void ProteinModels::addModels(Spacer& sp){ + this->models.push_back(sp); + +} vector ProteinModels::getModels() { diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index 61f7023..da6b816 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -66,6 +66,7 @@ class ProteinModels : public Protein{ void save(ProteinModels& prot, string outputFile); vector getModels(); + void addModels(Spacer& sp); // MODIFIERS: private: diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o index dd020b0e778d539d469622507d660a8ed3fb4eb8..4b3d9a199c6f745cb8be611efdd4a4ebd128724e 100644 GIT binary patch delta 12592 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 Zjwo=w)J@V21YgWUehXaR4mW -#include #include #include #include #include #include #include -#include -#include #include using namespace Victor::Mobi; @@ -52,11 +49,10 @@ TmScore::TmScore(string _binary, string output, bool verbose) : TmScore::~TmScore(){} -void TmScore::TmImpose(string modelFile, string nativeFile) { -// double score = -1; -// string score_tmp; +Protein* TmScore::TmImpose(string modelFile, string nativeFile) { + Protein* prot = NULL; //se i file sono accessibili in lettura if (access(modelFile.c_str(), R_OK) == 0 && access(nativeFile.c_str(), R_OK) == 0) { @@ -64,7 +60,8 @@ void TmScore::TmImpose(string modelFile, string nativeFile) { //se l'eseguibile ha i permessi di esecuzione if (access(binary.c_str(), X_OK) == 0) { pid_t pid; - if (this->verbose) cout << "Accesso consentito." <verbose) + cout << "Accesso consentito." << endl; //Pipeing TMS output int pipefd[2]; pipe(pipefd); @@ -74,23 +71,198 @@ void TmScore::TmImpose(string modelFile, string nativeFile) { ERROR("Unable to fork child process", error); } else { if (pid == 0) { - close(pipefd[0]); //close input pipe - if (dup2(pipefd[1], 1)<0) - ERROR("Unable to redirect output TMScore",error); //stdout - if (dup2(pipefd[1], 2)<0) - ERROR("Unable to redirect error output TMScore",error); //stderr - close(pipefd[1]); //close output pipe - if (this->verbose) cout << "Eseguo TMScore" <verbose) + cout << "Eseguo TMScore" << endl; if (execl(binary.c_str(), binary.c_str(), modelFile.c_str(), - nativeFile.c_str(), "-o", outputTmScore.c_str(), NULL)) + nativeFile.c_str(), "-o", outputTmScore.c_str(), + NULL)) ERROR("Unable to exec", error); } else { //Read output from child pipe + + ////////////////////////////////////////////////////////////////////////// int status; + +// ifstream inFile(nativeFile.c_str()); +// ofstream out ((outputTmScore+"11111").c_str()); +// stringstream buffer; +// string line; +// +// if (verbose) { +// cout << "Conversione file native file per renderlo leggibile" << endl; +// } +// bool flag=false; +// +// while (inFile) { +// line = readLine(inFile); +// if (line.substr(0, 6) == "ATOM " && !flag) { +// buffer << "MODEL 1" << endl; +// out << "MODEL 1" << endl; +// buffer << line << endl; +// out << line << endl; +// flag=true; +// } else if (line.substr(0, 6) == "ATOM " && flag) { +// buffer << line << endl; +// out << line << endl; +// } else if (line.substr(0, 3) == "TER") { +// buffer << line << endl; +// buffer << "ENDMDL" << endl; +// out << line << endl; +// out << "ENDMDL" << endl; +// +// break; +// } +// } +// if (verbose) { +// cout << "Fine lettura file nativo" << endl; +// } +// +// buffer.clear(); +// out.close(); +// +// cout << "AAAAAAAAAAAAAAAAAAAAAAAA" << endl; +// +// PdbLoader loader (buffer); +// +// if (!verbose) +// loader.setNoVerbose(); +// +// loader.setModel(1); +// cout << "BBBBBBBBBBBBBBBBBBBBBBBBBB" << endl; +// loader.checkModel(); +// cout << "CCCCCCCCCCCCCCCCCCCCCCCCCCCCc" << endl; +// Protein temp; +// temp.load(loader); +// unsigned int d=0; +// sp[0]=*(temp.getSpacer(d)); + wait(&status); remove(outputTmScore.c_str()); -// char buffer[2048]; + + if (access((outputTmScore + "_atm").c_str(), R_OK) != 0) + ERROR("Cannot read pdb file to fix", exception); + + ifstream inFile((outputTmScore + "_atm").c_str()); + stringstream buffer; + string line; + + if (verbose) { + cout + << "Conversione file rototraslato per renderlo leggibile" + << endl; + } + while (inFile) { + line = readLine(inFile); + if (line.substr(0, 16) == "REMARK TM-score") { + buffer << line << endl; + buffer << "MODEL 1" << endl; + + } else if (line.substr(0, 6) == "ATOM ") { + buffer << line << endl; + } else if (line.substr(0, 3) == "TER") { + buffer << line << endl; + buffer << "ENDMDL" << endl; + break; + } + } + if (verbose) { + cout << "Fine lettura file rototraslato" << endl; + } + + buffer.clear(); + + //Load from memory buffer + PdbLoader pl(buffer); + + if (!verbose) + pl.setNoVerbose(); + + pl.setModel(1); + pl.checkModel(); + + prot = new Protein(); + + pl.loadProtein(*prot); + + + + } + } + } else + ERROR("No access to " + binary + " binary!", exception); + } else + ERROR("No access to pdb files " + modelFile + " or " + nativeFile, + exception); + return prot; +} + +//void TmScore::TMImpose(ProteinModels& prot, unsigned int model, unsigned int native, ProteinModels** imposedModel) { +// +// stringstream sstm; +// sstm << "TMScore between models " << model << " and " << native; +// DEBUG_MSG(sstm.str()); +// +// //Save spacers in pdb files +// std::ofstream fout; +// PdbSaver ps(fout); +// fout.open((tmp + TMTMP_IN1).c_str()); +// ps.saveSpacer(prot.getModel(model)); +// ps.endFile(); +// fout.close(); +// fout.open((tmp + TMTMP_IN2).c_str()); +// ps.saveSpacer(prot.getModel(native)); +// ps.endFile(); +// fout.close(); +// +// //Call TMScore binary +// return TMImpose((tmp + TMTMP_IN1), (tmp + TMTMP_IN2), imposedModel); +//} +// +//Spacer* TmScore::spacerFromTMOutput(string pdbFile) { +// if (access(pdbFile.c_str(), R_OK) != 0) +// ERROR("Cannot read pdb file to fix", exception); +// +// ifstream inFile(pdbFile.c_str()); +// stringstream buffer; +// string line; +// while (inFile) { +// line = readLine(inFile); +// if (line.substr(0, 16) == "REMARK TM-score") { +// buffer << line << endl; +// if (line.substr(6, 8) == "TM-score") +// buffer << "MODEL 1" << endl; +// } else if (line.substr(0, 6) == "ATOM ") { +// buffer << line << endl; +// } else if (line.substr(0, 3) == "TER") { +// buffer << line << endl; +// buffer << "ENDMDL" << endl; +// break; +// } +// } +// buffer.clear(); +// buffer.seekg(0); +// //Load from memory buffer +// PdbLoader pl(buffer); +// if (!verbose) +// pl.setNoVerbose(); +// //Load and return protein object +// //*imposedModel = new ProteinModels(); +// pl.setModel(1); +// pl.checkModel(); +// Protein prot; +// pl.loadProtein(prot); +// unsigned int d=0; +// return prot.getSpacer(d); +//} + +//char buffer[2048]; // bool flag=true; // //la read implementa un sync al suo interno, questo mi permette di aspettare l'output del figlio senza pensieri // while(flag){ @@ -125,72 +297,3 @@ void TmScore::TmImpose(string modelFile, string nativeFile) { //// else if (this->verbose) cout << "valore dello score: " << score <verbose) cout << "valore dello score: " << score <l=udM+$w(6+qSf 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 VpKoOOJnv6+DK=%}*}ACy{vV?qt?U2* literal 34288 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 KwlkvHt^WaW_hU)` From edac1c2db79a66488dabc66d5093a7a29c5c2b41 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sat, 11 Jul 2015 16:33:23 +0200 Subject: [PATCH 10/61] inizio estrazione carboni alfa dai modelli --- .settings/language.settings.xml | 2 +- Mobi/APPS/mobi.cc | 230 ++++++++++++++------------------ Mobi/APPS/mobi.o | Bin 29416 -> 26248 bytes Mobi/Sources/ProteinModels.cc | 77 ++++++----- Mobi/Sources/ProteinModels.h | 6 +- Mobi/Sources/ProteinModels.o | Bin 49968 -> 56640 bytes Mobi/Sources/TmScore.cc | 2 - Mobi/Sources/TmScore.h | 2 +- Mobi/Sources/TmScore.o | Bin 34640 -> 34112 bytes 9 files changed, 148 insertions(+), 171 deletions(-) diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml index 7596dc4..9a57648 100644 --- a/.settings/language.settings.xml +++ b/.settings/language.settings.xml @@ -5,7 +5,7 @@ - + diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index def3bda..e996f00 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -1,17 +1,17 @@ /* This file is part of Victor. - Victor is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Victor is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with Victor. If not, see . + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Victor. If not, see . */ // --*- C++ -*------x----------------------------------------------------------- @@ -26,96 +26,86 @@ // // -----------------x----------------------------------------------------------- +#include +#include +#include +#include +#include - #include - #include - #include - #include - #include +using namespace Victor; +using namespace Victor::Biopool; +using namespace Victor::Mobi; - +void sShowHelp() { - using namespace Victor; - using namespace Victor::Biopool; - using namespace Victor::Mobi; + cout << "NAME" << endl; + cout << "\t mobi" << endl; + cout << "SYNOPSIS" << endl; + cout << "\t mobi [FILE]... [OPTION]..." << endl; + cout << "DESCRIPTION \n" << endl; + cout + << "\t Mobi è un software che riceve in input un file .pdb creato con tecnologia NMR." + << endl; + cout + << "\t Questo file contiene molti modelli della stessa proteina, li confronta e restituisce in un file di output " + << endl; + cout << "\t le parti mobili della proteina." << endl; - void sShowHelp(){ + cout << "\n" << endl; - cout << "NAME" << endl; - cout << "\t mobi" << endl; + cout << "\t -v verbose output. \n" << endl; + cout << "\t -o [FILE OUTPUT] Output to file (default stdout)\n" << endl; + cout << "\t -h help" << endl; - cout << "SYNOPSIS" << endl; - cout << "\t mobi [FILE]... [OPTION]..." << endl; + exit(EXIT_SUCCESS); - cout << "DESCRIPTION \n" << endl; - cout << "\t Mobi è un software che riceve in input un file .pdb creato con tecnologia NMR." << endl; - cout << "\t Questo file contiene molti modelli della stessa proteina, li confronta e restituisce in un file di output " << endl; - cout << "\t le parti mobili della proteina." << endl; +} - cout << "\n" <> input; - } while ((strcmp(input.c_str(), "y"))!=0 && (strcmp(input.c_str(), "n"))!=0);//(!cin.fail() && input != 'y' && input != 'n'); - - - if ((strcmp(input.c_str(), "y"))==0){ - // cin.ignore(); -// cout << "1" << endl; - prot.load(pl); -// cout << "2" << endl; - } - else{ - //cin.ignore(); -// cout << "1111" << endl; - prot.loadSameModels(pl); -// cout << "22" << endl; - } - - if (outputFile != "!"){ - outputFile="./Mobi/data/" + outputFile; - } else outputFile="./Mobi/data/stdout"; - - - // Mi salvo i vari modelli - prot.save(prot, outputFile); - + } while ((strcmp(input.c_str(), "y")) != 0 + && (strcmp(input.c_str(), "n")) != 0); //(!cin.fail() && input != 'y' && input != 'n'); + if ((strcmp(input.c_str(), "y")) == 0) { + prot.load(pl); + } else { + prot.loadSameModels(pl); + } - ///////////////////////////////////////////////////////////////////// + if (outputFile != "!") { + outputFile = "./Mobi/data/" + outputFile; + } else + outputFile = "./Mobi/data/stdout"; - TmScore tm("./Mobi/data/TMscore", outputFile, v); + // Mi salvo i vari modelli + prot.save(outputFile); + ///////////////////////////////////////////////////////////////////// - Protein* sp = new Protein(); + unsigned int d = 0; -//for (unsigned int i=0; igetSpacer(d))); + else + ERROR("Errore nella creazione della proteina traslata", + exeption); + prot.addModels(*(prot.getSpacer(j))); + } - if (sp != NULL) { + prot.printModels(outputFile); - ofstream pippo; //stream in output - unsigned int d = 0; - PdbSaver ps(pippo); - pippo.open((outputFile + "111").c_str()); - ps.saveSpacer(*(sp->getSpacer(d))); - ps.endFile(); - pippo.close(); - } - // tm.TmImpose(outputFile + (itosDEF(0)), outputFile + (itosDEF(1))); -// sp=*(tm.spacerFromTMOutput(tm.outputTmScore + "_atm")); -// prot.models.push_back(sp); -// cout << prot.models.size()<< endl; -// //} - - return 0; - } + return 0; +} diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index 49cac74297caf61ed5c6d334bfcfc8ad6feb7192..e3014f9dd0438fd0b1d2e51f61e0e9a485f84e67 100644 GIT binary patch literal 26248 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 diff --git a/Mobi/Sources/ProteinModels.cc b/Mobi/Sources/ProteinModels.cc index db0baf7..1cd3ad6 100644 --- a/Mobi/Sources/ProteinModels.cc +++ b/Mobi/Sources/ProteinModels.cc @@ -33,6 +33,9 @@ void ProteinModels::load(PdbLoader& pl) { pl.checkModel(); this->Protein::load(pl); } + if (verbose) + cout << "\n" << "Modelli caricati nella proteina" << endl; + } @@ -86,45 +89,47 @@ void ProteinModels::loadSameModels(PdbLoader& pl){ pl.checkModel(); this->Protein::load(pl); // creates the Protein object } + if (verbose) cout << "\n" << "Modelli caricati nella proteina" << endl; } /*procedura che stampa su file il vettore di spacer*/ -//void ProteinModels::save(ProteinModels& prot, string outputFile){ -// -// ofstream fout; //stream in output -// string outputFile_1; -// PdbSaver ps(fout); -// -// unsigned int i = 0; -// -// vector::iterator walk = models.begin(); -// while (walk != models.end()) { -// -// outputFile_1 = outputFile + (itosDEF(i)) + PDB; -// if (verbose) -// cout << outputFile_1 << endl; -// -// fout.open(outputFile_1.c_str()); -// if (!fout) { -// ERROR("Could not open file for writing.", exception); -// } else { -// -// ps.saveSpacer(*walk); -// walk++; -// i++; -// ps.endFile(); -// fout.close(); -// -// if (verbose) -// cout << "file chiuso" << endl; -// } -// } -// -//} - -void ProteinModels::save(ProteinModels& prot, string outputFile){ +void ProteinModels::printModels(string outputFile){ + + ofstream fout; //stream in output + string outputFile_1; + PdbSaver ps(fout); + const string VECTOR = "Vector"; + + unsigned int i = 0; + + vector::iterator walk = models.begin(); + while (walk != models.end()) { + + outputFile_1 = outputFile + VECTOR + (itosDEF(i)) + PDB; + if (verbose) + cout << outputFile_1 << endl; + + fout.open(outputFile_1.c_str()); + if (!fout) { + ERROR("Could not open file for writing.", exception); + } else { + + ps.saveSpacer(*walk); + walk++; + i++; + ps.endFile(); + fout.close(); + + if (verbose) + cout << "file chiuso" << endl; + } + } + +} + +void ProteinModels::save(string outputFile){ ofstream fout; //stream in output string outputFile_1; @@ -133,7 +138,7 @@ void ProteinModels::save(ProteinModels& prot, string outputFile){ if (verbose) cout << "Salvataggio dei modelli su file" << endl; // Open the proper output stream (file or stdout) - for (unsigned int i = 0; i < prot.size(); i++) { + for (unsigned int i = 0; i < this->size(); i++) { outputFile_1 = outputFile + (itosDEF(i)) + PDB; @@ -146,7 +151,7 @@ void ProteinModels::save(ProteinModels& prot, string outputFile){ if (!fout) { ERROR("Could not open file for writing.", exception); } else - ps.saveSpacer(*(prot.getSpacer(i))); + ps.saveSpacer(*(this->getSpacer(i))); ps.endFile(); fout.close(); diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index da6b816..fe524cc 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -55,19 +55,19 @@ class ProteinModels : public Protein{ void loadSameModels(PdbLoader& pl); - //Spacer& getModel(unsigned int _model); - // MODIFIERS: void setVerbose() { verbose = true; } - void save(ProteinModels& prot, string outputFile); + void save(string outputFile); vector getModels(); void addModels(Spacer& sp); + void printModels(string outputFile); + // MODIFIERS: private: bool verbose; diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o index 4b3d9a199c6f745cb8be611efdd4a4ebd128724e..390cc79bd7b1466e5a30f1fe89dcdc9d39bd368f 100644 GIT binary patch literal 56640 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 Ii+IHF7r@90Hvj+t From 41386b4eae428673656b110c765f866c1f6bee60 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sat, 11 Jul 2015 17:27:18 +0200 Subject: [PATCH 11/61] creata classe scale distance --- Mobi/Sources/Makefile | 4 ++-- Mobi/Sources/ProteinModels.cc | 1 + Mobi/Sources/ProteinModels.h | 3 +-- Mobi/Sources/ProteinModels.o | Bin 56640 -> 56640 bytes Mobi/Sources/TmScore.h | 2 -- 5 files changed, 4 insertions(+), 6 deletions(-) diff --git a/Mobi/Sources/Makefile b/Mobi/Sources/Makefile index 1cd054b..beaa548 100644 --- a/Mobi/Sources/Makefile +++ b/Mobi/Sources/Makefile @@ -27,10 +27,10 @@ INC_PATH = -I. -I../../tools -I../../Biopool/Sources # -SOURCES = ProteinModels.cc TmScore.cc +SOURCES = ProteinModels.cc TmScore.cc ScaleDistance.cc -OBJECTS = ProteinModels.o TmScore.o +OBJECTS = ProteinModels.o TmScore.o ScaleDistance.o TARGETS = diff --git a/Mobi/Sources/ProteinModels.cc b/Mobi/Sources/ProteinModels.cc index 1cd3ad6..28f6f33 100644 --- a/Mobi/Sources/ProteinModels.cc +++ b/Mobi/Sources/ProteinModels.cc @@ -3,6 +3,7 @@ #include #include + using namespace Victor; using namespace Victor::Mobi; using namespace Victor::Biopool; diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index fe524cc..238a76c 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -21,7 +21,6 @@ along with Victor. If not, see . #include #include -#include using namespace Victor::Biopool; @@ -37,7 +36,7 @@ class ProteinModels : public Protein{ public: // CONSTRUCTORS/DESTRUCTOR: - ProteinModels() ; + ProteinModels(); ProteinModels(const Protein& _orig); diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o index 390cc79bd7b1466e5a30f1fe89dcdc9d39bd368f..aac92640b809e4501839d4733778339963ff1a0c 100644 GIT binary patch delta 37 ncmX@Gi}}DV<_%o@ETs$#43j6Y$Zyu=zs<=q6UNh)6g>g};U)_S delta 37 ncmX@Gi}}DV<_%o@EF}yK43j6Y$Zyu=zs<=q1IE*q6g>g};Qk8- diff --git a/Mobi/Sources/TmScore.h b/Mobi/Sources/TmScore.h index f200252..122ac84 100644 --- a/Mobi/Sources/TmScore.h +++ b/Mobi/Sources/TmScore.h @@ -30,8 +30,6 @@ using namespace Victor::Mobi; using namespace std; -extern const string TMTMP_IN1; -extern const string TMTMP_IN2; extern const string TMTMP_OUT; From b8a6e65366564ffc894dfc9ea77c453b885fb0f4 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sat, 11 Jul 2015 17:27:56 +0200 Subject: [PATCH 12/61] creata classe ScaleDistance --- Mobi/Sources/ScaleDistance.cc | 20 +++++++++++++ Mobi/Sources/ScaleDistance.h | 51 ++++++++++++++++++++++++++++++++++ Mobi/Sources/ScaleDistance.o | Bin 0 -> 4056 bytes 3 files changed, 71 insertions(+) create mode 100644 Mobi/Sources/ScaleDistance.cc create mode 100644 Mobi/Sources/ScaleDistance.h create mode 100644 Mobi/Sources/ScaleDistance.o diff --git a/Mobi/Sources/ScaleDistance.cc b/Mobi/Sources/ScaleDistance.cc new file mode 100644 index 0000000..6183ea9 --- /dev/null +++ b/Mobi/Sources/ScaleDistance.cc @@ -0,0 +1,20 @@ +/* + * ScaleDistance.cc + * + * Created on: 11 lug 2015 + * Author: riccardo + */ +#include + +using namespace Victor; +using namespace Victor::Mobi; +using namespace Victor::Biopool; + +ScaleDistance::ScaleDistance(const ProteinModels& _orig, bool verbose) : + verbose(verbose) { + +} + +ScaleDistance::~ScaleDistance() { +} + diff --git a/Mobi/Sources/ScaleDistance.h b/Mobi/Sources/ScaleDistance.h new file mode 100644 index 0000000..f87149c --- /dev/null +++ b/Mobi/Sources/ScaleDistance.h @@ -0,0 +1,51 @@ +/* This file is part of Victor + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + +/** + * @file ScaleDistance.h + * @author Riccardo Zanella + * @date 11 lug 2015 + * @version 0.1 + */ + +#ifndef MOBI_SOURCES_SCALEDISTANCE_H_ +#define MOBI_SOURCES_SCALEDISTANCE_H_ + +#include +#include + +using namespace Victor::Biopool; + +namespace Victor { +namespace Mobi { +/** + * @brief Extends Protein class with functionalities related to manipulation of NMR model and models comparations. + * Scale Distance metric is provided. + */ +class ScaleDistance { + +public: + + // CONSTRUCTORS/DESTRUCTOR: + ScaleDistance(const ProteinModels& _orig, bool _verbose = false); + + virtual ~ScaleDistance(); + +private: + bool verbose; + +}; +} +} + +#endif /* MOBI_SOURCES_SCALEDISTANCE_H_ */ diff --git a/Mobi/Sources/ScaleDistance.o b/Mobi/Sources/ScaleDistance.o new file mode 100644 index 0000000000000000000000000000000000000000..4314b9fc2ec3fb87cd98d78cce2a467d14197769 GIT binary patch literal 4056 zcmb_f&2Jk;6dz~%5g;_7P$(401|-x9vhpTY8#tgq9O8&1L`hq!2sBySTe8COM&51Z zaOt5%;=rNe&)~p?1Be4uDiYUl9Ryo=zr?DtOZFy!V^;?U~u} zwb_NY21+HtR1&X?p2VmSI|Ds_TCvmOq&T5;he(Faqk0@x^Tn(7!%;A|hevNHK+C^D z7#^J#TK?qS!P~|B_1_1-19u0nZ}9pSFNM{ve?O=!ffTfK_F~e=(@teEtta8+Y9ngJ z)g;TKb|ao;rT;R{&CI;!pPpN~aK^6$Q^BM^Q4TBRSHsXhy%IP5T9g;~__;F(^MsC7 z`e;Rzx+A4iLq`X1QgcQKe^$>8>JeC3^XMT6SXFUCJfg>wG+xsDOBk!iM&3WBy#(3z zW**f=kma3X++eN~x1u1AySWIOQ67n)o@FA~Mad%S?$kVQWo-nA|`F~9qi1iC;uUw@GSNuCVKKB{%A2$3ket|I5 zKVY2KB#K*j5n;`lWY>R#CSCTwXd_$SmambXD}SLs3T5pF`D00OKREv{33J6)AkF#o znB5-67&v0?FgCC~Xqgnu*Z zo}EV(yT~I8n-T(!8~x|?fbYeak-x7EvAyIzx$~oNK$B(%01{^dRLe4F`^X3~1 zQf61`a$d@{es`{!iP@F6msZO%oLuhEohxZCrp>sO&DMonTg?}yq)bxW6iMvor#dlv zl~m3jaKSskNvNFkjZ;=C&DJu)_0#NISzp7jPfM0o^Qk1wWIf8_$~^UDM&&GW8 zcC!^DEnBHtC^fo~jOc!@x_Qt|o0@sRV<6S3~G>v>)A31H(d8vDf5=W`od0N<2*J1Mevcr7p#L;Itgk;$>g0O{ z3Yz%;lpBnL7#I5 g&iw&?0)Qr8kH`}bQ$;h3v)`J9`&xd_z|Fe;1#|F=mjD0& literal 0 HcmV?d00001 From 0c70766a398d2fddc276e751558f3948d82a9f51 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Mon, 13 Jul 2015 20:28:27 +0200 Subject: [PATCH 13/61] Creata la funzione per estrapolare i carboni alfa dagli aminoacidi --- Mobi/APPS/mobi.cc | 17 +++++++++--- Mobi/APPS/mobi.o | Bin 26248 -> 27040 bytes Mobi/Sources/ProteinModels.cc | 6 ++-- Mobi/Sources/ProteinModels.h | 4 ++- Mobi/Sources/ProteinModels.o | Bin 56640 -> 56536 bytes Mobi/Sources/ScaleDistance.cc | 51 ++++++++++++++++++++++++++++++++-- Mobi/Sources/ScaleDistance.h | 9 ++++++ Mobi/Sources/ScaleDistance.o | Bin 4056 -> 20304 bytes Mobi/Sources/TmScore.cc | 3 ++ Mobi/Sources/TmScore.o | Bin 34112 -> 34576 bytes 10 files changed, 81 insertions(+), 9 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index e996f00..c2d970f 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -27,6 +27,7 @@ // -----------------x----------------------------------------------------------- #include +#include #include #include #include @@ -142,19 +143,27 @@ int main(int argc, char* argv[]) { for (unsigned int j = 0; j < prot.size(); j++) if (i != j) { if (v) - cout << outputFile + (itosDEF(i)) << outputFile + (itosDEF(j))<< endl; - traslata = tm.TmImpose(outputFile + (itosDEF(i)),outputFile + (itosDEF(j))); - if (traslata != NULL) + cout << "\n Lettura proteine da traslare:\n " + << outputFile + (itosDEF(i)) + << outputFile + (itosDEF(j)) << endl; + traslata = tm.TmImpose(outputFile + (itosDEF(i)), + outputFile + (itosDEF(j))); + if (traslata != NULL) { + prot.addModels(*(traslata->getSpacer(d))); - else + } else ERROR("Errore nella creazione della proteina traslata", exeption); + if (v) + cout << "\n ###Caricamento proteina modello### " << endl; + prot.addModels(*(prot.getSpacer(j))); } prot.printModels(outputFile); + ScaleDistance prova(prot, v); return 0; } diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index e3014f9dd0438fd0b1d2e51f61e0e9a485f84e67..920e5c589f2e99c49a88bf5f17db89adf0f234f5 100644 GIT binary patch delta 6633 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 delta 5871 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 Xzmn^apLSGv=Zs-aLNhA+ diff --git a/Mobi/Sources/ProteinModels.cc b/Mobi/Sources/ProteinModels.cc index 28f6f33..e921dc4 100644 --- a/Mobi/Sources/ProteinModels.cc +++ b/Mobi/Sources/ProteinModels.cc @@ -105,6 +105,8 @@ void ProteinModels::printModels(string outputFile){ unsigned int i = 0; + if (verbose) + cout<<"\n ###Salvataggio su file dei modelli ###"<::iterator walk = models.begin(); while (walk != models.end()) { @@ -169,6 +171,6 @@ void ProteinModels::addModels(Spacer& sp){ } -vector ProteinModels::getModels() { - return this->models; +Spacer ProteinModels::getModel(unsigned int u) { + return this->models[u]; } diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index 238a76c..56b5f02 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -62,7 +62,7 @@ class ProteinModels : public Protein{ void save(string outputFile); - vector getModels(); + Spacer getModel(unsigned u); void addModels(Spacer& sp); void printModels(string outputFile); @@ -70,6 +70,8 @@ class ProteinModels : public Protein{ // MODIFIERS: private: bool verbose; + +public: vector models; }; diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o index aac92640b809e4501839d4733778339963ff1a0c..ef92efc23bfc2a9eae56499fec518697666cfa52 100644 GIT binary patch delta 8154 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 delta 8065 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 ScaleD = new vector(5); + + Spacer primo_modello; + Spacer secondo_modello; + + unsigned int u = 0; + while (u <((modelli.size())/2)) { + if (verbose) + cout << "#modello numero: " << u << endl; + primo_modello = modelli.models[u]; + this-> getCaAtom(primo_modello, true); + u++; + cout << "#modello numero: " << u << endl; + secondo_modello = modelli.models[u]; + this-> getCaAtom(secondo_modello, false); + u++; + } + + //cout << "##### Atomo:" << this->CaVector1[0].getCode() << endl; + + + + +} + + + +void ScaleDistance :: getCaAtom (Spacer& s, bool flag){ + + for (unsigned int u=0; u < s.sizeAmino(); u++) { + AminoAcid a = s.getAmino(u); + if (verbose) + cout << "#Aminoacido numero: " << u << ":" << endl; + + unsigned int i = 1; + + if (flag) + this->CaVector1.push_back(a.getAtom(i)); + else + this->CaVector2.push_back(a.getAtom(i)); + + + if (a.getAtom(i).getCode()!= CA) + ERROR("L'atomo trovato non è un carbonio alfa.", exception); + + } } diff --git a/Mobi/Sources/ScaleDistance.h b/Mobi/Sources/ScaleDistance.h index f87149c..cf3f1e6 100644 --- a/Mobi/Sources/ScaleDistance.h +++ b/Mobi/Sources/ScaleDistance.h @@ -23,6 +23,7 @@ #include #include +#include using namespace Victor::Biopool; @@ -41,8 +42,16 @@ class ScaleDistance { virtual ~ScaleDistance(); + + + void getCaAtom (Spacer& s, bool flag); + + private: bool verbose; + vector CaVector1; + vector CaVector2; + //vector* ScaleD; }; } diff --git a/Mobi/Sources/ScaleDistance.o b/Mobi/Sources/ScaleDistance.o index 4314b9fc2ec3fb87cd98d78cce2a467d14197769..cdae78e1872d3f96594e24fee376917c31474741 100644 GIT binary patch literal 20304 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 literal 4056 zcmb_f&2Jk;6dz~%5g;_7P$(401|-x9vhpTY8#tgq9O8&1L`hq!2sBySTe8COM&51Z zaOt5%;=rNe&)~p?1Be4uDiYUl9Ryo=zr?DtOZFy!V^;?U~u} zwb_NY21+HtR1&X?p2VmSI|Ds_TCvmOq&T5;he(Faqk0@x^Tn(7!%;A|hevNHK+C^D z7#^J#TK?qS!P~|B_1_1-19u0nZ}9pSFNM{ve?O=!ffTfK_F~e=(@teEtta8+Y9ngJ z)g;TKb|ao;rT;R{&CI;!pPpN~aK^6$Q^BM^Q4TBRSHsXhy%IP5T9g;~__;F(^MsC7 z`e;Rzx+A4iLq`X1QgcQKe^$>8>JeC3^XMT6SXFUCJfg>wG+xsDOBk!iM&3WBy#(3z zW**f=kma3X++eN~x1u1AySWIOQ67n)o@FA~Mad%S?$kVQWo-nA|`F~9qi1iC;uUw@GSNuCVKKB{%A2$3ket|I5 zKVY2KB#K*j5n;`lWY>R#CSCTwXd_$SmambXD}SLs3T5pF`D00OKREv{33J6)AkF#o znB5-67&v0?FgCC~Xqgnu*Z zo}EV(yT~I8n-T(!8~x|?fbYeak-x7EvAyIzx$~oNK$B(%01{^dRLe4F`^X3~1 zQf61`a$d@{es`{!iP@F6msZO%oLuhEohxZCrp>sO&DMonTg?}yq)bxW6iMvor#dlv zl~m3jaKSskNvNFkjZ;=C&DJu)_0#NISzp7jPfM0o^Qk1wWIf8_$~^UDM&&GW8 zcC!^DEnBHtC^fo~jOc!@x_Qt|o0@sRV<6S3~G>v>)A31H(d8vDf5=W`od0N<2*J1Mevcr7p#L;Itgk;$>g0O{ z3Yz%;lpBnL7#I5 g&iw&?0)Qr8kH`}bQ$;h3v)`J9`&xd_z|Fe;1#|F=mjD0& diff --git a/Mobi/Sources/TmScore.cc b/Mobi/Sources/TmScore.cc index e340c1e..17400bf 100644 --- a/Mobi/Sources/TmScore.cc +++ b/Mobi/Sources/TmScore.cc @@ -187,6 +187,9 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { prot = new Protein(); + if (verbose) + cout << "### Caricamento proteina rototraslata ###" < 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 E0~9u9<^TWy From ebebde58e68bd656455db7cef004044eb2285f25 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sat, 18 Jul 2015 19:49:48 +0200 Subject: [PATCH 14/61] Calcolata scale distance --- Mobi/APPS/mobi.cc | 9 ++- Mobi/APPS/mobi.o | Bin 27040 -> 27200 bytes Mobi/Sources/ScaleDistance.cc | 119 ++++++++++++++++++++++++++-------- Mobi/Sources/ScaleDistance.h | 16 +++-- Mobi/Sources/ScaleDistance.o | Bin 20304 -> 26096 bytes Mobi/Sources/TmScore.cc | 1 + Mobi/Sources/TmScore.o | Bin 34576 -> 34576 bytes 7 files changed, 111 insertions(+), 34 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index c2d970f..c936914 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -137,6 +137,7 @@ int main(int argc, char* argv[]) { TmScore tm("./Mobi/data/TMscore", outputFile, v); + Protein* traslata = new Protein(); for (unsigned int i = 0; i < prot.size(); i++) @@ -163,7 +164,13 @@ int main(int argc, char* argv[]) { prot.printModels(outputFile); - ScaleDistance prova(prot, v); + //cout << "#########" << prot.models.size() << endl; + + ScaleDistance prova(prot, false , v); + + + cout << "#########" << endl; + return 0; } diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index 920e5c589f2e99c49a88bf5f17db89adf0f234f5..a0bb7a878a77f50541b53997f271781d67c27eb8 100644 GIT binary patch delta 4227 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 J(NkBQ@IOB}=(7L- diff --git a/Mobi/Sources/ScaleDistance.cc b/Mobi/Sources/ScaleDistance.cc index 2f8a559..f192360 100644 --- a/Mobi/Sources/ScaleDistance.cc +++ b/Mobi/Sources/ScaleDistance.cc @@ -10,58 +10,125 @@ using namespace Victor; using namespace Victor::Mobi; using namespace Victor::Biopool; -ScaleDistance::ScaleDistance(const ProteinModels& modelli, bool verbose) : - verbose(verbose) { +ScaleDistance::ScaleDistance(const ProteinModels& modelli, bool standardDeviation ,bool verbose) : + standardDev(standardDeviation), verbose(verbose), models(modelli.models) { - //vector * ScaleD = new vector(5); + Spacer* primo_modello = new Spacer; + Spacer* secondo_modello = new Spacer; - Spacer primo_modello; - Spacer secondo_modello; + unsigned int num_atomi = 0; + double ScalD, distance= -1.0; + if (models.size() != 0) + num_atomi = models[0].sizeAmino(); + else + ERROR("Nessun modello presente nella proteina", exception); + + vector * ScD = new vector (num_atomi); + + + vector > dist_from_Ca_atoms(num_atomi, + vector(0.0)); + + cout << "################# " << dist_from_Ca_atoms.size() << " " << dist_from_Ca_atoms[0].size() << endl; + + + if (verbose){ + cout << "Numero di modelli presenti: " << models.size() << endl; + cout << "Ogni modello ha un numero di atomi pari a: " << num_atomi << endl; + } + //scorro i modelli e per ognuno creo il vettore di atomi unsigned int u = 0; - while (u <((modelli.size())/2)) { + + while (u < (models.size())) { + //if (verbose) + //cout << "#modello numero: " << u << endl; if (verbose) - cout << "#modello numero: " << u << endl; - primo_modello = modelli.models[u]; - this-> getCaAtom(primo_modello, true); + cout << "#Distanza tra modello: " << u; + + primo_modello = &models[u]; + getCaAtom(primo_modello, true); u++; - cout << "#modello numero: " << u << endl; - secondo_modello = modelli.models[u]; - this-> getCaAtom(secondo_modello, false); + //if (verbose) + //cout << "#modello numero: " << u << endl; + + if (verbose) + cout << " e modello: " << u << endl; + + secondo_modello = &models[u]; + getCaAtom(secondo_modello, false); u++; + + + //cout << "GRandezza vettore " << dist_from_Ca_atoms[0].size() << endl; + + for (unsigned int i = 0; i < num_atomi; i++) { + distance = CaVector1[i].distance(CaVector2[i]); + ScalD = 1.0 / (pow (( 1.0 + (distance/4.0) ), 2.0)); + dist_from_Ca_atoms[i].push_back(ScalD); + if (verbose) + cout << dist_from_Ca_atoms[i].back() << endl; + } + + //cout << "GRAndezza vettore " << dist_from_Ca_atoms[0].size() << endl; + + CaVector1.clear(); + CaVector2.clear(); + } - //cout << "##### Atomo:" << this->CaVector1[0].getCode() << endl; + + if (standardDeviation){} + else{ + int count; + double sum; + for (unsigned int i = 0; i < num_atomi; i++) { + count=0; + sum=0; + cout << "Grandezza vettore " << dist_from_Ca_atoms[0].size() << endl; + vector::iterator atom = dist_from_Ca_atoms[i].begin(); + while (atom != dist_from_Ca_atoms[i].end()){ + + sum = sum + (*atom); + + atom++; + count++; + } + cout << "SOMMA " << sum << " COUNT " << count << endl; + ScD->push_back((sum / count)); + cout << "media per il " << i << " atomo = " << sum/count << endl; + } + } + +} + +ScaleDistance::~ScaleDistance() { } +void ScaleDistance::getCaAtom(Spacer* s, bool flag) { -void ScaleDistance :: getCaAtom (Spacer& s, bool flag){ +//per un modello fissato creo il vettore di atomi + AminoAcid* a = new AminoAcid; + + for (unsigned int u = 0; u < s->sizeAmino(); u++) { + a = &(s->getAmino(u)); - for (unsigned int u=0; u < s.sizeAmino(); u++) { - AminoAcid a = s.getAmino(u); - if (verbose) - cout << "#Aminoacido numero: " << u << ":" << endl; unsigned int i = 1; if (flag) - this->CaVector1.push_back(a.getAtom(i)); + this->CaVector1.push_back(a->getAtom(i)); else - this->CaVector2.push_back(a.getAtom(i)); - + this->CaVector2.push_back(a->getAtom(i)); - if (a.getAtom(i).getCode()!= CA) + if (a->getAtom(i).getCode() != CA) ERROR("L'atomo trovato non è un carbonio alfa.", exception); } } - -ScaleDistance::~ScaleDistance() { -} - diff --git a/Mobi/Sources/ScaleDistance.h b/Mobi/Sources/ScaleDistance.h index cf3f1e6..f3c9aa7 100644 --- a/Mobi/Sources/ScaleDistance.h +++ b/Mobi/Sources/ScaleDistance.h @@ -24,6 +24,7 @@ #include #include #include +#include using namespace Victor::Biopool; @@ -38,20 +39,21 @@ class ScaleDistance { public: // CONSTRUCTORS/DESTRUCTOR: - ScaleDistance(const ProteinModels& _orig, bool _verbose = false); + ScaleDistance(const ProteinModels& _orig, bool _standardDeviation = false , bool _verbose = false); virtual ~ScaleDistance(); - - void getCaAtom (Spacer& s, bool flag); +private: + void getCaAtom (Spacer* s, bool flag); private: - bool verbose; - vector CaVector1; - vector CaVector2; - //vector* ScaleD; + bool standardDev,verbose; + vector models; + vector CaVector1, CaVector2; + vector < vector > dist_from_Ca_atoms; + vector * ScD; }; } diff --git a/Mobi/Sources/ScaleDistance.o b/Mobi/Sources/ScaleDistance.o index cdae78e1872d3f96594e24fee376917c31474741..4b878b019d54af6f5f1d5744752eea3ce9063d6a 100644 GIT binary patch literal 26096 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 P<#$PPzDRnz7?=Ma7sb?J literal 20304 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 diff --git a/Mobi/Sources/TmScore.cc b/Mobi/Sources/TmScore.cc index 17400bf..e234edf 100644 --- a/Mobi/Sources/TmScore.cc +++ b/Mobi/Sources/TmScore.cc @@ -194,6 +194,7 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { + } } } else diff --git a/Mobi/Sources/TmScore.o b/Mobi/Sources/TmScore.o index 0a816dcbb284f259a5abb07e3f40fe0c96b334ca..b14685c0df222854975b2db1bbcc7effffb95215 100644 GIT binary patch delta 27 jcmbQx$26gjX~P;O#xtAOGCdV#JUMwSQ|V?7Nsc@KowEv) delta 27 jcmbQx$26gjX~P;O#?zbEGCdV#JTZAKQ|V?7Nsc@KotO%d From 4ab69146639e1664d56989ecceece0a70e6ce68c Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sun, 19 Jul 2015 15:24:17 +0200 Subject: [PATCH 15/61] calcolata media scale distance e varianza scale distance. --- Mobi/APPS/mobi.cc | 10 ++++-- Mobi/APPS/mobi.o | Bin 27200 -> 27408 bytes Mobi/Sources/ScaleDistance.cc | 57 ++++++++++++++++++++++++++++++---- Mobi/Sources/ScaleDistance.h | 4 ++- Mobi/Sources/ScaleDistance.o | Bin 26096 -> 27792 bytes 5 files changed, 62 insertions(+), 9 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index c936914..77616f5 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -166,10 +166,16 @@ int main(int argc, char* argv[]) { //cout << "#########" << prot.models.size() << endl; - ScaleDistance prova(prot, false , v); + ScaleDistance prova(prot, true , v); - cout << "#########" << endl; + vector * SD = new vector ; + + SD = prova.get_ScalDist(); + + + + cout << "#########" << SD->size() << endl; return 0; diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index a0bb7a878a77f50541b53997f271781d67c27eb8..f2c62cf776273064ee93c99ee8bcecd8fd01eb6c 100644 GIT binary patch delta 3453 zcmZ`*ZBSI#89wLA9oS_*Vdd_PEW5xa!JxQ{tvIz|1!J-x@)2WgtcZ(6Vrv^|nZ%}s zRanR@WDS`&NmJXRNwj}#n&@IAF+-qEG+-OW(Z-OFMB6m(w2mgzA=Iz!d(Pg)%Q|~z z?sLxjyw7vK?m2gN=q&C1JMAr?TMy1n*XZgDgmi3o>ZmcW0+wn#LWUu{Q?o=!pVSeu zx^OI&5N}VwNhsE# zZI`?|qXdhwGbb&UxQfw?#2FYh9G%l8vh)j16ZbuJ+gB{YUZa%%SxPMLO3Zh&MCXt( za1F+dE9rQ+!1M^Ee}kvZ7gxQ5VseR%|DHA8@`m1ZUS*w}U_4e!abmnSv6`#BJwHtI z7FyrqiQ((BVr1|$Z}0^CG$SlLK){}9OD`Te-v9Urjy z3%Kde74U`jJD1{!Tp!6o=54-lp*6Uc5o2J>OpD4gh=ix3%vx2%ikQ*hbZO1}e*vP*Loj|sDf;dio4eo={9dHudO z^n3mmA}e7`cIet;S=Qg1tUvfvFG~?`jQ#h7dfhKT*Bu&;s^bq6;+}-~0>3M@D& zh#@<<#oK);;sHB3k|LhBll`JNX(u0v`-NK=q!sOUkT2520SD>Ph{){Ki2uza=Xm>y zMm&{Ic4@^I^U0`I9M2}_wBjH0$e+^nugauf$C%?f@ta)oiBA03LB7@b#ok;J)Qf-4 zC4GAFR4zHH7d!LFA;Sbk?H-f(Rvvl7Bo5}0lP2-gJThSt|CvX=LChyz=AU7&9T^r> zzMsM7aw&t2a5F>PZ6p1etUZ`n*J&fav9R_&3)395u;m=LunjpnyRaFl^I27x{(~%H zcY!&0LC<9~{l_*PYF^5z!p-S&SZ;wK`?c_Jwq2lW;X+QKHKf%V7B4fn$_xeN21mKU zT5d3v8`2&OJM9Chv>hhy@z4O+?ma*UVC3E?9SDyU_yu|zDhmAqsfN+QHo;mAmGjz! zv>F(lHz=5Dp?iK8?FMsEiFT+i_6{9c@Nm&0!88ZDi%RJiFjC|ZtaCuSpp6h^JI!V5wiS>tH zcJgz4@WS(w33c_7-;UE`g;f@OD1NqBDNuOkVo%()P{sRH{1O#ktKz*X{#Pn~b&Q8+ z>dmwf4%SQV$5qM|D&>g5vMZ?yJKU33d99Qw|CdJqOxvI}jr9W2b z@DCO%te;AJ;`+N3p6!WR|4@wg-(gst#L%8(fZinfp(OebRs0TutBKDPFPu-JDL@+~ zYU8+w<1%PLz7}5bN&0#{E&~f&vIC#^e1=uL`p#X1x{VSg zK$|4L)`$iy%v*y`+-pw4=O{dzr~2&Qr||4hv2)#q4=amQy!tjg6yxvX1FuA3eBdh8 z0O||!2#oz$qU)dq(FbLSn>o|M82O0=SNwvsaZML@?E+tuMElvY=^2Ldq-t^{IEVN* zIm$H-7;cg(N)$42bIX$O4<_LoSa0~V#ITR!5sv3M{*Ple)NNu16j81>v+aw$m~yP+ q`_sWS?{b{rILT0OXTZfx4~rcr#h;VrO#H=N*(}laa8vUq!v6u%;yH)_ delta 3402 zcmZ`*4RBP|6~6b87xFgyn@xDTag*H*>kuY}?1ok-)m;(`vqZ>`t(3tr1Obz2Ym2s1 zQybmHY#27_YT!84X;q9Gr)fJ=lZB}Y#W;Y#N?V~49WdHBwPvx{^iSdsyqU7xx%b@r?%N%lpyO}R!Aj~MU0SFZ^UZ|xcKM9d5+$%&2}#FHi5}(aQsIb^ zknW$ZB$nt#I9|A>uyxK}3#xIsamk!Loevw0o2BFVi813TN`C+mvtxN|AtB*`sE<&5 z#yh9OJsQDg>6_3UGiYTw`XOmPcwJCtagX_|Jnn(3aToI78H>93=Xq(rf4;w-Ir_#e z(J?q@*+BOuDy`q5v=1J%eIN(UOcMfiN(qb?4VSJa;n@2~utW02xXVdQYd02h1JfFVKJYVWOda`G@BRg~ms!Lon z3JoQfBlqKO^qydAlyFZT-N}pD?^}&o)1|Z`^D?U}9RD`1_oOAdJv(IMH6h=)Cd8W^ za=RYVOe2|TZn-ALoE@Xg#biP*UDC94)v+U~UtQ6(fri=my;|(P*;q0)csbi%gLXK6 z$T!2c>qxq`A6|j5>ZZ3rhgzm=!wj5;LA6(@{}T0>_c*v5Wpo5qAr8PM#|^X<`W)BW zt5`ntFTy8}x_c1D9X{hn={WXA55knGSW3MP`OX{Z!*H|nNAxBbbNZEc@oZV_LHO8N z=6p)Gy7=>0IQ}Hx{nYK?E%g}t(_WVEMV1fVH96H(bDI5lQY`sN*i(9aG92RJ14N*)Y#eq0Nr}YST1&L|P;N+Do>`GcNK3t;XSpRQ^RdiAoXq z*>W-}G2;zM9xo?X`1t8O`Mq-T`#gETO@?K8#7*9ohow<83YI0^&k(M(u2T&~AFgMc(A&NjuYAu(NVBJKK=|6j!w)HMnR! zO3ylEOn0ahFJIinVjn3ppyp)Rdfc3s-L_F^bv*|!x~vIWhF=o{c->WwwFZNE5!?5Q_9>dn@AbHSR#cK1sQX%Cbw3DI7-bIEV0ACyXs`V-31h(yB>tBOdS8^CbG zL(<>|=*LHQBN(a=OS_vOS-p#{f|g|~3@cmG=lD(u>|J)FG+qkHWkG5Mr6weuD20X^ zX2fbj)B`6GD?#yxaHe&LZ4mQ^q)qLR^arJJ7Z?IT>7omUT#KMBP$|v0pdXpG4oC)q zEU-4D?5s`C)(I`OE0pPA+Nw|NsSOoSL*n$R6$|Jq@Y>BPo#6NxLud{46B^jqInTYnR=h?fg5y@WxK)MqcNy_JGPPC357E$FDh=`R zZ5($n4BR8cbYsFyb@%D~{9XDb1h%Qp;T+ySaql}hycD)#Y$5)oWo>@uuP|>UsC!v) z;%@&~;KhsmxWI45n9TYQ{0SU8DM_?RZJRQIx_vn6J( zb0A05*LdbSnA)z=cJLzhF?5dTdRFQR>{jfojd9IiI9`AuT-Coge#+4Td+t{8?PJ); zv7O^?jw2jTaU|evSDhwXIxE|tdhD4ETF$)mdmQ5&U*I^!5Kgq;BtML5D|kEX_#0i; Nq0*kjS3Ay2{|B=sI%5C; diff --git a/Mobi/Sources/ScaleDistance.cc b/Mobi/Sources/ScaleDistance.cc index f192360..6db1778 100644 --- a/Mobi/Sources/ScaleDistance.cc +++ b/Mobi/Sources/ScaleDistance.cc @@ -24,7 +24,7 @@ ScaleDistance::ScaleDistance(const ProteinModels& modelli, bool standardDeviatio else ERROR("Nessun modello presente nella proteina", exception); - vector * ScD = new vector (num_atomi); + vector > dist_from_Ca_atoms(num_atomi, @@ -78,8 +78,7 @@ ScaleDistance::ScaleDistance(const ProteinModels& modelli, bool standardDeviatio } - if (standardDeviation){} - else{ + int count; double sum; for (unsigned int i = 0; i < num_atomi; i++) { @@ -94,15 +93,55 @@ ScaleDistance::ScaleDistance(const ProteinModels& modelli, bool standardDeviatio atom++; count++; } - cout << "SOMMA " << sum << " COUNT " << count << endl; + //cout << "SOMMA " << sum << " COUNT " << count << endl; ScD->push_back((sum / count)); - cout << "media per il " << i << " atomo = " << sum/count << endl; + cout << "media per il " << i << " atomo = " << ScD->back() << endl; } + if (standardDev){ + + + double standDev=-1; + + cout << "#############################" << endl; + + vector::iterator everage = ScD->begin(); + + for (unsigned int i = 0; i < num_atomi; i++) { + sum=0; + count=0; + vector::iterator atom = dist_from_Ca_atoms[i].begin(); + + + while (atom != dist_from_Ca_atoms[i].end()){ + cout << "Stampo distanza fra atomi " << *atom << endl; + sum += (pow ( ((*atom) - (*everage) ) , 2.0 )); + atom++; + count++; + + } + + standDev = sqrt(sum / count); + + cout << "sum : " << sum << "COUNT" << count << endl; + cout << "media : " << *everage << endl; + cout << "DEVSTADARD per il " << i << " atomo = " << standDev << endl; + *everage = standDev; + + everage++; + + + } + + + } + + + + - } } @@ -132,3 +171,9 @@ void ScaleDistance::getCaAtom(Spacer* s, bool flag) { } } + + + +vector * ScaleDistance::get_ScalDist(){ + return ScD; +} diff --git a/Mobi/Sources/ScaleDistance.h b/Mobi/Sources/ScaleDistance.h index f3c9aa7..1eefc2f 100644 --- a/Mobi/Sources/ScaleDistance.h +++ b/Mobi/Sources/ScaleDistance.h @@ -44,6 +44,8 @@ class ScaleDistance { virtual ~ScaleDistance(); + vector * get_ScalDist(); + private: void getCaAtom (Spacer* s, bool flag); @@ -53,7 +55,7 @@ class ScaleDistance { vector models; vector CaVector1, CaVector2; vector < vector > dist_from_Ca_atoms; - vector * ScD; + vector * ScD = new vector ; }; } diff --git a/Mobi/Sources/ScaleDistance.o b/Mobi/Sources/ScaleDistance.o index 4b878b019d54af6f5f1d5744752eea3ce9063d6a..75910c78158c02807a2277a25f54879664606bb3 100644 GIT binary patch literal 27792 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 literal 26096 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 P<#$PPzDRnz7?=Ma7sb?J From ae7c490302bd94293d6df0ffa627f900d4daca31 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sun, 19 Jul 2015 16:29:10 +0200 Subject: [PATCH 16/61] Finito calcolo scale distance e media fra distanze, con tanti modelli esplode --- Mobi/APPS/mobi.cc | 16 ++++++---------- Mobi/APPS/mobi.o | Bin 27408 -> 28936 bytes Mobi/Sources/ScaleDistance.cc | 10 +++++----- Mobi/Sources/ScaleDistance.h | 4 ++-- Mobi/Sources/ScaleDistance.o | Bin 27792 -> 28112 bytes 5 files changed, 13 insertions(+), 17 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 77616f5..04bef50 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -25,7 +25,6 @@ // // // -----------------x----------------------------------------------------------- - #include #include #include @@ -137,7 +136,6 @@ int main(int argc, char* argv[]) { TmScore tm("./Mobi/data/TMscore", outputFile, v); - Protein* traslata = new Protein(); for (unsigned int i = 0; i < prot.size(); i++) @@ -164,19 +162,17 @@ int main(int argc, char* argv[]) { prot.printModels(outputFile); - //cout << "#########" << prot.models.size() << endl; - - ScaleDistance prova(prot, true , v); - + ScaleDistance prova(prot, false , v); - vector * SD = new vector ; + vector SD; SD = prova.get_ScalDist(); + for (vector::iterator everage = SD.begin(); everage != SD.end(); + everage++) { + cout << *everage << endl; - - cout << "#########" << SD->size() << endl; - + } return 0; } diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index f2c62cf776273064ee93c99ee8bcecd8fd01eb6c..efd6b0762353d76ee82bf6b9222b11e4ed6f548c 100644 GIT binary patch literal 28936 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 diff --git a/Mobi/Sources/ScaleDistance.cc b/Mobi/Sources/ScaleDistance.cc index 6db1778..7e668c7 100644 --- a/Mobi/Sources/ScaleDistance.cc +++ b/Mobi/Sources/ScaleDistance.cc @@ -94,8 +94,8 @@ ScaleDistance::ScaleDistance(const ProteinModels& modelli, bool standardDeviatio count++; } //cout << "SOMMA " << sum << " COUNT " << count << endl; - ScD->push_back((sum / count)); - cout << "media per il " << i << " atomo = " << ScD->back() << endl; + ScD.push_back((sum / count)); + cout << "media per il " << i << " atomo = " << ScD.back() << endl; } @@ -107,7 +107,7 @@ ScaleDistance::ScaleDistance(const ProteinModels& modelli, bool standardDeviatio cout << "#############################" << endl; - vector::iterator everage = ScD->begin(); + vector::iterator everage = ScD.begin(); for (unsigned int i = 0; i < num_atomi; i++) { sum=0; @@ -125,7 +125,7 @@ ScaleDistance::ScaleDistance(const ProteinModels& modelli, bool standardDeviatio standDev = sqrt(sum / count); - cout << "sum : " << sum << "COUNT" << count << endl; + cout << "sum : " << sum << " COUNT " << count << endl; cout << "media : " << *everage << endl; cout << "DEVSTADARD per il " << i << " atomo = " << standDev << endl; *everage = standDev; @@ -174,6 +174,6 @@ void ScaleDistance::getCaAtom(Spacer* s, bool flag) { -vector * ScaleDistance::get_ScalDist(){ +vector ScaleDistance::get_ScalDist(){ return ScD; } diff --git a/Mobi/Sources/ScaleDistance.h b/Mobi/Sources/ScaleDistance.h index 1eefc2f..ac14e06 100644 --- a/Mobi/Sources/ScaleDistance.h +++ b/Mobi/Sources/ScaleDistance.h @@ -44,7 +44,7 @@ class ScaleDistance { virtual ~ScaleDistance(); - vector * get_ScalDist(); + vector get_ScalDist(); private: void getCaAtom (Spacer* s, bool flag); @@ -55,7 +55,7 @@ class ScaleDistance { vector models; vector CaVector1, CaVector2; vector < vector > dist_from_Ca_atoms; - vector * ScD = new vector ; + vector ScD; }; } diff --git a/Mobi/Sources/ScaleDistance.o b/Mobi/Sources/ScaleDistance.o index 75910c78158c02807a2277a25f54879664606bb3..4e1ec55c76f4d2f9e820eb3388d8ced0272acdf0 100644 GIT binary patch delta 9451 zcmZ`-3tUxIx?g)A77uxxgNTR2>+m?hIi$wX)X3x^nwvs{P;$%%jVXxN2CsH=ZrPy} z>kM(jzL?6nm5y1CO_POo9j}(Cr1hI7t!V6JT4El^6ca7WVZOB=^0A$>e!u;#_5Hu+ z`qtWOKUzMO4u3ASxaIm$ujh`FeZ@1Tc=t~6o}8)p`zn>D=_?ig&&qYv>y?9H44ZOr zYPjCp)V}>Ei_-Y+edW`n17&_onZG2w%)h{TD1aWoN(EoJxNC{qbeZF5UK9!?5RZb=0y* zv{6>)8eztYXJG1ADvf-beDz9W{|c_EmNhM`R+{F{D$W1Gy5=Y0;HeY4{EKxywTRNBv4l;-;-CI7r)o%)Hg z`k!H?{=?*RZc?y$M8ZWL0K_FCF{SG=@z7i6m zCRjVvoX%TqlU=wI&WfaNekuHFQool5C8a7W{)1Y-x{Ds{k>=#jUbRehE= zO<`{h5mob_?Jv&@RQ|KSABX=|_TVr5{nOB8<96KY-VYUj`y%U|djq*wU`R}&YyMCD z{WvX-zF1%;Ca5&ea21vLwe6@hEngX^f$cFRQW*RgGgf*IMp^5nYW%l^r7jvo2uVzn1(qx@+uH|6oe~ zd)7yv#)>NK$3w7+rTzoj#Qg6B=73{p_K<V2lHdAYmCzo@0>V$X%1 z^8-ZZfvh_Ty1^8=RvQNSLx#uq`-=fk1qVYZJdY;hl{+_ixYkD3T zaIC5Z?nMua)U*Q&#Be|!s5J2X}TTJ{9SQi@b8x#K#^0)@ZF{CD3 zn*aTZVWmx>c>DF+l1m?cCl413!TY|`=CeVy>A)F5fjz~ify)sL+$+56GZjNRQxjh@ znAe<)8nDkCEDyw)_%R0W(+<$U54gE$z;8_aM<#y1iElIUn@l{I_|-b^(@*fga+AUW z6JLpZnSY;A>OgECR;)lMX%!n|(oZq*aVFl0yn<)d?l_0<2|NS>$B?LXYzcfM_`f63 zeeV}TvKo_2{3a8hVd7Vr_~nCnUtqytAW%7&*Os?Hfcj(y%LADvKF-8jO#BZ&(+StSa@S5dn|;vW-~Z5tBd_9g70v#3lY4-#l9NC`_kCD zNPaGzJsZg{r?Xcgc~>^u9ck&yX75Mx#vFDjQf|#*FGtB;S?uX(-j~H*jOLBm?6YX@ z+nmk5j^;bE*=si5fo3+|naz&acw+|p%EntWSZgfrOk>Z*@~$-YZtREh=~T997;p8k z?ZYfh9`^Py-r`}0hgo)Hu=B%sUnW}}Z)tR~4e@+OCOaDcbO;(em&h+W+15nf=VZqc z`AH``mB_z#vdf7+{;88an#4Pu?EjPaBTlwIiC;`*hm-h)RCXfCaz2%K5LjlGz{ccif$DVD}`wkKsQ#{DvN0%N1=cY4^jZrjwz5WsZckjAl{a$nP0^0t~RL1i-W^s5@cIC zbffNLXmUe=T%8Ve*zK%=t=QQzp&PrrTF4z+Am5k?b=d8#g{{~Xp$xmDC>vKGZ_9={ z?DCet)^P>WIS7m^lx;bXJ07tdsKc%rMc5VPKsR zbe>8dQt5h?{#m8F1ogg$UlW{hcZ-69@BQXtUAOyK`(*mZo&(n?rK|3a6ELb;;Z29 z3cGK;E)}=q6ui`LdF;0kt3qP+ZV>!<5PUd(XNo4o)X#JchbI>Di4@-*M8AXJ#puhJ z-TRP!huwFKNU68pAoyj1mk@7UUtE#xEd(#padVXpXgK`e9kD(Ix1nglme#qF;J-qd zk@;MLQ~g?kQ+*)#Y~trL4F`K=tmCq-BffL*!pmr3;GJQ2SaEBMW|j_vbtp|GQrzpT zOx0z~BW$G`gpRjX*Aa8P0WV`N^#mVF@XtX)&&P>pnpKyY)tMmD^J-SHA{A`rswP8h zmA%wMq~)k(+w%5l+ms`}XNlQ6DjE#7i{ohu5`r`y25#8ug6m9}_=x zzMm5PIYd7;Tts0$b&|BK4o#rqw5($ZPPa}G!RL|y6$Gbc@)3MCgNLeyLs?an?>z#G zhpsWNcs!m&6KgRaF9S~@cpAY+5Hhzd=#LiXno++7 zBB(}X1Amj?bjEMN>$B{>Hd?V)qz$& z8X!#*TyyKW2~HQNk>GTC%><|VpX#_+&@jBk+2?vj$B2L?6d;c1j4uSy|B2{Vqi>@U zZv3w-n%EfQ@lx?Jd?T3r?*xcf2f-l-{u->CZFjU2>8(Z>^wtIKDDBpz=I#6w^v<^X zLabKT6KYWUD=7JVTU&$0Vfn8I-V zZS%JTrz`e55{8Cv4WhrE=vR}p{;uKIruB)M)^Xxa%sxg>tBc??t!@&Argc7u{w1PM zPXVttPi9eUHRBR<8mbe5jm z?+H$G`vdVqmugcG{Vf`Q@t-zNyy+!Ix=xuDTzK zN#KWwK@q{XLwmK|v7bn3TA#zZYP)norKePiUvr4`3hIj;hK{g_Qr?J{QOb6LR}%ay zg3lm$FTrOLyr1AStFU-fVr;e=xClo^;3!RSO+pnx@Rs4ik2V1s;1%dyV3&%a;vT!N z$FAuZH=4%bqm|%Z1H`^h$IUldKhYQGm%d3^NP=c8{8K*>8m_$+)4L)rh(Usmi@;;> zGK!Kx^hIEOso6-PPyLT4`VR5P7MY1w7{s8I7|;L}LG-Ik`uZZUc|`x$7*Cym4tB+i*UyhK}0^shQX{Raq6{WK6iVglEzUKo1}ah$)lKd7UYAda3P_&sQ6 zEWsZMK91mf^nX2K$>>>hXaI+vd!l_82Y4n9dc&_P5gBa4o_^rU=xW_{TTAYf#UkJSk=#C@RxR_Nq4{rL=M$NIVy<7t0ZOxoT;%p?jTa*eMa32 zkWy=R&=o2p8I{8{lk^iJEreCIcKCB`6#mlmF1EwY+9<(A-!B|vQNj6)o(HAGjV^hBnotlInEz4f-H#MCo=SHO_D0@<%wb#O^bG!U{X% zOcPRv>PS0B#l}t+Ahv297oGlaQ1J$Wi=pwG)UV^B3c}AyRhzMoHQb{vtr&06kBcu& I1}Am?UlAMJ{Qv*} delta 9006 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 AyZ`_I From bd598d0587ebc661fdfa845bb3e8c637f47cf935 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Mon, 20 Jul 2015 20:29:18 +0200 Subject: [PATCH 17/61] fixed bugs, rinominata clase. --- Biopool/Sources/Spacer.cc | 31 +-- Mobi/APPS/mobi.cc | 16 +- Mobi/APPS/mobi.o | Bin 28936 -> 28656 bytes Mobi/Sources/Makefile | 4 +- Mobi/Sources/ScaleDistance.cc | 179 ------------------ Mobi/Sources/ScaleDistance.o | Bin 28112 -> 0 bytes Mobi/Sources/StandardDeviation.cc | 172 +++++++++++++++++ .../{ScaleDistance.h => StandardDeviation.h} | 14 +- Mobi/Sources/TmScore.cc | 1 - Mobi/Sources/TmScore.o | Bin 34576 -> 34576 bytes 10 files changed, 206 insertions(+), 211 deletions(-) delete mode 100644 Mobi/Sources/ScaleDistance.cc delete mode 100644 Mobi/Sources/ScaleDistance.o create mode 100644 Mobi/Sources/StandardDeviation.cc rename Mobi/Sources/{ScaleDistance.h => StandardDeviation.h} (81%) diff --git a/Biopool/Sources/Spacer.cc b/Biopool/Sources/Spacer.cc index b77fdc5..4a76026 100644 --- a/Biopool/Sources/Spacer.cc +++ b/Biopool/Sources/Spacer.cc @@ -1665,25 +1665,26 @@ void Spacer::setDSSP(bool verbose) { if (it != ss[i].end()) { // found a n-turn char pos_s = *it; int pos = atoi(&(pos_s)); - if (!ss[i + pos - 1].empty()) { - set::iterator it1 = ss[i + pos - 1].find( - turns[l]); - if (it1 != ss[i + pos - 1].end()) { // found the same n-turn after n-1 positions - bool helixBreak = false; - for (unsigned int m = i; m < (i + pos); m++) { - set::iterator it2 = ss[m].find(turns[l]); - if (it2 == ss[m].end()) { - helixBreak = true; - } + if(i+pos-1 >= ss.size()) + break; + set::iterator it1 = ss[i + pos - 1].find( + turns[l]); + if (it1 != ss[i + pos - 1].end()) { // found the same n-turn after n-1 positions + bool helixBreak = false; + for (unsigned int m = i; m < (i + pos); m++) { + set::iterator it2 = ss[m].find(turns[l]); + if (it2 == ss[m].end()) { + helixBreak = true; } - if (!helixBreak) { - for (unsigned int m = i; m < (i + pos); m++) { - ss[m].insert(helices[l]); - } + } + if (!helixBreak) { + for (unsigned int m = i; m < (i + pos); m++) { + ss[m].insert(helices[l]); } - break; } + break; } + } } // Set sheets (E) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 04bef50..905b3bc 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -26,11 +26,11 @@ // // -----------------x----------------------------------------------------------- #include -#include #include #include #include #include +#include using namespace Victor; using namespace Victor::Biopool; @@ -138,9 +138,9 @@ int main(int argc, char* argv[]) { Protein* traslata = new Protein(); - for (unsigned int i = 0; i < prot.size(); i++) - for (unsigned int j = 0; j < prot.size(); j++) - if (i != j) { + for (unsigned int i = 0; i < prot.size()-1; i++) + for (unsigned int j = i+1; j < prot.size(); j++) + { if (v) cout << "\n Lettura proteine da traslare:\n " << outputFile + (itosDEF(i)) @@ -158,15 +158,17 @@ int main(int argc, char* argv[]) { prot.addModels(*(prot.getSpacer(j))); + } - prot.printModels(outputFile); - ScaleDistance prova(prot, false , v); + //prot.printModels(outputFile); + + StandardDeviation std(prot, v); vector SD; - SD = prova.get_ScalDist(); + SD = std.get_ScalDist(); for (vector::iterator everage = SD.begin(); everage != SD.end(); everage++) { diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index efd6b0762353d76ee82bf6b9222b11e4ed6f548c..f0ed4dc35033d24d794eb880db626d762e2829f1 100644 GIT binary patch delta 6254 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 K;rg7P4F3h*JUz7l diff --git a/Mobi/Sources/Makefile b/Mobi/Sources/Makefile index beaa548..328f02c 100644 --- a/Mobi/Sources/Makefile +++ b/Mobi/Sources/Makefile @@ -27,10 +27,10 @@ INC_PATH = -I. -I../../tools -I../../Biopool/Sources # -SOURCES = ProteinModels.cc TmScore.cc ScaleDistance.cc +SOURCES = ProteinModels.cc TmScore.cc StandardDeviation.cc -OBJECTS = ProteinModels.o TmScore.o ScaleDistance.o +OBJECTS = ProteinModels.o TmScore.o StandardDeviation.o TARGETS = diff --git a/Mobi/Sources/ScaleDistance.cc b/Mobi/Sources/ScaleDistance.cc deleted file mode 100644 index 7e668c7..0000000 --- a/Mobi/Sources/ScaleDistance.cc +++ /dev/null @@ -1,179 +0,0 @@ -/* - * ScaleDistance.cc - * - * Created on: 11 lug 2015 - * Author: riccardo - */ -#include - -using namespace Victor; -using namespace Victor::Mobi; -using namespace Victor::Biopool; - -ScaleDistance::ScaleDistance(const ProteinModels& modelli, bool standardDeviation ,bool verbose) : - standardDev(standardDeviation), verbose(verbose), models(modelli.models) { - - Spacer* primo_modello = new Spacer; - Spacer* secondo_modello = new Spacer; - - unsigned int num_atomi = 0; - double ScalD, distance= -1.0; - - if (models.size() != 0) - num_atomi = models[0].sizeAmino(); - else - ERROR("Nessun modello presente nella proteina", exception); - - - - - vector > dist_from_Ca_atoms(num_atomi, - vector(0.0)); - - cout << "################# " << dist_from_Ca_atoms.size() << " " << dist_from_Ca_atoms[0].size() << endl; - - - if (verbose){ - cout << "Numero di modelli presenti: " << models.size() << endl; - cout << "Ogni modello ha un numero di atomi pari a: " << num_atomi << endl; - } - //scorro i modelli e per ognuno creo il vettore di atomi - unsigned int u = 0; - - while (u < (models.size())) { - //if (verbose) - //cout << "#modello numero: " << u << endl; - if (verbose) - cout << "#Distanza tra modello: " << u; - - primo_modello = &models[u]; - getCaAtom(primo_modello, true); - u++; - //if (verbose) - //cout << "#modello numero: " << u << endl; - - if (verbose) - cout << " e modello: " << u << endl; - - secondo_modello = &models[u]; - getCaAtom(secondo_modello, false); - u++; - - - //cout << "GRandezza vettore " << dist_from_Ca_atoms[0].size() << endl; - - for (unsigned int i = 0; i < num_atomi; i++) { - distance = CaVector1[i].distance(CaVector2[i]); - ScalD = 1.0 / (pow (( 1.0 + (distance/4.0) ), 2.0)); - dist_from_Ca_atoms[i].push_back(ScalD); - if (verbose) - cout << dist_from_Ca_atoms[i].back() << endl; - } - - //cout << "GRAndezza vettore " << dist_from_Ca_atoms[0].size() << endl; - - CaVector1.clear(); - CaVector2.clear(); - - } - - - - int count; - double sum; - for (unsigned int i = 0; i < num_atomi; i++) { - count=0; - sum=0; - cout << "Grandezza vettore " << dist_from_Ca_atoms[0].size() << endl; - vector::iterator atom = dist_from_Ca_atoms[i].begin(); - while (atom != dist_from_Ca_atoms[i].end()){ - - sum = sum + (*atom); - - atom++; - count++; - } - //cout << "SOMMA " << sum << " COUNT " << count << endl; - ScD.push_back((sum / count)); - cout << "media per il " << i << " atomo = " << ScD.back() << endl; - - - } - - if (standardDev){ - - - double standDev=-1; - - cout << "#############################" << endl; - - vector::iterator everage = ScD.begin(); - - for (unsigned int i = 0; i < num_atomi; i++) { - sum=0; - count=0; - vector::iterator atom = dist_from_Ca_atoms[i].begin(); - - - while (atom != dist_from_Ca_atoms[i].end()){ - cout << "Stampo distanza fra atomi " << *atom << endl; - sum += (pow ( ((*atom) - (*everage) ) , 2.0 )); - atom++; - count++; - - } - - standDev = sqrt(sum / count); - - cout << "sum : " << sum << " COUNT " << count << endl; - cout << "media : " << *everage << endl; - cout << "DEVSTADARD per il " << i << " atomo = " << standDev << endl; - *everage = standDev; - - everage++; - - - } - - - } - - - - - - -} - -ScaleDistance::~ScaleDistance() { -} - - -void ScaleDistance::getCaAtom(Spacer* s, bool flag) { - -//per un modello fissato creo il vettore di atomi - AminoAcid* a = new AminoAcid; - - for (unsigned int u = 0; u < s->sizeAmino(); u++) { - a = &(s->getAmino(u)); - - - unsigned int i = 1; - - if (flag) - this->CaVector1.push_back(a->getAtom(i)); - else - this->CaVector2.push_back(a->getAtom(i)); - - if (a->getAtom(i).getCode() != CA) - ERROR("L'atomo trovato non è un carbonio alfa.", exception); - - } - -} - - - -vector ScaleDistance::get_ScalDist(){ - return ScD; -} diff --git a/Mobi/Sources/ScaleDistance.o b/Mobi/Sources/ScaleDistance.o deleted file mode 100644 index 4e1ec55c76f4d2f9e820eb3388d8ced0272acdf0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28112 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 diff --git a/Mobi/Sources/StandardDeviation.cc b/Mobi/Sources/StandardDeviation.cc new file mode 100644 index 0000000..a0933f9 --- /dev/null +++ b/Mobi/Sources/StandardDeviation.cc @@ -0,0 +1,172 @@ +/* + * ScaleDistance.cc + * + * Created on: 11 lug 2015 + * Author: riccardo + */ +#include "StandardDeviation.h" + +using namespace Victor; +using namespace Victor::Mobi; +using namespace Victor::Biopool; + +StandardDeviation::StandardDeviation(const ProteinModels& modelli ,bool verbose) : + verbose(verbose), models(modelli.models) {} + +StandardDeviation::~StandardDeviation() { +} + + +void StandardDeviation::getCaAtom(Spacer* s, bool flag) { + +//per un modello fissato creo il vettore di atomi + AminoAcid* a = new AminoAcid; + + for (unsigned int u = 0; u < s->sizeAmino(); u++) { + a = &(s->getAmino(u)); + + + unsigned int i = 1; + + if (flag) + this->CaVector1.push_back(a->getAtom(i)); + else + this->CaVector2.push_back(a->getAtom(i)); + + if (a->getAtom(i).getCode() != CA) + ERROR("L'atomo trovato non è un carbonio alfa.", exception); + + } + +} + + + +vector StandardDeviation::get_ScalDist(){ + + Spacer* primo_modello = new Spacer; + Spacer* secondo_modello = new Spacer; + + unsigned int num_atomi = 0; + double ScalD, distance= -1.0; + + if (models.size() != 0) + num_atomi = models[0].sizeAmino(); + else + ERROR("Nessun modello presente nella proteina", exception); + + + + + vector > dist_from_Ca_atoms(num_atomi, + vector(0.0)); + + cout << "################# " << dist_from_Ca_atoms.size() << " " << dist_from_Ca_atoms[0].size() << endl; + + + if (verbose){ + cout << "Numero di modelli presenti: " << models.size() << endl; + cout << "Ogni modello ha un numero di atomi pari a: " << num_atomi << endl; + } + //scorro i modelli e per ognuno creo il vettore di atomi + unsigned int u = 0; + + while (u < (models.size())) { + //if (verbose) + //cout << "#modello numero: " << u << endl; + if (verbose) + cout << "#Distanza tra modello: " << u; + + primo_modello = &models[u]; + getCaAtom(primo_modello, true); + u++; + //if (verbose) + //cout << "#modello numero: " << u << endl; + + if (verbose) + cout << " e modello: " << u << endl; + + secondo_modello = &models[u]; + getCaAtom(secondo_modello, false); + u++; + + + //cout << "GRandezza vettore " << dist_from_Ca_atoms[0].size() << endl; + + for (unsigned int i = 0; i < num_atomi; i++) { + distance = CaVector1[i].distance(CaVector2[i]); + ScalD = 1.0 / (1.0 + ( pow ((distance/4.0), 2.0))); + dist_from_Ca_atoms[i].push_back(ScalD); + if (verbose) + cout << dist_from_Ca_atoms[i].back() << endl; + } + + //cout << "GRAndezza vettore " << dist_from_Ca_atoms[0].size() << endl; + + CaVector1.clear(); + CaVector2.clear(); + + } + + + + int count; + double sum; + for (unsigned int i = 0; i < num_atomi; i++) { + count=0; + sum=0; + cout << "Grandezza vettore " << dist_from_Ca_atoms[0].size() << endl; + vector::iterator atom = dist_from_Ca_atoms[i].begin(); + while (atom != dist_from_Ca_atoms[i].end()){ + + sum = sum + (*atom); + + atom++; + count++; + } + //cout << "SOMMA " << sum << " COUNT " << count << endl; + ScD.push_back((sum / count)); + cout << "media per il " << i << " atomo = " << ScD.back() << endl; + + + } + + + + double standDev=-1; + + cout << "#############################" << endl; + + vector::iterator everage = ScD.begin(); + + for (unsigned int i = 0; i < num_atomi; i++) { + sum=0; + count=0; + vector::iterator atom = dist_from_Ca_atoms[i].begin(); + + + while (atom != dist_from_Ca_atoms[i].end()){ + cout << "Stampo distanza fra atomi " << *atom << endl; + sum += (pow ( ((*atom) - (*everage) ) , 2.0 )); + atom++; + count++; + + } + + standDev = sqrt(sum / count); + + cout << "sum : " << sum << " COUNT " << count << endl; + + cout << "media : " << *everage << endl; + cout << "DEVSTADARD per il " << i << " atomo = " << standDev << endl; + *everage = standDev; + + everage++; + + + } + + + + return ScD; +} diff --git a/Mobi/Sources/ScaleDistance.h b/Mobi/Sources/StandardDeviation.h similarity index 81% rename from Mobi/Sources/ScaleDistance.h rename to Mobi/Sources/StandardDeviation.h index ac14e06..05ee50f 100644 --- a/Mobi/Sources/ScaleDistance.h +++ b/Mobi/Sources/StandardDeviation.h @@ -18,8 +18,8 @@ * @version 0.1 */ -#ifndef MOBI_SOURCES_SCALEDISTANCE_H_ -#define MOBI_SOURCES_SCALEDISTANCE_H_ +#ifndef MOBI_SOURCES_STANDARDDEVIATION_H_ +#define MOBI_SOURCES_STANDARDDEVIATION_H_ #include #include @@ -34,14 +34,14 @@ namespace Mobi { * @brief Extends Protein class with functionalities related to manipulation of NMR model and models comparations. * Scale Distance metric is provided. */ -class ScaleDistance { +class StandardDeviation { public: // CONSTRUCTORS/DESTRUCTOR: - ScaleDistance(const ProteinModels& _orig, bool _standardDeviation = false , bool _verbose = false); + StandardDeviation(const ProteinModels& _orig , bool _verbose = false); - virtual ~ScaleDistance(); + virtual ~StandardDeviation(); vector get_ScalDist(); @@ -51,7 +51,7 @@ class ScaleDistance { private: - bool standardDev,verbose; + bool verbose; vector models; vector CaVector1, CaVector2; vector < vector > dist_from_Ca_atoms; @@ -61,4 +61,4 @@ class ScaleDistance { } } -#endif /* MOBI_SOURCES_SCALEDISTANCE_H_ */ +#endif /* MOBI_SOURCES_STANDARDDEVIATION_H_ */ diff --git a/Mobi/Sources/TmScore.cc b/Mobi/Sources/TmScore.cc index e234edf..17400bf 100644 --- a/Mobi/Sources/TmScore.cc +++ b/Mobi/Sources/TmScore.cc @@ -194,7 +194,6 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { - } } } else diff --git a/Mobi/Sources/TmScore.o b/Mobi/Sources/TmScore.o index b14685c0df222854975b2db1bbcc7effffb95215..0a816dcbb284f259a5abb07e3f40fe0c96b334ca 100644 GIT binary patch delta 27 jcmbQx$26gjX~P;O#?zbEGCdV#JTZAKQ|V?7Nsc@KotO%d delta 27 jcmbQx$26gjX~P;O#xtAOGCdV#JUMwSQ|V?7Nsc@KowEv) From b7e67cf50170ee9b87e44204761e31e2ff6f5eb0 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Tue, 21 Jul 2015 15:29:46 +0200 Subject: [PATCH 18/61] media e standard deviation --- Mobi/APPS/mobi.cc | 13 ++- Mobi/APPS/mobi.o | Bin 28656 -> 29512 bytes Mobi/Sources/StandardDeviation.cc | 113 +++++++++++++++++------ Mobi/Sources/StandardDeviation.h | 5 +- Mobi/Sources/TmScore.cc | 148 ------------------------------ Mobi/Sources/TmScore.o | Bin 34576 -> 34576 bytes 6 files changed, 99 insertions(+), 180 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 905b3bc..df54afa 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -167,9 +167,20 @@ int main(int argc, char* argv[]) { StandardDeviation std(prot, v); vector SD; + vector EVERAGE; - SD = std.get_ScalDist(); + EVERAGE = std.get_everage_distance(); + cout << "EVERAGE" << endl; + for (vector::iterator everage = EVERAGE.begin(); everage != EVERAGE.end(); + everage++) { + cout << *everage << endl; + + } + + SD = std.get_standard_deviation(); + + cout << "STANDARD DEVIATION" << endl; for (vector::iterator everage = SD.begin(); everage != SD.end(); everage++) { cout << *everage << endl; diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index f0ed4dc35033d24d794eb880db626d762e2829f1..0d5933c3989c65afc5fe940476a2730d6b47ca84 100644 GIT binary patch delta 5834 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 StandardDeviation::get_everage_distance(){ + + dist_everage.clear(); + + Spacer* primo_modello = new Spacer; + Spacer* secondo_modello = new Spacer; + + unsigned int num_atomi = 0; + double ScalD, distance= -1.0; + + if (models.size() != 0) + num_atomi = models[0].sizeAmino(); + else + ERROR("Nessun modello presente nella proteina", exception); + + + + + vector > dist_from_Ca_atoms(num_atomi, + vector(0.0)); + + + + if (verbose){ + cout << "Numero di modelli presenti: " << models.size() << endl; + cout << "Ogni modello ha un numero di atomi pari a: " << num_atomi << endl; + } + //scorro i modelli e per ognuno creo il vettore di atomi + unsigned int u = 0; + + while (u < (models.size())) { + + primo_modello = &models[u]; + getCaAtom(primo_modello, true); + u++; + + secondo_modello = &models[u]; + getCaAtom(secondo_modello, false); + u++; + + + for (unsigned int i = 0; i < num_atomi; i++) { + distance = CaVector1[i].distance(CaVector2[i]); + ScalD = 1.0 / (1.0 + ( pow ((distance/4.0), 2.0))); + dist_from_Ca_atoms[i].push_back(ScalD); + } + + + CaVector1.clear(); + CaVector2.clear(); + + } -vector StandardDeviation::get_ScalDist(){ + + int count; + double sum; + for (unsigned int i = 0; i < num_atomi; i++) { + count=0; + sum=0; + vector::iterator atom = dist_from_Ca_atoms[i].begin(); + while (atom != dist_from_Ca_atoms[i].end()){ + + sum = sum + (*atom); + + atom++; + count++; + } + dist_everage.push_back((sum / count)); + + + } + +return dist_everage; + +} + +vector StandardDeviation::get_standard_deviation(){ + + dist_everage.clear(); + ScD.clear(); Spacer* primo_modello = new Spacer; Spacer* secondo_modello = new Spacer; @@ -61,7 +139,6 @@ vector StandardDeviation::get_ScalDist(){ vector > dist_from_Ca_atoms(num_atomi, vector(0.0)); - cout << "################# " << dist_from_Ca_atoms.size() << " " << dist_from_Ca_atoms[0].size() << endl; if (verbose){ @@ -72,36 +149,22 @@ vector StandardDeviation::get_ScalDist(){ unsigned int u = 0; while (u < (models.size())) { - //if (verbose) - //cout << "#modello numero: " << u << endl; - if (verbose) - cout << "#Distanza tra modello: " << u; primo_modello = &models[u]; getCaAtom(primo_modello, true); u++; - //if (verbose) - //cout << "#modello numero: " << u << endl; - - if (verbose) - cout << " e modello: " << u << endl; secondo_modello = &models[u]; getCaAtom(secondo_modello, false); u++; - //cout << "GRandezza vettore " << dist_from_Ca_atoms[0].size() << endl; - for (unsigned int i = 0; i < num_atomi; i++) { distance = CaVector1[i].distance(CaVector2[i]); ScalD = 1.0 / (1.0 + ( pow ((distance/4.0), 2.0))); dist_from_Ca_atoms[i].push_back(ScalD); - if (verbose) - cout << dist_from_Ca_atoms[i].back() << endl; - } + } - //cout << "GRAndezza vettore " << dist_from_Ca_atoms[0].size() << endl; CaVector1.clear(); CaVector2.clear(); @@ -115,7 +178,6 @@ vector StandardDeviation::get_ScalDist(){ for (unsigned int i = 0; i < num_atomi; i++) { count=0; sum=0; - cout << "Grandezza vettore " << dist_from_Ca_atoms[0].size() << endl; vector::iterator atom = dist_from_Ca_atoms[i].begin(); while (atom != dist_from_Ca_atoms[i].end()){ @@ -124,9 +186,7 @@ vector StandardDeviation::get_ScalDist(){ atom++; count++; } - //cout << "SOMMA " << sum << " COUNT " << count << endl; - ScD.push_back((sum / count)); - cout << "media per il " << i << " atomo = " << ScD.back() << endl; + dist_everage.push_back((sum / count)); } @@ -135,9 +195,8 @@ vector StandardDeviation::get_ScalDist(){ double standDev=-1; - cout << "#############################" << endl; - vector::iterator everage = ScD.begin(); + vector::iterator everage = dist_everage.begin(); for (unsigned int i = 0; i < num_atomi; i++) { sum=0; @@ -146,7 +205,6 @@ vector StandardDeviation::get_ScalDist(){ while (atom != dist_from_Ca_atoms[i].end()){ - cout << "Stampo distanza fra atomi " << *atom << endl; sum += (pow ( ((*atom) - (*everage) ) , 2.0 )); atom++; count++; @@ -155,11 +213,7 @@ vector StandardDeviation::get_ScalDist(){ standDev = sqrt(sum / count); - cout << "sum : " << sum << " COUNT " << count << endl; - - cout << "media : " << *everage << endl; - cout << "DEVSTADARD per il " << i << " atomo = " << standDev << endl; - *everage = standDev; + ScD.push_back(standDev); everage++; @@ -167,6 +221,5 @@ vector StandardDeviation::get_ScalDist(){ } - return ScD; } diff --git a/Mobi/Sources/StandardDeviation.h b/Mobi/Sources/StandardDeviation.h index 05ee50f..970b8ee 100644 --- a/Mobi/Sources/StandardDeviation.h +++ b/Mobi/Sources/StandardDeviation.h @@ -44,7 +44,9 @@ class StandardDeviation { virtual ~StandardDeviation(); - vector get_ScalDist(); + vector get_everage_distance(); + vector get_standard_deviation(); + private: void getCaAtom (Spacer* s, bool flag); @@ -55,6 +57,7 @@ class StandardDeviation { vector models; vector CaVector1, CaVector2; vector < vector > dist_from_Ca_atoms; + vector dist_everage; vector ScD; }; diff --git a/Mobi/Sources/TmScore.cc b/Mobi/Sources/TmScore.cc index 17400bf..cce4e33 100644 --- a/Mobi/Sources/TmScore.cc +++ b/Mobi/Sources/TmScore.cc @@ -87,59 +87,6 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { ////////////////////////////////////////////////////////////////////////// int status; -// ifstream inFile(nativeFile.c_str()); -// ofstream out ((outputTmScore+"11111").c_str()); -// stringstream buffer; -// string line; -// -// if (verbose) { -// cout << "Conversione file native file per renderlo leggibile" << endl; -// } -// bool flag=false; -// -// while (inFile) { -// line = readLine(inFile); -// if (line.substr(0, 6) == "ATOM " && !flag) { -// buffer << "MODEL 1" << endl; -// out << "MODEL 1" << endl; -// buffer << line << endl; -// out << line << endl; -// flag=true; -// } else if (line.substr(0, 6) == "ATOM " && flag) { -// buffer << line << endl; -// out << line << endl; -// } else if (line.substr(0, 3) == "TER") { -// buffer << line << endl; -// buffer << "ENDMDL" << endl; -// out << line << endl; -// out << "ENDMDL" << endl; -// -// break; -// } -// } -// if (verbose) { -// cout << "Fine lettura file nativo" << endl; -// } -// -// buffer.clear(); -// out.close(); -// -// cout << "AAAAAAAAAAAAAAAAAAAAAAAA" << endl; -// -// PdbLoader loader (buffer); -// -// if (!verbose) -// loader.setNoVerbose(); -// -// loader.setModel(1); -// cout << "BBBBBBBBBBBBBBBBBBBBBBBBBB" << endl; -// loader.checkModel(); -// cout << "CCCCCCCCCCCCCCCCCCCCCCCCCCCCc" << endl; -// Protein temp; -// temp.load(loader); -// unsigned int d=0; -// sp[0]=*(temp.getSpacer(d)); - wait(&status); remove(outputTmScore.c_str()); @@ -203,98 +150,3 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { exception); return prot; } - -//void TmScore::TMImpose(ProteinModels& prot, unsigned int model, unsigned int native, ProteinModels** imposedModel) { -// -// stringstream sstm; -// sstm << "TMScore between models " << model << " and " << native; -// DEBUG_MSG(sstm.str()); -// -// //Save spacers in pdb files -// std::ofstream fout; -// PdbSaver ps(fout); -// fout.open((tmp + TMTMP_IN1).c_str()); -// ps.saveSpacer(prot.getModel(model)); -// ps.endFile(); -// fout.close(); -// fout.open((tmp + TMTMP_IN2).c_str()); -// ps.saveSpacer(prot.getModel(native)); -// ps.endFile(); -// fout.close(); -// -// //Call TMScore binary -// return TMImpose((tmp + TMTMP_IN1), (tmp + TMTMP_IN2), imposedModel); -//} -// -//Spacer* TmScore::spacerFromTMOutput(string pdbFile) { -// if (access(pdbFile.c_str(), R_OK) != 0) -// ERROR("Cannot read pdb file to fix", exception); -// -// ifstream inFile(pdbFile.c_str()); -// stringstream buffer; -// string line; -// while (inFile) { -// line = readLine(inFile); -// if (line.substr(0, 16) == "REMARK TM-score") { -// buffer << line << endl; -// if (line.substr(6, 8) == "TM-score") -// buffer << "MODEL 1" << endl; -// } else if (line.substr(0, 6) == "ATOM ") { -// buffer << line << endl; -// } else if (line.substr(0, 3) == "TER") { -// buffer << line << endl; -// buffer << "ENDMDL" << endl; -// break; -// } -// } -// buffer.clear(); -// buffer.seekg(0); -// //Load from memory buffer -// PdbLoader pl(buffer); -// if (!verbose) -// pl.setNoVerbose(); -// //Load and return protein object -// //*imposedModel = new ProteinModels(); -// pl.setModel(1); -// pl.checkModel(); -// Protein prot; -// pl.loadProtein(prot); -// unsigned int d=0; -// return prot.getSpacer(d); -//} - -//char buffer[2048]; -// bool flag=true; -// //la read implementa un sync al suo interno, questo mi permette di aspettare l'output del figlio senza pensieri -// while(flag){ -// int a=read(pipefd[0], buffer, sizeof(buffer)); -// if ( a> 0) { -// if (this->verbose) cout << "Accesso alla read." <verbose) cout << "valore dello score: " << score <verbose) cout << "valore dello score: " << score <6_fq~2(xY$Bmx1GldS@E Ivj`aoZo5t_B9ra{5R*I>6_fq~2(xY$Bmx1*ldS@E Ivj`aoZp?!b5dZ)H From 3d573f75d4609e078769c139fc5d9ea6dc1b2477 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Tue, 21 Jul 2015 17:52:28 +0200 Subject: [PATCH 19/61] calcolati angoli PHI e PSI (da verificare l'output). Media e deviazione standard sulle distanze ok. --- Mobi/APPS/mobi.cc | 107 +++++++++++++++++---------- Mobi/APPS/mobi.o | Bin 29512 -> 23240 bytes Mobi/Sources/ProteinModels.cc | 11 +++ Mobi/Sources/ProteinModels.h | 1 + Mobi/Sources/ProteinModels.o | Bin 56536 -> 58392 bytes Mobi/Sources/StandardDeviation.cc | 116 +++++++++++++++++++++++++++++- Mobi/Sources/StandardDeviation.h | 6 ++ 7 files changed, 201 insertions(+), 40 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index df54afa..23f21f4 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -95,6 +95,8 @@ int main(int argc, char* argv[]) { PdbLoader pl(inFile); // creates the PdbLoader object ProteinModels prot; + + // Protein prot; if (v) { @@ -132,60 +134,91 @@ int main(int argc, char* argv[]) { ///////////////////////////////////////////////////////////////////// - unsigned int d = 0; +// unsigned int d = 0; +// +// TmScore tm("./Mobi/data/TMscore", outputFile, v); +// +// Protein* traslata = new Protein(); +// +// for (unsigned int i = 0; i < prot.size()-1; i++) +// for (unsigned int j = i+1; j < prot.size(); j++) +// { +// if (v) +// cout << "\n Lettura proteine da traslare:\n " +// << outputFile + (itosDEF(i)) +// << outputFile + (itosDEF(j)) << endl; +// traslata = tm.TmImpose(outputFile + (itosDEF(i)), +// outputFile + (itosDEF(j))); +// if (traslata != NULL) { +// +// prot.addModels(*(traslata->getSpacer(d))); +// } else +// ERROR("Errore nella creazione della proteina traslata", +// exeption); +// if (v) +// cout << "\n ###Caricamento proteina modello### " << endl; +// +// prot.addModels(*(prot.getSpacer(j))); +// +// +// } +// +// prot.printModels(outputFile); +// +// StandardDeviation std(prot, v); +// vector SD; +// +// vector EVERAGE; +// +// EVERAGE = std.get_everage_distance(); +// +// cout << "EVERAGE" << endl; +// for (vector::iterator everage = EVERAGE.begin(); everage != EVERAGE.end(); +// everage++) { +// cout << *everage << endl; +// +// } +// +// +// SD = std.get_standard_deviation(); +// cout << "STANDARD DEVIATION" << endl; +// for (vector::iterator walk = SD.begin(); walk != SD.end(); +// walk++) { +// cout << *walk << endl; +// } + - TmScore tm("./Mobi/data/TMscore", outputFile, v); +/////////////////////////////////////////////////// - Protein* traslata = new Protein(); - for (unsigned int i = 0; i < prot.size()-1; i++) - for (unsigned int j = i+1; j < prot.size(); j++) - { - if (v) - cout << "\n Lettura proteine da traslare:\n " - << outputFile + (itosDEF(i)) - << outputFile + (itosDEF(j)) << endl; - traslata = tm.TmImpose(outputFile + (itosDEF(i)), - outputFile + (itosDEF(j))); - if (traslata != NULL) { - prot.addModels(*(traslata->getSpacer(d))); - } else - ERROR("Errore nella creazione della proteina traslata", - exeption); - if (v) - cout << "\n ###Caricamento proteina modello### " << endl; - prot.addModels(*(prot.getSpacer(j))); + StandardDeviation std(prot, v); + vector ANGLE_PHI; + ANGLE_PHI=std.get_StandarDev_angle_PHI(); - } + cout << "STANDARD DEVIATION" << endl; + for (vector::iterator walk = ANGLE_PHI.begin(); walk != ANGLE_PHI.end(); + walk++) { + cout << *walk << endl; - //prot.printModels(outputFile); + } - StandardDeviation std(prot, v); - vector SD; - vector EVERAGE; + vector ANGLE_PSI; + ANGLE_PSI=std.get_StandarDev_angle_PSI(); - EVERAGE = std.get_everage_distance(); - cout << "EVERAGE" << endl; - for (vector::iterator everage = EVERAGE.begin(); everage != EVERAGE.end(); - everage++) { - cout << *everage << endl; + cout << "STANDARD DEVIATION" << endl; + for (vector::iterator walk = ANGLE_PSI.begin(); walk != ANGLE_PSI.end(); + walk++) { + cout << *walk << endl; } - SD = std.get_standard_deviation(); - cout << "STANDARD DEVIATION" << endl; - for (vector::iterator everage = SD.begin(); everage != SD.end(); - everage++) { - cout << *everage << endl; - - } return 0; } diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index 0d5933c3989c65afc5fe940476a2730d6b47ca84..5683a484eff99652c20ce2489af58c06be6a01c8 100644 GIT binary patch literal 23240 zcmd5^3v^S*nZCAgVhGrVKuVhwZW6VHZDTAj29uYCEx0PiILMF$3Kv2*i1C%eKycTj}Xgp%%{%Buy z8Y-HR`?-<(?!RME)Stl8#v{gX85WG;zSG8z<5(QtrVl(@B52P1cFGT;xmTtZiSGr%S2C& z;k%adT4Rkdf*~-D(tG9@!;SMeu+TW}!xm%Usj7`fo)pEATdRzr6ZQ=QPmiCiJX|_7 zdiM!q#P(M@q4S*yME(NNen#~5;nufCK02N=-pZXkbBI@dsQo4Of6#6JGHHMA7f$!j z*^k4_#Qmy%JjRF~;-*jRM@w*ZNSmy8r`qFM|t&wnq>iWhN;pWh$>gsBJr=ETKzv=VuJ>A*_Egr=Q$2RN$F7DJz`Jz4%Sxm*txLPrO2ks# zmTsr?)u8KY4K-HBVz3Y`)3s10lgcd9qeiN~y7OOGevA9M=ah2mow ztynUZNOi`eddupy)fjz{ChOeTyrJExgdGQecUXx;T*tprJ!@OpY*bHYQnnROMn9rM z3ovZWK<}bD7y_M++dc7YOjslB=!lcMbw?liBns{lqnQ^jr55bEF69iZzGhup>$I_*uM;~#lQG;<-aK4w4BreBq{_%W(>(uWWByyl z;XnC|!*BVF`lH)E(LCH(-kcj1umjC8hF-25+7EJ#++F2H?zxSdf*%WR3T{49IkySG zq0#V&eN?L)I)EheUo}Q*faJs17gn%UBRAAG=dJ~@(5<`5$JT?G z%DMf>YaBl1YtH@7$i3)@$h~6tt`|fBAY%L5$jqZi543_19RWJR!_9th$T4I7yP{(Q zzkMt0tMy|)ojz6$o`RiZ>~f(I{gFG~oO?}50SRDb ziUv?B?6(M@Z?!}CN9?$;5SNRcpkO}^HIDP|1(mVmrRQL4&wbKA)foAle^)6OHu6b- zt8u)^ucH_&)W|{u7997CGy@T=<5NR{Q6u+bXMe}$+)-n=$=}*M@>TyRYzED_-{KA- zm>LElKq?@L2S8m(<>1cAWTqoBKlIshv_W^!VcV}CCpAaA6+ ziSiKTD=1$HIno=HhY9~E8X#$fVi59MAa@RP#)!+lk-i$?QDb<}-!F`! zzJjDKV8eu+NV9SuEBCYVPFco71n}&lx}#v^pcoEO2@Sq%PXojH!OoKJAX&rCJ)%bk z@K7xL$%YeH(W!zpcZ@aQ0KpQ_aM~Dtu{YfisO!CZ|;X6njLEzh#P~gq4Lm4CISMs zK~$dv8dyAz{r+pPzCoWc_OR~;cOTA%nnKVGjaCkg3z`YAm>S5p8$>!5f-tO16b2*j zfY2zU(jXi?FxPFh2-V+%6EErHZSB`G8Yjll)qvevga8@z$C%pQZhzXs{ap1dkS8gEiIy8$*7*_ZB<05xAXw&{OT$ z@Oj$5j@luJ-~bQP49&&)2RSBVIDOg}I5w5Wz#%v=6`ytJKReT_Wz3ReZV+70K|J#Xh(}}CF~4vqL1Zu5m+ym^lOT-x&DKS1 z$***BN5pY$K)*WfVY3qfHd&nUchdo?7jy4;3J(T>QRftQ#4#mzWa7$j4r^@xoczX* zu`{R0jtLZw5fdN^bfH=N5%H5ZZq1|NX^K!VP5 zC?|6e;-SY>S_Gva>bBEUPcZ*l22B*?4iETL#1QxfPNRcQ!NMdO#tw+LAi`t2fCUG1 zZov~T;Ns%=(`j{2|6^kHp=I0=K4jx@xK3&i>~LvD*(n802L@5^dC{#n|_vM|CY23dq5bQmvYj)uhsw&{nWg<_*|VhwtF*_;%f2&9 z`$c&flpmN}c67S-*yOUeXKE)Vf4&4NBbUXY;lZiZ2WD#jGqvowncBW-Wv@=xPE0F% zaHe)@+UHB4vZoTcpR7c&&sL&c|5k;_p6M`cAD=!2ilfs}^h?u`_tcC>O2E7?%Fs}j}-?C2h8)L%${YI2D4c{AU!HTL#MY%Q` ziti9E>~E^58YtZ|rJ_7|nGX1DTEE1406YVwD=YNU)+rTLK_tSCp@~49KxR`-uO8P)3=Xpg(e~O73iJ79)8ntO}auljDhf^dkc4Z$Qu_EP&jR zQjmY25A@tKDOfRYplnS=|5V?5%RzTzg&vf;p~sY}v)jAvXuDROwKGoMB}*AA5v{hZ zK3l8CmswhMdp4_8=h13&gJQNcEe!Q)f>TXXpMZ(AGLz~_ht{@4YRtt>`Fw1FMaUP4 zcUX;GFpC}D`a=D}_=DZ?WGWbocMyM}eqR0>p+6ms!J;4xuZuX93*&5#cSe(>wvH<2 zvotL*3d0Tp72`goT*B$mi4MQ$0Bx*1u3bE6Z zOvLZ765Bae98dMF9qrAa-^w^4Rp37-t)nZ2L5pD>s1AS{R$c1S8nNqoEnM}(9g%3b zBNU28LTgt=0w$-++VEDhCrwa18Mn=7CKH7objD())fcnUwh1#RVM%2~N}A0LZDGZH z2}ur^E^U!>5aEO@h+D6wgty$?RuU#|5?;`?EV8=Ht(j;y7}|*wP%Z_3 zN&YS@Pt!dFG!Q2Doa>=}Equg!#c~zD;lW?e_@o>af2#-ovWwuC`yRI+`ylnoT%~`D zhko2MB%jPx{9PXWH(mt499(YyO&7u6=b``Ri{S6~;BUAH{+%BD!HeME<-za22>u5= z_?s_+f42ue#-to~nXAVC5fA=PUj+YN5B~m(;D5q{e~Aab4j3L|E`bkEqf}W$XB^p9 zB@2{a3AywIZ_<}jO&otT4d))NGculMQ!}2OPz8|@s%fvg^vVXeu8%+i%2e^Y#kl$F zfEQ^lk%wj|i$ry4uY}$G$GZt`nMkYClZWgl_8-r^Ql7-|!P-lI73p`I<<@_{f?vNt z{{K?&*IXd~bTHn_etaj4>3sIDQt-E4Apekpf6E2(A64+DFOa_k=)C&he}VjA1^+JM zm(Nd*H=XA^S;o8x=)B@@DaBt65o7$#g^xS_GEzU$$?QSWFP_yT2s!qZr*4J*E|2)X z8W`RB?~(dRpOigHb@ALMLCD?lzeAzFpY)$4UhF@fU)=itMWMf+78LPJNir~V>wiq4 zKfS_XDkq1b{tv*%t^Y@)f1yL3|GPpCs>|WBD)Z9{exuA0)h!80veYl(cNF~}r42zm z8|SSm?*E&L{`akPm>wZs>_5Kfkox8N=LbKdEu@a9HLafrH{>69ohG;c=K{ZURh}6N zy5ZFNDxDnle;7V){Y!wq0&p5`hZz1of4NhX^s>QSU#QUkz^x94>?i8K4nC4!;*G$M z{RcNrNT*4^xL&|oYPTx4+%>O^W{SrT*8DX6!%i zmG1uEtI&Uv^yAm2Jh}BhuHbiGGHKct&J1PURo|nq|9P^X&)-_$b=&_#(l7fd#c!d7 z6UUqX}F6pKHvi^#q|EF(rD4r*UIDSjv zBl%_gP6rG`6s6JkI8d2ua=Puuy4!Z-EXTbO|&-`jxnS z=QR?UBpoJiMOR*xOydX3yXfnKh+ z)qr2k;$#cS!sj*_V^VzK390rTY!7XzenI7pwWigcT{>9@ENcVwo?7qleJKv|kbp>9pz;8iZ4tBnGnzmU%->bj}0G|Qte+|jN@ANS3RM3A}f$vq|#}xP} z1^$KtUkVRcUjDpAfp1peI~4dg75H%l{yhc$O9lR-0>25CX0LwTslZ1R_&x>xssgWp zh0#lISb=|Bfj_Rm4=eERDezMY{7nU32V0bv{hJhczXJc30za<6f2hEpSKx0e@BnP3 zUiNnbel(C-!Wg>#YIft~?e7c<%QNB;7}+z_!7*>J=T1Y%v$jA>`0aXTB1 zg+glqTht!S#$#p*zQwen-Qif98Hy}6TUW)Z@i!Lmz2=|G4nOS3+VG={baidLX0B{r zvpm>rn%SOqGi;h0>a&rq)HVZtHPb6JG%q#HcnZJsgzAP`ygw5PEHup(>slJ|2P~!u zxZ>N$rp55hZ*eR8YS){9Zr+G5e&K6T^_QK+vL$Q4Q!}-yE+8nyo%ia&c{mG~48*;G z`a<2qJ!E7+eceEx-H&_Gpc`1!$U`eSK!y%4Ac?Xd(^{?yV8*S&$0rY{8Xvot7QUbP6oq z+8T>w+Z{qNLXQ9A*);t8ko!N9t&3)}@y;X)bLY;m#wfI}az#_Wtvl@T!hdmR1bX|2U41HiB^mTQ#&mnh+ zBdL0bFq#qFxI3lV#Ht@jErOpVhMdl&7H>`TWV-}Q#9kDGdzLtoOF&*Cp0vE;MuaNg z?Be7Wnomp2wUPF4q}GIuuPp!*td?&!Ui}km3tm(*D5%un_+e`7^x`AupVV-I?a+41Y-ilj}leB9Q|%>G7yFpJhDx5bkkutsNl;69bJmB6oug?spnNfgHG&pPi3(az-ZnnZm5$irfOKLXx! zTs;%J5G-G2tgkQH9`6m{vKvdls%2tKK^SdK;jB5w#Wd4QgJUdMr0=k{n=$-NvPH*T zIR1)+kH}5%c?W(ifJwfe#rBY(aQ?_Q%}BojK9U~4bH?PRpXb2hy%5Tg^ztN*kI`KI zO^m*g(XS&M<@2}f?To&K(RaG&%cyQE=(oG*<$Iue6!gO`dg-qR6!c$q(aZ0FA63wQ zi_uHj2pv?=A9m5-M)hYE^xt#QKTY-L74)YVJ^H_a>aS6b@xcB6CgF0tmQ#Hay#K@G zrk_kW(qn(mA`zr36!cdzdb9`c*I=5bpkKi7H9#lh5MH;5gmH*(!R2$L3WvvRkUCY9TUoLgO9Xd#yPgj zH5rQeHQ6mk#yR5ak&x0d$`Qx;Yf)Xsr;KO$4MGRCyYX%Xo*^9V$F)J)e=p%u?^dec zM>*1?4U+z0hJTFVql8O2T~t3xIm*G0l=BS3`8xR%hHql@FEe~I!>7?WO1)nvx*2SI zd4E6RqW=cb2N=D{k>#z>hMV+w?%#i8cnIk8i8dH) z=I5ws3~z@vY3EGBQ9hURUPd2d^s5<;b4SX-dqkK}FZxpACgCU__g{nj*uikFH_qg6 z`_l|ZdMW=d!f{*>KMNmBUsA~b3X{X_f0*Ii{%5N7xmCTBCl zKhE%N4CnE@i{W=L`V$OKF#P8X$1{fPFMjWb3H`7fJ`%_8{V+*C$aU=xj2?L;eQB8> z7jpPI`C*24F#1Id=kc(HaMT-eM2f#{jJ})6`4q#G4F4jNgX8`mLJIrbO6E5wSadHKt=W#NJ;XF=OF`UOqgy9zGm;Jqi zaCe-f89k4aFEX5u*CB>4XYx-f@Sicfhta>t@Lq<$$?#PSA7}VBhR-U83MBLyAFpc& z$Npkm$@C!w{f!DdqQJWt-Uq^^pZgfj`!&RH-mejc^M37SIPce^guDCoEd~8|75EPn z_|F)Q&q}gizhXG=?+Xh2RRw;@WM?GY^Wt)b^Ei1w!@1st4Cis!%5d(t1mU>O@aM!H z1^s=5%XuoF8}DcMolaN8-_J8SD*%yx+s){4UEM)E|IBbM=TU{6eG2*~8U0;M?-53i zdIw1Fvy7hG`5dD!+$w^5;|ls089kT(nu7jK7yUhC&p4z1B(wigbUY-C6Ta?EB^)z6 zzsdI?GZ{UXa}~q6oU54}wErvc!Q}k!evV!)2fv@k4H`apc?zW$6ck#SO^!$O_Bx z_O-Q7=As&r7o0z1H&7r zjQEWVHyAG8{UU^C224nQvnV-#Zlf~d4OGTVr!tNg9km2f%Wyi92t?{ddfGw-j$@4p zap_yEr|}OY#A#}Z`k?sh;1o&%d4S;*8UoqFaQTiIp;3lUqcUdSXLtp}PcvM;lMxU) z1`^tdADOOV_zVd`-oWt78Q#Hglq1K3KfhnW=$~NpJf43-IQr&xMt{~tFXQQLMt>Ef F|34CS-%->N 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 BA8h~t diff --git a/Mobi/Sources/ProteinModels.cc b/Mobi/Sources/ProteinModels.cc index e921dc4..268d9dc 100644 --- a/Mobi/Sources/ProteinModels.cc +++ b/Mobi/Sources/ProteinModels.cc @@ -34,6 +34,11 @@ void ProteinModels::load(PdbLoader& pl) { pl.checkModel(); this->Protein::load(pl); } + + for (unsigned int i = 0; i < this->size(); i++) + original_models.push_back(*(this->getSpacer(i))); + + if (verbose) cout << "\n" << "Modelli caricati nella proteina" << endl; @@ -90,6 +95,12 @@ void ProteinModels::loadSameModels(PdbLoader& pl){ pl.checkModel(); this->Protein::load(pl); // creates the Protein object } + + for (unsigned int i = 0; i < this->size(); i++) + original_models.push_back(*(this->getSpacer(i))); + + + if (verbose) cout << "\n" << "Modelli caricati nella proteina" << endl; diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index 56b5f02..c8626e9 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -72,6 +72,7 @@ class ProteinModels : public Protein{ bool verbose; public: + vector original_models; vector models; }; diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o index ef92efc23bfc2a9eae56499fec518697666cfa52..351f74f24230acb4f81b0ae805bf89057e15834e 100644 GIT binary patch literal 58392 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%0Du_vRhYZxWL;{Op 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 XeF85N`1>yTJTFY4$&~HkzuWQOReg$6 diff --git a/Mobi/Sources/StandardDeviation.cc b/Mobi/Sources/StandardDeviation.cc index 88cc330..b960638 100644 --- a/Mobi/Sources/StandardDeviation.cc +++ b/Mobi/Sources/StandardDeviation.cc @@ -11,7 +11,7 @@ using namespace Victor::Mobi; using namespace Victor::Biopool; StandardDeviation::StandardDeviation(const ProteinModels& modelli ,bool verbose) : - verbose(verbose), models(modelli.models) {} + verbose(verbose), original_models(modelli.original_models) ,models(modelli.models) {} StandardDeviation::~StandardDeviation() { } @@ -53,7 +53,7 @@ vector StandardDeviation::get_everage_distance(){ if (models.size() != 0) num_atomi = models[0].sizeAmino(); else - ERROR("Nessun modello presente nella proteina", exception); + ERROR("Nessun modello presente nella proteina, si ricorda di eseguire TmImpose.", exception); @@ -131,7 +131,7 @@ vector StandardDeviation::get_standard_deviation(){ if (models.size() != 0) num_atomi = models[0].sizeAmino(); else - ERROR("Nessun modello presente nella proteina", exception); + ERROR("Nessun modello presente nella proteina, si ricorda di eseguire TmImpose.", exception); @@ -223,3 +223,113 @@ vector StandardDeviation::get_standard_deviation(){ return ScD; } + + +vector StandardDeviation::get_StandarDev_angle_PHI() { + + double num_amino = 0; + double sum = 0; + + //cout << "modelli" << original_models.size() << "aminoacidi" << original_models[0].sizeAmino() << endl; + + if (original_models.size() < 2) + ERROR("Modelli insufficienti", exception) + else + num_amino = original_models[0].sizeAmino(); + + angle_PHI.clear(); + vector > misure_PHI(num_amino, + vector(original_models.size())); + vector everage(num_amino); + +//calcolo angoli + for (unsigned int i = 0; i < original_models.size(); i++) + for (unsigned int j = 0; j < num_amino; j++) + misure_PHI[j][i] = original_models[i].getAmino(j).getPhi(); + +//calcolo media angoli + for (unsigned int j = 0; j < num_amino; j++) { + sum = 0; + + for (unsigned int i = 0; i < original_models.size(); i++) { + sum = sum + misure_PHI[j][i]; + } + + everage[j] = (sum / (original_models.size())); + + } + + //calcolo stadDev + double standDev = -1; + + for (unsigned int j = 0; j < num_amino; j++) { + sum = 0; + for (unsigned int i = 0; i < original_models.size(); i++) { + + sum += (pow((misure_PHI[j][i] - everage[j]), 2.0)); + } + + standDev = sqrt(sum / original_models.size()); + angle_PHI.push_back(standDev); + } + + return angle_PHI; + +} + + +vector StandardDeviation::get_StandarDev_angle_PSI() { + + double num_amino = 0; + double sum = 0; + + //cout << "modelli" << original_models.size() << "aminoacidi" << original_models[0].sizeAmino() << endl; + + if (original_models.size() < 2) + ERROR("Modelli insufficienti", exception) + else + num_amino = original_models[0].sizeAmino(); + + angle_PSI.clear(); + vector > misure_PSI(num_amino, + vector(original_models.size())); + vector everage(num_amino); + +//calcolo angoli + for (unsigned int i = 0; i < original_models.size(); i++) + for (unsigned int j = 0; j < num_amino; j++) + misure_PSI[j][i] = original_models[i].getAmino(j).getPsi(); + +//calcolo media angoli + for (unsigned int j = 0; j < num_amino; j++) { + sum = 0; + + for (unsigned int i = 0; i < original_models.size(); i++) { + sum = sum + misure_PSI[j][i]; + } + + everage[j] = (sum / (original_models.size())); + + } + + //calcolo stadDev + double standDev = -1; + + for (unsigned int j = 0; j < num_amino; j++) { + sum = 0; + for (unsigned int i = 0; i < original_models.size(); i++) { + + sum += (pow((misure_PSI[j][i] - everage[j]), 2.0)); + } + + standDev = sqrt(sum / original_models.size()); + angle_PSI.push_back(standDev); + } + + return angle_PSI; + +} + + + + diff --git a/Mobi/Sources/StandardDeviation.h b/Mobi/Sources/StandardDeviation.h index 970b8ee..b9f9237 100644 --- a/Mobi/Sources/StandardDeviation.h +++ b/Mobi/Sources/StandardDeviation.h @@ -46,6 +46,8 @@ class StandardDeviation { vector get_everage_distance(); vector get_standard_deviation(); + vector get_StandarDev_angle_PHI(); + vector get_StandarDev_angle_PSI(); private: @@ -54,11 +56,15 @@ class StandardDeviation { private: bool verbose; + vector original_models; vector models; vector CaVector1, CaVector2; vector < vector > dist_from_Ca_atoms; vector dist_everage; vector ScD; + vector angle_PHI; + vector angle_PSI; + }; } From 0ddfb32620e8c40792b3a7485f3e4aae4c69ce9c Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Tue, 21 Jul 2015 18:31:52 +0200 Subject: [PATCH 20/61] aggiunto metodo remove file e fatta un po di pulizia su output --- Mobi/APPS/mobi.cc | 122 ++++++++++++++++------------------ Mobi/APPS/mobi.o | Bin 23240 -> 27552 bytes Mobi/Sources/ProteinModels.cc | 27 +++++++- Mobi/Sources/ProteinModels.h | 1 + Mobi/Sources/ProteinModels.o | Bin 58392 -> 62568 bytes Mobi/Sources/TmScore.cc | 20 ++---- Mobi/Sources/TmScore.o | Bin 34576 -> 32424 bytes 7 files changed, 88 insertions(+), 82 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 23f21f4..5ae51d2 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -134,91 +134,85 @@ int main(int argc, char* argv[]) { ///////////////////////////////////////////////////////////////////// -// unsigned int d = 0; -// -// TmScore tm("./Mobi/data/TMscore", outputFile, v); -// -// Protein* traslata = new Protein(); -// -// for (unsigned int i = 0; i < prot.size()-1; i++) -// for (unsigned int j = i+1; j < prot.size(); j++) -// { -// if (v) -// cout << "\n Lettura proteine da traslare:\n " -// << outputFile + (itosDEF(i)) -// << outputFile + (itosDEF(j)) << endl; -// traslata = tm.TmImpose(outputFile + (itosDEF(i)), -// outputFile + (itosDEF(j))); -// if (traslata != NULL) { -// -// prot.addModels(*(traslata->getSpacer(d))); -// } else -// ERROR("Errore nella creazione della proteina traslata", -// exeption); -// if (v) -// cout << "\n ###Caricamento proteina modello### " << endl; -// -// prot.addModels(*(prot.getSpacer(j))); -// -// -// } -// -// prot.printModels(outputFile); -// -// StandardDeviation std(prot, v); -// vector SD; -// -// vector EVERAGE; -// -// EVERAGE = std.get_everage_distance(); -// -// cout << "EVERAGE" << endl; -// for (vector::iterator everage = EVERAGE.begin(); everage != EVERAGE.end(); -// everage++) { -// cout << *everage << endl; -// -// } -// -// -// SD = std.get_standard_deviation(); -// cout << "STANDARD DEVIATION" << endl; -// for (vector::iterator walk = SD.begin(); walk != SD.end(); -// walk++) { -// cout << *walk << endl; -// } + unsigned int d = 0; + TmScore tm("./Mobi/data/TMscore", outputFile, v); -/////////////////////////////////////////////////// + Protein* traslata = new Protein(); + + for (unsigned int i = 0; i < prot.size()-1; i++) + for (unsigned int j = i+1; j < prot.size(); j++) + { + traslata = tm.TmImpose(outputFile + (itosDEF(i)), + outputFile + (itosDEF(j))); + if (traslata != NULL) { + + prot.addModels(*(traslata->getSpacer(d))); + } else + ERROR("Errore nella creazione della proteina traslata", + exeption); + prot.addModels(*(prot.getSpacer(j))); + } + + //prot.printModels(outputFile); StandardDeviation std(prot, v); + vector SD; + + vector EVERAGE; + + EVERAGE = std.get_everage_distance(); - vector ANGLE_PHI; - ANGLE_PHI=std.get_StandarDev_angle_PHI(); + cout << "EVERAGE" << endl; + for (vector::iterator everage = EVERAGE.begin(); everage != EVERAGE.end(); + everage++) { + cout << *everage << endl; + + } + SD = std.get_standard_deviation(); cout << "STANDARD DEVIATION" << endl; - for (vector::iterator walk = ANGLE_PHI.begin(); walk != ANGLE_PHI.end(); + for (vector::iterator walk = SD.begin(); walk != SD.end(); walk++) { cout << *walk << endl; - } - vector ANGLE_PSI; - ANGLE_PSI=std.get_StandarDev_angle_PSI(); +/////////////////////////////////////////////////// - cout << "STANDARD DEVIATION" << endl; - for (vector::iterator walk = ANGLE_PSI.begin(); walk != ANGLE_PSI.end(); - walk++) { - cout << *walk << endl; - } +// StandardDeviation std(prot, v); +// +// vector ANGLE_PHI; +// ANGLE_PHI=std.get_StandarDev_angle_PHI(); +// +// +// cout << "STANDARD DEVIATION" << endl; +// for (vector::iterator walk = ANGLE_PHI.begin(); walk != ANGLE_PHI.end(); +// walk++) { +// cout << *walk << endl; +// +// } +// +// +// vector ANGLE_PSI; +// ANGLE_PSI=std.get_StandarDev_angle_PSI(); +// +// +// cout << "STANDARD DEVIATION" << endl; +// for (vector::iterator walk = ANGLE_PSI.begin(); walk != ANGLE_PSI.end(); +// walk++) { +// cout << *walk << endl; +// +// } + prot.remove(outputFile); return 0; } diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index 5683a484eff99652c20ce2489af58c06be6a01c8..b3867014a8be28c503a9394d4741598f49f9bcdc 100644 GIT binary patch literal 27552 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 literal 23240 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 F|34CS-%size(); i++) { @@ -171,8 +171,31 @@ void ProteinModels::save(string outputFile){ fout.close(); if (verbose) - cout << "file chiuso" << endl; + cout << "file chiuso." << endl; } + if (verbose) + cout << " " << endl; + +} + + + +void ProteinModels::remove(string outputFile) { + + string outputFile_1; + + if (verbose) + cout << "Cancellazione file..." << endl; + // Open the proper output stream (file or stdout) + for (unsigned int i = 0; i < this->size(); i++) { + + outputFile_1 = outputFile + (itosDEF(i)) + PDB; + if(std::remove(outputFile_1.c_str())!=0) + ERROR("File don't deleted! ",exception); + + } + if (verbose) + cout << " " << endl; } diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index c8626e9..f4dab44 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -61,6 +61,7 @@ class ProteinModels : public Protein{ } void save(string outputFile); + void remove(string outputFile); Spacer getModel(unsigned u); void addModels(Spacer& sp); diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o index 351f74f24230acb4f81b0ae805bf89057e15834e..c7a59e0c07fc7b01de80b6451be1971a24f31daa 100644 GIT binary patch literal 62568 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 delta 12780 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 - cout << "Accesso consentito." << endl; //Pipeing TMS output int pipefd[2]; pipe(pipefd); @@ -75,8 +73,6 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { if (dup2(pipefd[1], 2) < 0) ERROR("Unable to redirect error output TMScore", error);//stderr close(pipefd[1]); //close output pipe - if (this->verbose) - cout << "Eseguo TMScore" << endl; if (execl(binary.c_str(), binary.c_str(), modelFile.c_str(), nativeFile.c_str(), "-o", outputTmScore.c_str(), NULL)) @@ -98,11 +94,6 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { stringstream buffer; string line; - if (verbose) { - cout - << "Conversione file rototraslato per renderlo leggibile" - << endl; - } while (inFile) { line = readLine(inFile); if (line.substr(0, 16) == "REMARK TM-score") { @@ -117,25 +108,22 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { break; } } - if (verbose) { - cout << "Fine lettura file rototraslato" << endl; - } + buffer.clear(); //Load from memory buffer PdbLoader pl(buffer); - if (!verbose) - pl.setNoVerbose(); + + pl.setNoVerbose(); pl.setModel(1); pl.checkModel(); prot = new Protein(); - if (verbose) - cout << "### Caricamento proteina rototraslata ###" <@kj{Ur9}BG|H@f&OW#}4g34{-e>=7t$(kz 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 delta 9939 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 Date: Wed, 22 Jul 2015 16:38:33 +0200 Subject: [PATCH 21/61] =?UTF-8?q?Creata=20classe=20e=20funzionalit=C3=A0?= =?UTF-8?q?=20DSSP=20Secondary=20Structure.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Mobi/APPS/mobi.cc | 109 ++++++++++++++---------- Mobi/APPS/mobi.o | Bin 27552 -> 22344 bytes Mobi/Sources/Makefile | 4 +- Mobi/Sources/SecondaryStructure.cc | 131 +++++++++++++++++++++++++++++ Mobi/Sources/SecondaryStructure.h | 55 ++++++++++++ 5 files changed, 251 insertions(+), 48 deletions(-) create mode 100644 Mobi/Sources/SecondaryStructure.cc create mode 100644 Mobi/Sources/SecondaryStructure.h diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 5ae51d2..904dd72 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -26,6 +26,7 @@ // // -----------------x----------------------------------------------------------- #include +#include #include #include #include @@ -134,52 +135,52 @@ int main(int argc, char* argv[]) { ///////////////////////////////////////////////////////////////////// - unsigned int d = 0; - - TmScore tm("./Mobi/data/TMscore", outputFile, v); - - Protein* traslata = new Protein(); - - for (unsigned int i = 0; i < prot.size()-1; i++) - for (unsigned int j = i+1; j < prot.size(); j++) - { - traslata = tm.TmImpose(outputFile + (itosDEF(i)), - outputFile + (itosDEF(j))); - if (traslata != NULL) { - - prot.addModels(*(traslata->getSpacer(d))); - } else - ERROR("Errore nella creazione della proteina traslata", - exeption); - - prot.addModels(*(prot.getSpacer(j))); - - - } - - //prot.printModels(outputFile); - - StandardDeviation std(prot, v); - vector SD; - - vector EVERAGE; - - EVERAGE = std.get_everage_distance(); - - cout << "EVERAGE" << endl; - for (vector::iterator everage = EVERAGE.begin(); everage != EVERAGE.end(); - everage++) { - cout << *everage << endl; - - } - - - SD = std.get_standard_deviation(); - cout << "STANDARD DEVIATION" << endl; - for (vector::iterator walk = SD.begin(); walk != SD.end(); - walk++) { - cout << *walk << endl; - } +// unsigned int d = 0; +// +// TmScore tm("./Mobi/data/TMscore", outputFile, v); +// +// Protein* traslata = new Protein(); +// +// for (unsigned int i = 0; i < prot.size()-1; i++) +// for (unsigned int j = i+1; j < prot.size(); j++) +// { +// traslata = tm.TmImpose(outputFile + (itosDEF(i)), +// outputFile + (itosDEF(j))); +// if (traslata != NULL) { +// +// prot.addModels(*(traslata->getSpacer(d))); +// } else +// ERROR("Errore nella creazione della proteina traslata", +// exeption); +// +// prot.addModels(*(prot.getSpacer(j))); +// +// +// } +// +// //prot.printModels(outputFile); +// +// StandardDeviation std(prot, v); +// vector SD; +// +// vector EVERAGE; +// +// EVERAGE = std.get_everage_distance(); +// +// cout << "EVERAGE" << endl; +// for (vector::iterator everage = EVERAGE.begin(); everage != EVERAGE.end(); +// everage++) { +// cout << *everage << endl; +// +// } +// +// +// SD = std.get_standard_deviation(); +// cout << "STANDARD DEVIATION" << endl; +// for (vector::iterator walk = SD.begin(); walk != SD.end(); +// walk++) { +// cout << *walk << endl; +// } /////////////////////////////////////////////////// @@ -212,6 +213,22 @@ int main(int argc, char* argv[]) { // // } + +/////////////////////////////////////////////////////////////////////////////////// + + SecondaryStructure sstr (prot, v); + + vector MOB; + MOB = sstr.getMobilitySecondaryStructure(); + + cout << "\nSECONDARY STRUCTURE" << endl; + for (vector::iterator walk = MOB.begin(); walk != MOB.end(); walk++) { + cout << *walk << " "; + + } + + cout << endl; + prot.remove(outputFile); return 0; diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index b3867014a8be28c503a9394d4741598f49f9bcdc..5ff000b55c3995008eaaac048d0e52802a0a71f7 100644 GIT binary patch literal 22344 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%0AV46UY-Z;zKTc=2U;YESF8JAy3V+Rdt|1Dek04 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 diff --git a/Mobi/Sources/Makefile b/Mobi/Sources/Makefile index 328f02c..ffb8cc5 100644 --- a/Mobi/Sources/Makefile +++ b/Mobi/Sources/Makefile @@ -27,10 +27,10 @@ INC_PATH = -I. -I../../tools -I../../Biopool/Sources # -SOURCES = ProteinModels.cc TmScore.cc StandardDeviation.cc +SOURCES = ProteinModels.cc TmScore.cc StandardDeviation.cc SecondaryStructure.cc -OBJECTS = ProteinModels.o TmScore.o StandardDeviation.o +OBJECTS = ProteinModels.o TmScore.o StandardDeviation.o SecondaryStructure.o TARGETS = diff --git a/Mobi/Sources/SecondaryStructure.cc b/Mobi/Sources/SecondaryStructure.cc new file mode 100644 index 0000000..5c5f356 --- /dev/null +++ b/Mobi/Sources/SecondaryStructure.cc @@ -0,0 +1,131 @@ +/* + * SecondaryStructure.cc + * + * Created on: 21 lug 2015 + * Author: riccardo + */ + + +#include "SecondaryStructure.h" + +using namespace Victor; +using namespace Victor::Mobi; +using namespace Victor::Biopool; + +SecondaryStructure::SecondaryStructure(const ProteinModels& modelli ,bool verbose) : + verbose(verbose), models(modelli.original_models) {} + +SecondaryStructure::~SecondaryStructure() {} + + + +vector SecondaryStructure::getMobilitySecondaryStructure() { + + mobility.clear(); + unsigned int num_amino = 0; + if (models.size() != 0) + num_amino = models[0].sizeAmino(); + else + ERROR( + "Nessun modello presente nella proteina, si ricorda di caricare dei modelli.", + exception); + + //create a support vector to get secondary structure + vector > vettore_di_supporto(num_amino, set()); + + //create a vector for manipulated all amiocid's chars + vector > sec_Structures(num_amino, + vector(models.size())); + + if (verbose) { + cout << "\nStart procedure select secondary structure... " << endl; + cout << "Model size: " << models.size() << endl; + } + //per ogni modello + for (unsigned int i = 0; i < models.size(); i++) { + + if (verbose) + cout << "Models number: " << i <. + */ + +/** + * @file SecondaryStructure.h + * @author Riccardo Zanella + * @date 21 lug 2015 + * @version 0.1 + */ + +/* + * SecondaryStructure.h + * + * Created on: 21 lug 2015 + * Author: riccardo + */ + +#ifndef MOBI_SOURCES_SECONDARYSTRUCTURE_H_ +#define MOBI_SOURCES_SECONDARYSTRUCTURE_H_ + + +#include + + +using namespace Victor::Biopool; + +namespace Victor { +namespace Mobi { + +class SecondaryStructure { +public: + SecondaryStructure(const ProteinModels& _orig , bool _verbose = false); + virtual ~SecondaryStructure(); + + vector getMobilitySecondaryStructure(); + +private: + bool verbose; + vector models; + vector mobility; + +}; +} +} +#endif /* MOBI_SOURCES_SECONDARYSTRUCTURE_H_ */ From 77ea6ea94035044be513c5c6eddd9d854cc871c2 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Thu, 23 Jul 2015 12:25:30 +0200 Subject: [PATCH 22/61] creazione classe MobiSaver --- Mobi/APPS/mobi.cc | 26 +++++++----- Mobi/APPS/mobi.o | Bin 22344 -> 24608 bytes Mobi/Sources/Makefile | 4 +- Mobi/Sources/MobiSaver.cc | 73 ++++++++++++++++++++++++++++++++++ Mobi/Sources/MobiSaver.h | 39 ++++++++++++++++++ Mobi/Sources/ProteinModels.cc | 20 +++++++++- Mobi/Sources/ProteinModels.h | 1 + Mobi/Sources/ProteinModels.o | Bin 62568 -> 71816 bytes 8 files changed, 150 insertions(+), 13 deletions(-) create mode 100644 Mobi/Sources/MobiSaver.cc create mode 100644 Mobi/Sources/MobiSaver.h diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 904dd72..35a4a3f 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -26,6 +26,7 @@ // // -----------------x----------------------------------------------------------- #include +#include #include #include #include @@ -216,18 +217,25 @@ int main(int argc, char* argv[]) { /////////////////////////////////////////////////////////////////////////////////// - SecondaryStructure sstr (prot, v); - - vector MOB; - MOB = sstr.getMobilitySecondaryStructure(); +// SecondaryStructure sstr (prot, v); +// +// vector MOB; +// MOB = sstr.getMobilitySecondaryStructure(); +// +// cout << "\nSECONDARY STRUCTURE" << endl; +// for (vector::iterator walk = MOB.begin(); walk != MOB.end(); walk++) { +// cout << *walk << " "; +// +// } +// +// cout << endl; - cout << "\nSECONDARY STRUCTURE" << endl; - for (vector::iterator walk = MOB.begin(); walk != MOB.end(); walk++) { - cout << *walk << " "; - } +///////////////////////////////////////////////////////////////////////////////////// - cout << endl; + MobiSaver* saver = new MobiSaver(prot, outputFile, v); + saver->save_mob_everageScalD(); + delete saver; prot.remove(outputFile); diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index 5ff000b55c3995008eaaac048d0e52802a0a71f7..c8cc88a6aef7133ade4ac152ce6cfdfe44cad018 100644 GIT binary patch literal 24608 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%0AV46UY-Z;zKTc=2U;YESF8JAy3V+Rdt|1Dek04 z2~NUUJTxHA0W=ls9^E6245^O~sI>_m&w~SMo|7FJP;<_9SU}Bn3daPL%x(C+-rU@u z=oEn!v74M(5>LUr@t8;};V?op6NZ-MW_v1&mmRe&4JK8>N`j<_T_3~$u)$KO!KCSC z#*Ad;;&yR7u`pcyf(p|rij z%vfm?{)s3P-DYu$P|)09_QQYJWKuiuECL=&nB4;J$x+lVd)d7d)LY5^#A$blW{rxq zW25@$#E>;Klp3+X=;Zbx;k(@kBWl9fTJ`O)^t1|#&Hil49E3A5aBc!S$VJrV5XDBL zCJZqu73cL#bKB^snYJ?7R5F@~LqCqdvWNW(QeinQ_E^I<%WlbR6Ii^nGZxAAIfP;$ zoNkV1)9~M7yqhE0hG;e$-@Mh!yte)y9Yg zyJdegvm;_>hGRDTZ=V$3yHyrz?mT#T(b_7y)tI+NJH3!VIFKSx5K%yB*b9cmNA)K z1^+u}Wx!=;VSve&hMCfjqv}FvUKA&!M4Xk~9?Yb+!;;c(#-dpprbkb5dpy|>YixEH z&Nn$*0sI#yPOXxukSI=tzvzBVh<0X;*X;1R*(>ZPz&p!PFtLlkx@5*iN27i5kx*zA zloPNVnb@h&j{_;34znB-GtD$~j0L@NleNQ);s1nM@;()AUq!-4**3V~9}q;M_odh# z78K48{?9!oq+bgc(c?E@Om6xm4lL+V4$;${G`^wY@~>j_t&F}$;wb-IS;nkSmeHP# zaFP6N5-0j9S+`~Grr+VBr}r|qE9mnsdg`yc6!f2V(Jzz} zWc}L;`u}p#KO^f$6!ibg=&}EsW&PJOclYP-B~JanM%L-OvzvY{yr;v2^yu$#tUx+X z;%<6+pF{HTybGo!3i`_#z6t0kPT=*INEnCsR+^suR5(0Vi-h)|Pb7!lgd)!4mfpZ( zZoozI>G{zu=Y2qf$&KSTDoiM+U6h=kb+YWnI~mUX+9Gl6w_9ZyGm3xI`vJJfuboiF zQw&3(VqT!?eRhZJ~5;%NW%aFP9YNSyQz$oic!M|xZ{i2id7N81RW zk~qm3l=VY0M>%*A{c{ZG`_T^=egmU_jp17vezsh%NH4|5Lbi@^e=l>pW=X$d)y?doz`X6m~KYx_T;d(#ol0$mG!05T&!xG2%;p^&p zR0s((6D}H;eg%Gr;oP3@Fua$^`JKe6e`ufn6T`zmUr2Hz!DfEHbT-4I&_;HiD{++1 z<-Cj0_c8hn439A!&+lMDy*Q^xzA15(kNd14`>~(lTyLDo;r6E)j`Sq|W{KmtAWr-E zCl&JVVRB+j&gU4;?SGiz7NdVc;;0vK()&Y+qrZq#`YDrxYXjN;Dx=5s>RHLKKrWit zpW7JyB8gKx&^*-{J+2uff4PhPWhs9Zqvz{GJHvTA-^lPdlfRweJf3$m{6mcXS%%-l z@EgbE~z+vl9BcCN&+AF^-}{d*a1GrW=E z!wkQM;k-Y$Fnom3-^6e}?xPIn{CS3NXMVlN zaPIHR3jB46)41#aS(x5r_^1Pk-xEyET0m&LDytnLl5?BnIg{aB&U}gExN|w@Dd-n5 zdbE-BUdre({>P-=AfxB#?mQ3d`jiQ_uS-w(W~pg*C&&%=oY z$*uQd2Nw9XP^NhyVQ~`gom62tZr}d^SDnOUcMAGj7#+vySsR;)59Ks6dfEpNZ(+DD z%ZN8IdGd#%fD;Q3?P|lSMZn{ z3#6XmXUH;Uq!;Psk||p8o)Z(|)VEkq;}0anWeAA+xcGH&83F>ii{Thsl)fknD2Lvy zA~c0RkPtsxl$@XM$}-|L3_r^7T84`NfjZLTMd::iterator walk = prot.sequence.begin(); + + fout.open(out.c_str()); + if (!fout) { + ERROR("Error to create file!", error); + } else { + fout << "> sequence" << endl; + while (walk != prot.sequence.end()) { + fout << *(walk); + walk++; + } + + + fout.close(); + + if (verbose) + cout << "file success created!" << endl; + } + + } + + +} + +MobiSaver::~MobiSaver() { + // TODO Auto-generated destructor stub +} + + + +void MobiSaver::save_mob_everageScalD (){ + + ofstream fout; //stream in output + + + if (verbose) + cout<<"\n ###Salvataggio sul file della mobilità data la distanza media ###"< +#include +#include +#include +#include +#include +#include + +using namespace Victor::Biopool; + +namespace Victor { +namespace Mobi { + +class MobiSaver : public Saver{ +public: + MobiSaver(ProteinModels __protein,string __output, bool __verbose = false); + virtual ~MobiSaver(); + + + virtual void save_mob_everageScalD(); + +private: + bool verbose; + string out; +}; +} +} + +#endif /* MOBI_SOURCES_MOBISAVER_H_ */ diff --git a/Mobi/Sources/ProteinModels.cc b/Mobi/Sources/ProteinModels.cc index 00baccd..d781cfb 100644 --- a/Mobi/Sources/ProteinModels.cc +++ b/Mobi/Sources/ProteinModels.cc @@ -24,6 +24,9 @@ ProteinModels::~ProteinModels() {} * @return A pointer to the Spacer */ void ProteinModels::load(PdbLoader& pl) { + + unsigned int d=0; + if (!verbose) pl.setNoVerbose(); //Load Models @@ -35,13 +38,21 @@ void ProteinModels::load(PdbLoader& pl) { this->Protein::load(pl); } + if (this->size()!=0){ + //riempio il mio vettore dei modelli originali for (unsigned int i = 0; i < this->size(); i++) original_models.push_back(*(this->getSpacer(i))); + //riempio il mio vettore delle sequenze + for (unsigned int i = 0; i < this->getSpacer(d)->sizeAmino(); i++) + sequence.push_back(this->getSpacer(d)->getAmino(i).getType1L()); + + + if (verbose) cout << "\n" << "Modelli caricati nella proteina" << endl; - + } } @@ -85,6 +96,7 @@ unsigned int ProteinModels::selectModels(PdbLoader& pl){ */ void ProteinModels::loadSameModels(PdbLoader& pl){ + unsigned int d; unsigned int modelNum = selectModels(pl); for (unsigned int i=1; i<= modelNum; i++) @@ -96,14 +108,18 @@ void ProteinModels::loadSameModels(PdbLoader& pl){ this->Protein::load(pl); // creates the Protein object } + if (this->size()!=0){ for (unsigned int i = 0; i < this->size(); i++) original_models.push_back(*(this->getSpacer(i))); + //riempio il mio vettore delle sequenze + for (unsigned int i = 0; i < this->getSpacer(d)->sizeAmino(); i++) + sequence.push_back(this->getSpacer(d)->getAmino(i).getType1L()); if (verbose) cout << "\n" << "Modelli caricati nella proteina" << endl; - + } } /*procedura che stampa su file il vettore di spacer*/ diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index f4dab44..2dafa96 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -75,6 +75,7 @@ class ProteinModels : public Protein{ public: vector original_models; vector models; + vector sequence; }; } diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o index c7a59e0c07fc7b01de80b6451be1971a24f31daa..d63ffc9ab92216ee979130cf54bc9831589c7113 100644 GIT binary patch literal 71816 zcmeHw3w+eYwf`^K1Q0MA0b8tASBwfiFyWb?R})C!7Yz^zAk;?)VS&AdBsbXrzG^TD zu#K^)PpY<}^+D0A-bxiID)JT|rPfxfwLY#7Vo<16ickLM%$&1(cJ?>ProFe`e?Og1 zHZ#BP?>uJCyw1$;x3gCll}t=cNpU!&IA=StD@GkB`@&c{UnTRMh_hVLj(}_A8AalqWIq^KAYlmD9)$2fa38KPoTJv;v$MCQap*`Vv0*Bo4ezLMhaQ``tK zhJxuc%G}nPK5om0{^sida9fWnX$Mhalu7f+}5#fYdPfRKzN=T`D@N5 zx9OQfA3vzHxPSeP+jjmTYi=ONvD`ogI#;=^>6l@+b?F{=*$zy$E(tWfkfKC%oO0;U zp)M&pe>}gv%#D1ZbGXBY0=75p$H?8$bP!_*kmME*$v$W%jb_G@gJa1+EIBlm%#I~< zDS6=*|8e=wH?6;5`UdPq%CIxs$fv3Wl(|iN1MZH(tV}E_RiLiu$o5zr6i2qYtziB9 zJ;klJr=i_cE4vK}*my;*<8Lm4l>gBQ6Z}u^FNwTQa(3vLt1f?!+qw$XAaBbWNOa6V zw&R)+RP1hBI4jftS2TIIocsAuy zXoz%`&*tUC>2J9ZTN(GMR^O9-;SO9MD$VXFwBG8xfy>wQMT&oUv1+McZnq6v@*xo6 zG+g91Z4E@I+juLu`|CrxyFhPnTNQse%a20HHoB{0J5xaH-{YvlZMy(^;xpl6)`R{- z`~6R+wrsjOg4Xsc%8ttcZY@37cJ85wdoZ%Q^Ue9~1s4>|ESOO+y*TnE3^dF3?u1dn zZF?YV6UvK(v--GgPhii{8PJuyy*X~LC}@5aAYaU`4H=^_{`h0aCGrE=RxV*w!*9c=59`5qzY1z?QSG3OP8fp8UM+nCh|*&qUap^QMtI&~YlvNh7$Oh~lR`ddzh5gD5z zh!f}^(=-ZM5a?W@g`5cV+ki%G59)?)?YbD|A3g3&Ze7WJgQevdQ24G4Qxhq)mWAOU*fetxpy7Ky%hB za5LTCa*wKmjaluA=1*jXjjA)=_<)q-4NwN zh@*H9E3Jzzgp4~iA2*t-xOrWbpLmxGbhy@}hKX43hLJgPZQ3Tx1jywvLYr;bRvc!~ zfhf4R;F5y!E%S%-_*oM9tD-4x?WKlZxW=J34Xo-vuF!ET_n+bWqQV z2Tz*NYX>PvyJCssDH|6gy@o|;`=1@IS$x}7wIE&9K<907HXa*i@{D)_|5(*IIEE_z+Xk*v83(ptkq~T^jC|) z?eTC}mjWG39`B>^R$)JffazMqAt;CSGQ2>vkx+J6S0hgI9o$~Yw;|0QuM*5SIjqIt zTPcqf`7ucC%8td*XyUWn_$wSj&L7z5@{ zr!aXfC4r$Gk^z6qUtlzITbuC8J+%o*-KP)w(38QU50=p}EK*a(>ui8%LyE1EO%VjQJtgKY9IAB(2sUZEj{DIgitH1&p}oj_V58}LJZU%fQOInpZA$+%x>XtLC)}4L zneJUyH`Z-^K)JE1sNX{eUUmBaf-XwMWue?J;#^oavW?nak*=)P+tYCnQTt^VqPQz? z44I_Fsr@oAj^<#GSh}!XihCL>LWw)WE{=0)b77Z(khnSe5#4TE3pQvdMx`V|MQ)e@_~Y-7ZmmIl;5`+4H576Aru`R5{3dU9XNik z#)={ou!6zcdJ??D5Ws#L%WPNh>m*5T*q%g4bC^6uPRaP>^~RGD2{vz z4@um}SGdc)u<Q|L8rYfC$#r?#xbi2R+`AYIZnFDox-zAZclv>Og>@@)ry##y2+#N{8J2cAO325R3*X07`iJ2QYenLTyaA+=4 zr2x-N$pTNH<;sL|HEq$}*%tpbqrqm4PbgD_FHV>`p~#daG4$gOs2;%f(f}4NjGs26 zY&i5sFQ8a~xU4>g1!&s3P|r}%uwizJQN!#67h-nm{ON`xL9?8iV$`1byO#3@Q1m#=B3yo#y&(#^)h! zM{lSz7`LCohpukRp>VpQE^d85JwD;5DsJBE;l-#2w7Q!IM^xJ2({^So)n$G3nRf}ATtF`Tj^O1bWHVX1h|CxJa84{ZS}9f zopN4XJ`>wfj*ZlX@@=h^ey*U!Rk()x&EJoAxUfLEqv`I|?fAbd)90wTR& zLrGCIZAx(?DhUE%`-2Bnnkn+O)n5`raTi3}sHAO%sZ ztYfH4WnY1v0_`AnsoWP>L?}|OIRJHbU@Bxp_%NY&o%skLzthn|6 zTTpy0?UF8};etIGX*Wcrq5Eyg8=EAyUSB^Os5`EQX?6WfOs&M!bWD98Q~2&$M;KF+ zG4=15D#6qoOr3|RnV2fZR0*bBOpS+B(p7j8l)fVuvcDeRjO*xyQl??*OIRkZKOa*c zW2zKWdoYD>&2{_t3h?q`9aMJtxpYx ztiuQxfGB(#yoCm%Uw`UXP3m5{9{JRT^f$m?$VA@A$ExS*&UoRL*!nX1e#|E`o&ZAi zf)^|_2P^34q8ZNQqUlaS*%YUA z+Elnd#VMFJ$tf$E=1g~|IWr4Noaxg_o$0fuIpdsh0jH?0uBL8WprSeu#8jZBva+Er zIB&R9Ft?^I9I9S0+?g4y4A;~-q;hi2ykJ%R@XAW3Xi8yUXMU(E7^qwrYN)S~>ETYm znNU$(8LX<5y$DsF;5f5p&2kD#3Y-a0(1Nm3DBKLE)Gc!QI)@1=Hn&qo9{3mF zvt+t$)9F=U*q_aG(Yo4@Zfo!8(^tK2{@#`-CwV#>(m|-dxeS~jlBu1gmQ5RQ_Yz)c z^|*t(IR572Jnr;SchWuXprh???u7rQ9(0!c&A;)ugD+hAn;-MIgOA7k%|G$DgYVY( zo0~lDWB?XkWNP;#dVz^%B3fXgM<9Bti4H*Y$T+m=V9HT1Hf*AF#9|0lE999^o{zqD_q%Umt%9S^cUBbp8&eBixaMcI5S1y4?KRcIZ$_|HGlh9G!l#vl!yx!_R=f z@u8a9nwqLJ%4!lv^=xUXStt@{`I3$W4l_{<7*yYpI-=y(%gzgSFua z6;+iDRTVHqb-{y{i`ql;O|1=w7KJVkcE=Xus|!L&$JaDe&#R~l1-q*z=lq6>>ToCk zW8dP2noyt;nBWsUCs2$-T&TV>6lkapEUu`kse>W3W>GE3uL*?fDgq+{!GPmTX;?HD za#u4ypa#JDKs}6?l`voiY8t`_&&90NA0Lgn<#@&z>SrtMOMGXHY)HGDhQw^`CHdw7m=Yv(3)P?j!K!j4H6h-23 zkXOOG-4`qhRo4_$hUQIxQ5{-8tQ#3ojZW3%&?tsfV4QiuVdKDBmsZy-saBW3r)DB3 zf;OzOG|V=ET0J#Zz=OEGLtT9BEiDW4c_2=Z&LsH-?07}->`n%^7 zcAxWx58RJEK0hP@yz0J`^ydaTJ5$nE40K*eN&jGw^L%Q0>ygflzVy9*=V!k3YX&;M z@TDId;5_Y1|H}Ypw=ezA1Dv?vwtT zfzG}@py`Ig{?H5XwV9B9B=edSNbeX3>3avkKghs;tVv0~X@IjUCH=1hoj<0eKXruj zV_*7Kzq7`de$znbF<<)o1Dx%?^jilyzw@R4aiH^#Fa67b&gQgLX+U(>Vd;O!bRIY? z{lx*!SBHVb+xxCT=DmJMf8oCbk{gbIWcvX4cgKJ|DFA@dkr$;u)Yl26f7#brn!dTO zvmzz^@xIQ@De3F_I`^cc|MDfAl->&CEmYun)rh++i=f z^xSUc#rT#??BS8#Kh8PSxkEqC^}EA%x=jZU`I~n_4p8abt7E=KzBi1I} zy0nkG{^(to4t?m(jmzD(pCFUF?87Ia{UN$u-L^+o<122< zI`xAHy>@n+K1^wN2bWXuN{8ML#f4iyD_OP`^C@fSdwZ*TZmZ9n`{5j3P?t?p1J+-m5= z#v5(8ZYvbBByuJ;T~+9|G$=2XZ9-aM|JSj=u3_csK-3bH`TXr{~pfURBoM@KJ8-MNl?#r0HzftLu-5CqouzmPB-; zin~*sw=ewd68IjADFR+zAwoWuf!a&-`!jUi3afnB765y+9BR0&^G?-zU=$;6qIxn~ zlDt3rS7hh{z71a$_qV)`jgl7yMLCB$-qkN+#tUe=GHb9C{!vLD#Qx@NHRvSf8jR8K zfqL#FI^e&O|Em_L3ofcz9CYd{;9qTBs5-2-CZjqlcwITQI#?16hl6#o1tt<1%X!Dx z7NG0c_JV`^5{}-)aP*!BUMZn?trM_`1DhNU@8v{ulbDz?W@ZR?R>#uT(C9KKNnKHt zknfM0Tr)S6Gcs=fHAWRB|5xH)7Wm(>z@!Ni#s!8>nlfWpVASy3;UfbhvU5gd=jG%C zhE9XsD7PZ4@zci+!wldXwir?_pXQ`2%}hDEfA2o+Fhk;YF}?Az%~-rhhog%Zc2lLqXJ^@P+DU6vKj`7^+%V)z|dPU zF?^@Y#9R*y--S2nY6-)wdkmPrX2NjW9Rp&k3~Vr94@j&aBeN;BGy}_y^gHPuK1RTR zb@xZY0thJjl8nHVjLbsdLY^<_KCE0+z_yS{2EkX|k*ADkhY~(QQ92Ih=PbhNP>z!C zt4#rVZZ|2HmzJnj)!T<$K5kpM!>4xnAYKWdH27%#Ng3JIeKRr(GWrxi!#NFLK9XfP z>KLDqd2MPz#^B|?f{Z{@TIwx*GX{g+@tRzfX*cC*3Cb+Y$i{NMQ+8E0I}dGE zj5aIG$oI9R^vwuNh?%YwWfC7OsH1#8OdX#w_&VSCj6hr3_>7^~rh`3~_bSN9ZR$NK zqp_E7L0aF8+=7hkf{dX+1GJzE>f$`?^C+_q*|>LCGJ&6Do}2Mzy6;nOnb;hheE3{M zGH-)M%jIiJEy@^tEw+i}P`;r}kk9rMUn`VyC}7ZDbiR}fwBIL+(Q!_Kv@-$w(OfjG zlMA1XB)<~UEdScn!f2bTi8i@O{R*P#f_~XR&u!`}3vcQw%}|ulrwGe~Jf~4z;sZu6 zeW|PCdGdj09d+1qsZU&o_0)#-bZr{c#d55tre2dW@~`fzDhG@Zt(-}q82kA_k}(z1 z&`$!X=VtUNf#gQY&tixCZ#>Ke~xP|zn;M9VNOIA0dS z)X)vNr|^-n;wB|Mkv>{C9#x@z^}-QFi>=1jBzd?znN(NPP+K%@N?CUKXr1ncD`zCK zm4)U7CoHT8RcqF~*mY9u(PwDH9=q<2JzHt7t*C_Mh|2YtGJTO0V@YU11++2ENEh8P zs`6^uvS64p9J}t0JqI&P3na}vman>F9fhn@8Y-)THDR!~=FZ6$NKAs+F2~X%<%%M_{w|IemX=`NhJhR2vn0Y6o=x<;i z1DY|Tz&g1iTo+oJyxuW-Kjm*>9fkWb$r>kTjQO@mQ7MkcIU|dzgLMlon;EJP!Cp*~ z*2)=eY!;EQJbJ05A`I`m^;D#>AB80|+o;jh%EDvxn{&mctH1+xSw(T#i1MN$JyXSc z8?^Npb0tt!78T`;jC=jAXi8pr`GV?(^2()4bHpl2?)C2xa z9{kt$fPbe4{|!Ch-|fMV`@_kW{}m7Zn|i?irU(DcJ>cKt!H;b++5GSK;J>v8{0BYw zZ|?y=zRiN6kB-#%e+Q(K&3_-_?=Sf8>;eBE5B(4Hfd3c|{{QL$f0hUTFM7a#ng{chO4buMWdcc2{hyGvofWOd#AHPMKZ2gyb@ITfA{^=h4IHo15{~`~5{0>2~{PR5c z@paf_`Kvtm_x6B4?7{zO5BT|cfNVc0AT!zg^Rp?*k4H`>%YUs${?mHEf1?L~bgx|4 z!RCM7?!g}sd|VD2|J@$^8$I{~fFUVuMMFx5hlzjr>5S+&Gyc*!8m>7n^42TZ*&wXK zUzdP@z8k)>&-F1FK?o3w%h;9U%(d{BCdrR;x|jYrN%HTo@Yg2E|AmFWF-iVmka@5Cwh40jTZh*#Lw*&%%p?qjPq*;zPm=!z3qQYb(Ov$Zv+!qT>+*HSpAH@0tNei^`3o)l z*-7$WZQ;*PlK*K7e<|_v`xad1nVg{beGC5_;^%iWn9bz>4m4gb`!y!XUuNN7oh1Jh z;P>i3D?R$pBq)U0e^y%bZzBEdzuU^+WYNEx^phAhe-(S^$D@nUe*At3>v@hCzk@eL z;7g95vgCh1PD~I2>VNECW-O^vcuFt)C4}7``7Z$~(|!jm`ZK9O^te4L-_-wSi+<;0 z&BEgxj(<};^anrz+QRfdjwJm!zRO@-!uMaj%RiX(@1X$%^_RlOEdLp--xz3CkJMTz z8__J7<)3fif0OuEMmcrD?!Wtc^_E!dJGygY}{!}CX3-P5I2&O*MelHTg zSkr?fVEx>#21CO^l3qsn zYjd^I?(`1?ey{#>@POu*`tj>@rheC=e}9ttCs_2m2NU&Q=%K&GqQ5pz^LJPNMvMMc zpC#(Q*hBwji~jvd>VLwbf6wQM`pZ4^e`V2MOY4sA%74(JKljT-{S_Yib9;NYzx_$- z9|`0^+h5S4zxGVUuHO^XN%i0Ce{(GQU-?=yN&P{9O#P2o^zTnn z|AQ9&LshSiFaH7${kQ|2Wcb3_s2u(*H*- zM#;i|rmpiX`QLrEX2Cj_!K}X$Oa6DJYQ-)wuYkA;K0vMlkDu3B^yiD0S=#DkHk zKVs3JiJL7D)~Nq_{a+1fQ~&#{pXfMh&)2D`3{Y(9f7_yeJ?YOS`(ycQ;bZFm902sO zjcLw#Gao<*Os}sJuRpcu-;bL`5ZKPBzYabukMVx6L4lO!{Ix$HKnVCgqYP&GdjY@M zrjWi5ZZ<)fMGX`6hv8%DUq<@P_FG$s+==-z^AVy^ znEEfa=$}LSU(wYV)f$MVbYhl8zjL@|tOfrP1L|*tkEwqJ>F0I=Br4<<>)6=-q*+PV z8B(+pzow4;4-$V2(J7-i&OKaygK#17XZDW2!TD!&wWa*E1GFaek1=5Ro8iO!+^&xR z%ot(-ah#>4DsmnL`7)UK$7`eOD)QQ^G}qFjb-WUyM);Weq5F91-?IvCK-l+P9rJ%v zKjUVMbZO3?51BY#`_xW!;vJu3wgOG#b7(Pcu=o;I{Y+1bzXW<(R3+e}4TR;4vEXAZ zc&-H}XWY2!Q#+Cd2$w#GoEPJk&-ph4(U(5>jeD=)bI6G>Zu*>j1JRd0r@(@bx8M^j zc%cO^vfwn>8h3p>2qxg(o!jS}XHe=(pL*Lr@s>~Rh@D~rV7Qyzajz6a!|3Y^y$dLKL|IzN$m#q3j_d%PUH@+ptn3r9~k zJ`79K@%I92e!LP93=;0*>pYpuC@WwMVgIsQZt5MRP7Mw9tG-=sx)oP835&l#8q z0^*B)J3IciFFG5U__yK#y7D>Sw&3i&#^3fiN5unCIp4A1zoukqgskNM$@XTlIL#EJRgjGv|O zm>PZH&T;qBxI4l?tDjfd5G0lM?V>0WN(WCfKRyi}}*wk@sB-{a!_15~UAN zYA{TJUh+=`e2DP#p&6)fu7$qdf#QgjbBa=BzqH^f(2$0Rbq(u1 zN#U{e3*)mC9$Tj{{sV=_)+3DL&r%O@DyUZJ><75|K;e}Mcz+)Ms_7Wy|> zJ`G@at^|fGaEZL+47cDHTJW$1Z?xdoS@2sdc&7#b!h#^S__ue?|1S0Pa=ZM=kV!V4PfTdi>>l3HT7PKfup3&xMUK zFZt6f_$&*)*n(e&I6F^KYdFqr7Wzjl_$CX!3-BRg|AC(qj)tX_SGg{*;0+dhg$2LK zg5Lu;)*~-r)VV28?zb%T{lD#<&yf~<7T_p9aI!Y$1!U8k32!7^ouvZzUI+Ymv9H25 z`3!JQlL!?Z2TRK1#eNH~FwazYY`=w9dKW94XQ$Y6-m3xklE21+Z@1w4E%?#UZ@uJC zvfyD0ewPK`ZNVK_LVM{w-Ga}y;43WnIt%`u1wRUw?q2yh$AZtd;MZC3^%nd+3qI%= z@B9>4@LCIgy9Iy7g7<9)DP`Dny^FIx+k#j5RLzU$aBW>p?eMW9 zfa-fwYzJS6qcVzeMwFLNoH1p>^x~;g%FDZCi=LO^#bi78!u!ySo=EUMIim*>Jde-l z3BT7F8a?2rgEV@;k?d(2JrUWHBQ<&?H{o23MDCK2rG?{F+oERTb%a7rjyPo&j*v+d z6FsrZi+vOxG}LppG5VNWFUCnFQ^yySl$X~x%q=f2j~!p*rF{Y(RfXd~Np5+0s0I(_ z!19jBjdpC0Q*v`gM$e4G-(g8Cu=mjvg`<@&al(j6mvB4@aTuLcp4}67;90D!UT32j zhmZlWInZ<^xGUO3$wrR7Pb%}sftAoxV8Y>KR*7DehDbW^NjHe;(Nja%l6=5PqK%0$ zN7t^WRNHZ9HeuZ!bk;Rvw0Y8rVXW%;y?Iro7{o;6is}6EzUf>2GlM8;TC+X+J7d1D=(K zt2G*qn5(EOf;%J1i)-rf6RrpcJ@Q~b=?sfoRzDVhEDU~0tO!ct!5(K@acUWy=CpKa zd2O(+zNWgODipq~d~vqQdHonTyDhW;ju|Agm(`CdpBAhgkzHO^9$Zully$+{@_O*$ zDi#El)rcY|8;*>c7X;6-<}&1FqsHA1)z{Y4!@+uddq(w=Q1v`eP~QN@4FPXeup07F z79IuX4c4ht&X{ucN9hM4Jx%K2y-qKmo(=x%81P@qMwVBp^3~);54I|!;hqnvd zg$_@bw<~%t7q<&~J{!)S=VV>jE|m1_6u2(3GCILU6o zqPfc}oj13HPSMoE4g8LxFf`{hMyIBb$rVdUm@-G198DI9(WIV_tks6W9YIFxy z7Ay;otc0KHMU^!Y78b5G}}QNE=%|t!!>FoNWh-^XYK%9;85KE{w_z zp~9kxJa(T~79L$0hC?o4ep6@XErC-_t6>xk;X#s^2^?I*3+rl@l+Uf0S6*3BAMUQ6 z&6N)ttt^}iGaZPi4{~#x4zfqlX2N{lP4JirfqnYSZs$v_q?<`~lqy##C>gC4YqfJ5 z=7WjBNTe#+Y(c4bI|P5PSc^&AHKDE%>tEb-a-oTp!7>ldku3k-SU6C!Ue!!Ul?A5R zTKHj2IM9`+*`$<>!e8UWsUGvDJcp?OEQ0kIN;SstXa>4=bCWA3cq}+^W9z{BO2#s( zpy=UX!+=dCv?4UbLOqr!DIOJ-Xkjg9Ocm@LRRxJ#HaT^krD}yqRc%Z{GKFC3E`}%V z6MH(TJP6`~m5xnT4q_M5VrzW(Q5yB5HnE!Z8su<)OpQs}^)%W5Ev~g2tq0oJS)XQu zNmz;NWg*x)>7zxvpC`DsjEu6SjN4u%PNGWG0miCHaL)hkb4?co7g23gFIfalvMdZP zF^!$zv@QrQELXppPJXx;5=Rxoc&mqr@_F?&?+k^O(I<~IApb=999G5zLnK; zfs?O?zwe;bScBuSj9Nwo{B*oAUmFyn1apH6Le(&(gew<1<*H0|@YB^W)zB4;etb7N zba_?xC|*TcCU3J9izz$1a$&IYQr$b$yk@R?sa$#W@Y~O7zaY-dG0KKLO%rw3hx5Qg zB|kwr9o)ZgKevP8C9%?HOy!EP=c>Pw2_*`J0sSkN(B%vrgB%mU;7Z+2mYe!Yq)T$L{ zoFnN)Ic6>_Hj80x8}D;^k&Z=D_=$vMXmcB?lNX$)iIWtaS39EzvU9SDTuL|FyxwiZ z#UJ_(`gbGruOcLxxl3Aa!RXeaV8{agutV39dqNzoJUpsLCSI;HJVcL((xPxLVjdoHMu)2FgLUEPPXg%k z*JIiA8b4yp+R6GGndb$og5lub#EcGgwRWh@!HqXxMvO8tH?gi}QE~OWApXQed3i0& zra@S>T^hWsyb@Bde;9pp9A9Z!1D`M9H!3k?)AL|_?da!}#%MI9k$x?FnEo8XkscnU zN8kA6H-Akz#YAt)IbX<;dS?py`ytJG=LmY#%Wn=}O1LS%Uf{C4%LFdVbsgbcE|!0T zh5j)?FY~{}LjSy=mv(zm;8M=Z7CCQN=-(0a(r)_&j`G=_Ul0zjzsA*jFM2N&?fFwd zPhUq?-{g^UzDx9`oS_yuqXqseA^$8PXCvVJPQ)(-{ZoP-&;7%IdL?}>W*h?6<7So8 z{|W?tB0vX;e=6Z9=Wh7GYdb37xq28dlI?_l2MlqnYqn=4(VKb~3OQQ^{p|wZCh)rj zzFpw=3w(#bA0-^~k2u%&>x5%|5a;l=kh2p&&i`J4KO^u10+;3O(PZrbxQLB9)hu-$I7 z;M;^8Y*!p!wa|Yo@MnRT<@ZU`oLH`V1)eGJ`viWJz@?mHE%*r*d??{qzgg5*AnCY* z{vM$>B5)k*IREVee*tj1bnc@B+WFV;;r{+dgC1UoSD{b3j?oUg;luI=6OM9z10U|c zSq7dD_b?0-a&YWrIe7w?^3Nk2?SSJpzZpAS$iEwK);mYwzXhDj^`MY{8{n+>Q-QxE z@U&iV0RhW<3w)R!&pX3_`0wDu_z;0h`W%5vdOWubgDJn1a4av^71GTR^is|Of&UEX zI6s#Yj`f1};m~fu@3r6?E%?iXV?H;taERX|9Lu#9KAfL#_0~j)Zxi^j0^ct19D)B{ z;H3hW^JBHZaqecljf8XiX@+|k+6BGL=Z^*c3ed5fUm0>DN{Zub61cR(HX%pKe@@^? z&+=a;9P115{UraOMgCVpjaI-z&`CAwe$1-t$DH6DBKNkvI_V)z_ zo)5Ax)C>F%aLw|U5{~(lc3vj%SK%Jp2fvqw0rUA9d|1xSg8q+yGyP8lF2}vQ4V=ff zXN7z@9_|+OuM7E~2z-~o2OS0%5U^YlpD1wIZs%L@%L(rba!!QLQWOZ`YJqRokovz; z$dT>shXO}>w$H7Eo9%6bMgA5cN4B?@1TNd#2LhLNI2;QE0V5pGd7Uso;6FzK3g0Fi zi@z2=od4qmJ<2I0`jZ4M<(z7fGulEwPSD>k^cD(w)H{*%P8IZP1^sM6kF9ofZrI27$|Z+$?ZekIxDD*bdiVh9SHx=-0wE*UMqppdcWb zlz)W4rTn7_M{!u*x$wb&-#f%$+Gm!)rTjSpm+}`{@H&A%40<^KO9;pONWbeYL4S{+ zf51Zjl7;?H7W%_zAj0xW`2z_z^K-U^-WB+>BA*uv{9b|A5sul4z=y}xD=hR)0{@ec z(<<=$1b(BycM1F<3;wJH|8IfIa;3ocCNZGhB;Lz{_p{(fSnx4~oA$q0(98O|Lg3QQ z*IDp8E%-VM{(->dyrvFeBs(BZ=5mhCfC~s%zj9s+5RP_}^V(2>%X-Wga$W--ZYM>8 zUe3SxJyZ-R{{{G@;RS>;1Lu5RPPm!Rs|CHx=L&(#eBK~%=|9{`xLJ=+3wl|PFA5y@ ze0Y2qN8b~~ay>8b0)f8(IG1-8;byto40^W1;{x9;1J4H@46g|}a-H>| zz@_}JgdFtucsmdA|D+Z*O>z9`WF6rMQ9P5j1iTv*g zdMW2qfy;GJ`Vq*b+dr0z!_gKz$AX_rIOb!5>#WBzfTZH5nquLQl!e{c96Ee0%?^v_QwoaNl4sNnbP z1upHABjiZ=xdKOew%Y{4vArR_pXAT6$PWrR($0$nF74bb@LfXh-4-0bXN&>uAnkv^ zg8K(5@~D4%m%elc2^`DC;aI{^zO>JY0!MnbPd4GEeWqIE&lYl|edY^X+9xdJOMl>M zfy;h$v%r4?`Q&lqE(6bpdl()RxLglDLO9w%wm1AaQrBj=;v3VJyoy((}y zKEGw)JPscQ-+RVjj@uc8V}9g(bh^N0yP8UPU!Xq`KD&_-!gPUe){y#tiI5}PLr~yI z&+Va>aI-zMTIAm(KIJDDMxA?&3-?8*lzs@M|#vd5k45cCFo^71A-oD`P{vs7Wxr_ zUdkV5p)WM(i&btMr^G^kmB3{^wg_C-;}3;=Y=^v#yH(K3@;)bUDgPybOZk5i^0B;g zDgPaUUdlfjzSoWc>qW{xLEuvUsTLf+ua5!cJPaSM-*JRv{mOORTtR=2ps%vf-)N!# zsfB*Kg?_idpA~xFAsqX!9B)4q^!Ez-PX#X5UtbAa`onlm00y+rF8Hv0PPX6^Eck^2 zm-!D`@H&CZal46dEbnXZA-Bz0Dd^?6{X>DvaU0Jqz<}jKoX71ah5TOw&hobidO2=C zD{yJIR|GEo|F;D$^K;O^IX{DFLd5dQ{2WC%=3nOLc!A6OWD8u{e>CA{JD)A+Wjl`u zT(+y*E%+9JOT9ZS_}2oL@(04X2pF)uQqEa~qkYh?Aa>^}LH`oq+-`p$@LL4_V}bup z;A;df>3=~u+AR$}93B(&QqFdP%k{~Al($Zr>N{xb%zG3OUja>jXU}3*m#|ae+%YPg>;cw9r2< z=_|dPO9y(v(TLiv{aBNpNPJRF%40QtEtReM(iIB4v5SD+ng}zzPZx!^93S5p? zPYPU)S1$>CmymPp5S1-eUvCM#K;W{SZx*S^j65%sI+Je~v*xi|%70ei+klSc|5o5q{%aQeU4ct~wfH2ZUiqs?!tHa4z-7BCBOL81^Epe<%l0`} z;8M;4i=1@=-zCcXk_G?7f}eG=E*IwWT_NW`1TM$7TLu2Kpx-EP=_kBPIM<_}#*GgI zzFB8M{og0#NV^@d(0?K5w~G9nK2!_Ea%~g%Xn}7Rc%i_hJ+Bk^TY~<-1TO71Vi*uX zK)sTFoWP|&;0j#QPZPNG2QDO>?aBT?rJ!F8y1D&V8T9NAge~;T40`qlA{P3G40`ql z)(KqJ@8d#_tluqy9{U&j13LvScmyljz^b-FeP z+F=)bxcwJe@Oc*eX0h+lA>{lt02dHYzT7t;w@>YdN8ny25chbGuCJWvFJIyP+u+0HCHF$<{fWTo^)!Y5RN(a3Eh?Y$L1s|&s|9@yq%m-Q`s+(4 zk7CTvYWQ$|&Lf=Z**;~2oAg10o?c6E7Fp=8Ht6~J*9r?g+7<)n=NNtI+)1&SpGOF1 z`T$-3%0mCVK~KvK_0AsNGUdN-(34x`>?7Qy=lPBEL*2pQ`NyRHHZ=&Q&nCIY5pL3- zZqSb+dilNA)qrvRPB7?miT*r`{MiQmSwvr9p|3IM^ND_mg+7DsW4UC%<9bH?XYk?t zv;F!3b~k)DaC=6($^H2Yhydl>10R-CBk+3#zC_^n2^{rdz!=9*4&2@mp9mlRz0x5> zfO_%6dddBdw&!A^J44X_r=TAz@COCX^?>EY`~={Gp-@Lkr<7A7a4F|}!nwW8rR&*( zUdpKuxRetT_(PE9^73;$w1J$DlC|dnYBxiK{C|W!OG)29n?3pWZvWBtT>4LH&v(9| z_POSt)Smo%$^Yo~`N}`3J^A;f|Izkzs9*fEji3B`+y7{L^7$tJZ1&vr4UM0r|D^4c ze+Tg&-9A_TliG9jH`G44U;O{l-{m?B*X->7m(#qO3b9;IjT5+}$2AlNr2h~;Ea!Fv zAt3${d>DTnK?sOTIp3jrGv$o6;01*9I_TF*Dy-=Q{XW20Z#vya`ZW0PJ`7%CK)w6n z!}NXxA>jQ#tCar7>qk@0QAC6I$ATXBqA{TSzrcs(^F9R9PASAAmH| z<60F1(o6g?g=+k-kY@UUqJCw&lI=w1=ORHb@!Ku;H`wKh79+(JuD-<4*~*T zLU^Wu`zW7-4g52r4;c79!g;-dx3M3+OL(?HzliW$1Fs}J-@p&2{I~`_o9NlE$J?lP z|4{e`VU|Jv2+`}iWFMf(B%lw)$mSznro|W`JiF41K26Z`eS~@oT*~KX1SnV1{{R6B zgDFN4s~ChhKxxEVDUA^oTjldwfoD@1>DvUJEAZU0;R8W0?a(Rk0Hv{9Hw#?a;TnNUJ2VMg+M!Y4`IJWa%LFd%zUmL^0xrQyQa}D2;dqr7`0E zi#V^r5&shZK|nlHrS!i{vK!(@2%MiOBR)Xjxq^P6z)J)^NZ@k>ex$&|0{@o4xqYJE zZwp+mHwO!x+ZECuCGh8j{O<_-O@SXHaAg>{MmgUV_#gxzV8nY7czv3{0|-#a7dX;$ znHLa_ZQ(8^hWJWBKSbayf}WOe>aIM$nn)D>l8{5Lzryzje5jEBrNB=Sc&1NZ;O)}{ z&gVrVK3w3rf<9Z|@?7W<0-q!3xewy)u)xO%`jrCD75MD}$2?_Iy{ykf&BHT5GXdMXN{}RJ1-&)cntxIkS8A?ww@Q-|tsHe?PzZ z0K;xJ;pg`wxE8;?htw{YIYwSS7B$^RR4v8f_l)Pk9tNYkI<9}Oz z{a*63WbQ zKeHp2v(<8SW`@#>no{m2_mW3}W8FCTur7Tm?PYj*$xz{3gPi; z^%&BRv-Db(4j&}5Z@H!~W`gV(c;-Y<7q4&2Etw5S2+b=`G$HH+*?(&6eibD5*Qwbq(>-`->^Ot`;OsmeiVif=t`M5G8E=~ zg!NW*=G~b%I=Gv1p>$SDL8b?_n^O?3gj9H|6;8{PWr+ymU!7S(MGIx-A!Y2g1aGUO zPv^wnR$DFWGaEn+B9J%22!uQ-9wS$_L?TUuL>sNU`6L)ou_=N$hQ5_1QBZ-QWkd^_ zF!XRhqc#a$XhFHMMZdHnGi19ig84&^JCh?%9)z}=-2A1x$r6m$;=r>TESB$nYN8x@ zR3A}28U$L6>R^3ltDt$C z%&=axhILRzIqq1CH)W#&ja%eQf|*HD%;zC|6s_~7BcTtkJ6N%@0Vp;=7Dpb3=dzIB zLoWFZqL9a-ASxu|qk${haGJM$hx1qgHV0 zhrbduMUg&Y=!JV6degwF?qdrKL-YK3^_*0-4d(}cth7tpkJ^Lz|E7aellFwiP+mS-^l2QaT&I1c4f7V_m;w z#k~kZq`0f};=ndSp=W_awtPOFx|^I6FT1rmHKSX(kAZV|ofm za4tSpay*d0G1|_tRdDcZo=jlc1S-d6^Ya9z03aey@+$JI$jD3_86=1|Fq$Nc8^ogg zdD$*nqct1v8eIf^N4bPWk+e+eyB}iT-HYRuv%?bvHjxkWN;*cP_ar7p)q4bq_-IX_ zUI8LF_a?aKH4(Zh&O8Sa%+rAg`ddwz4PZ=BMa(*4>I-Ea69>V(7s@<34w{3|QBkPl zm+^XaUf+2qu2CNC{2HTmYP{?G6mOrgB61W3J;KW}+fk3mh2TjOx@@q3q$`#wYjV4~@ zhCkr&3Y1Yt6y~dhj$GAdN2SVv4WF7!+xO7z64jQdg9>-zhMWjeLrAgj+ULFn5y|#+Y>j0Esy(BnQfY zn&5oB8k3@Q{Z;8gMXF>mS3#Anqdy4c{+OHqiXw#u4eFoZpuQWZa6MBTc6{FXn`rxq zTEp&-b$|%rkF|k<*fnkb+F>w2w5m$<*}NUmO6`SZI}c4CfwwDX{=b8Gz8}C?!`s-6 zoCK-2#kHn~K~}eY8T+-cGh`){LTc$dV=6DHKM!2z}sI$<4 z7oGmUpo>y*l~C0$;#^oOyoK6cp{%UP-7XwN#D3W&DDLMthMXtFiTyG#j^t1tF?V6R z6}J&9LWnyQkhnSex55vKdZVl0me1%gw%9oyAr3iscifY}VcI$T@fSz8jhFF$=SmnuqNY_t6ad)j#d^+}Z5^-)RbmZR z^jPJe{Lgn<(gOu^FDUBa3BRum4H576Aru`R5{3d*I&l2{7Ap#`$k4F3Y9B3DE-=xG z(s!IBy6vWp0XARkHT1>gRBLyAVV>o#Z^v*^1DiVkF;}e5JGXF`?MrasL{8#^KdHAl zcXx_Kg2)tReQ1}_2GLOq%60r1vcdVL^KU{F?4?V8Cx3cT_zQT+VTHfLUGDh}&tg9m z?vn=-?&f=-*I1F}Rzy#2UWyUzgePX-$Z-=2`7noOwkQR7WVzVbN^I!I9Z)%d?WF-MR1iOHM%i%akKRDBJaMW%jRk1j zJYUXG(6C{4ic!Pt1UGDU>bz&&VURPQnqt(B`YluX!PF!MSDKolY+Sz%Lp0DHbXdpx zjJpYUq2v0^ViW?EUn1<*Q3JP0&t=a+>3W*WVDnB|Kn;8U?p$^Qvj6%Ld1? zgZZ?Zxok3u6O+$Zz(VGZ4!FIZ%jQSLwdlq5G?zUHtZ|j|GAs;Pb`aE{Vdefkv`F~_upJ3+0EsCrcuUf3;u8>OzFN&!j*9U}MeC!O~})9>7c`3O3w#we-XZ;2|yiPTIklS5)-A&g(-tJ?;63+Sx^F)`vM5x9VVi=hZ!xv6(gY$IR+WGyxVLdS@uGQ4(xZEb3>a<{l608PJDxBh)O+D`dS z3+}G`Ml>Daf`n$`eyZ{|vbN2mzrhR~@vF9`c8 z8>w7jC>MPvwx0myC3*bSdgn#~LVpmWMdVr0`Oo}=2Q6_Ld@BSjF@X3Q#WR<*g1F)1 z2aE@zON2kOu%t3G@!bpZ7o+dHKcBtC?Pfa54%=ryy}hLBH?Bqe=i3`NetlK#!;3v=-~WmBhPi^FVi}88hx40i0x*7Z zpHsFss4FXSUf=MSRwQlTCb$##9@~9S&r59d_WSv^=kfP)YLl5m{{M=mggXE6dnI!urQcINKTua2mHR6zeOCp7Relc=W@Tj=6Oo}JSanj!1A_b^ zf5mYgBdfZi%sA(qa~7cRRv7u|1TA$k6hZryM+g-2 zfm%;hFy!%h76yD}P!$XOq4`0mZy7lKR3Ot)N9k&NDc4s~(JMVbeo}gX+@$Dg7gd#O zOJ&6D1w7EN7S;s=o^oJ<%YUw?sH)aq6R0f@cZWlca1 zGDOHla#1862M`g&CYR{d1tPB+a#CpwX4~P%1Fo z-q-c;V56y<&qCw(EOU-f&V58w}FK>D{C*QY>w+aO5aKNvnhfuF5Taosx5cp=60 z)ga@o6xXwd8h4nk&2D40>AH20@wDmsaG1X!Ymo82>H2n%@m$*SG$2~p z&-F%zv8JEv)q%!${XpW~{Z}LNUN@u>bljHa+m3PIW6UNe22FuZP4%fn5{0?GcMy{*PxeO=JPI)vD=jjKo=(8?So11 zOL225K1BDk;3p@MV{yN2csKh`XJw+JdoZrsCBJh-No~fl=T!t{8 z4T&wU*WoiUPsT9el-n>zy2i~zY>N{RCckf_-ZA}!zI8Mc%5Fuj>ua6)^9*;>eLyGo zD8N&GdWYKjwIUPxT5_KPoO6$bU;3CJ_Zh6n6@9I>N4{{yu*X)cUt+cV8kwxcAI$;t z7oYr*weh<&%l+6McsqUVP`M9bwfwdXUy&{Dlp7zki_-W}O5OYDp2L?1i(+`YW?Ji_xt_eu+SrBpd;^u>ZpOWqqVVUxhsY>8d2`XmZ_|q1kG*HLq&;ti zi}7ncXXRTPKa^jlg?)@kEotu;wWJkT8+WA@r|h@Fu+Rt{46X+hRODYAIlegj-Q?U4 zLZ`F+pXQH32jlj&`rgRm&7weyw_pUsb$>68)Iw&>;y%0=N>5+nb`j1Ua=K{LKcV5w8Bs~Sm>5C zC@+<5LPp0USVb)Z&IKEhd92(&xtF{H=3-U3ZCfkuh`S%#Wv!jC=#URa-SSu1g8(P5 zV>9y88xt$HGIL1i2rDuh%4Xl$?X24?>yL;hgNieX!}8TZ+>@f*PeO+m!`jm>0ye{m zQ2i{6+Dr8NcXS_tRU<4j!5+b@ae7VtgzsfoM!@7O4n z6I+PRaW2H}rfd}8pfwny?w?|x3v5cE#=juA&~McG;G?=G zP!*EPeD&C{El&*FGKcPC%OwNXS%zGc8FCGWcVg*>_c8&CQdqPZYHb?LEio}=^o#)R zLX4rM?x<4Gw5BjhsGg6U94rgujELK-h*3q!|1a@>7Wm(>z##NMYg$MEG0296ED zDba@EY-z_vI$)LqhTr9|^Hvj1|K_)&iRr|qR53%zB@lv?b;F3C=m!4hKKRqKqy>C7=tkVE)BH3A}&-nC=WvTh; zLzbBN>7K^4)Z6=~4*@;KOLC$2lSGfdjW!C>vqkwGu(uqreGXWfP~9-Nyde(QX%1MP z12)Y8n{UIgKCdS15-f+PpVW)7Lh;#h&9jlnNA;EkWf682Hk*VtD?*zUr01EOfk~Thl*fJN`b4j24^s$WxotNIw$DEheKYeU| zdUk&LFrWci$P4OX5{?NdvoG26pzdS>Kgm2leV5Dp!dWIZ2O|%z*(CEWXqc*eEvbd+ zLzZEiSOVo6)(CpGrkD{Z!Dy2^@8JAsI{)BopvP}@WB3RzC*IVhlA$oYZy}Zkc~rakLdVk@&x8GNId#el zAPsHYlX`x7-(pDCQ@dCQvC5y(9V%BtbX?%LO*P z3EM*pwufbDQ0GgqJv8<)XON+z4Zu1$b)K|+6q<_V#c^jE$-D^CvR#MzW0RQyHBbRi z$d)J9Kh_2($~Ks1PJ+B0n&9|@Q!j@Hpr5U67NH(SR_&q%AzvB9p&A*_SE(9*r7tVw zuMZhn6|jA5WR=y{8Uo1j&Qgw?a`bYtO9KmF^Lc!*sv;L0#iA-q6<(ecLrykuTu=x5 z>hUa-Y~EzgnRLgY%f*(-NYo-{c(e>t{d0LS>^by6?kIdjthh-@Po$65jYCyPpSxgq z;XRiyol=_Z9VOE}aOI3Zw$ea_f5LoUph~jl#_p41&tDLz3g(vw zDu_LH-xGVb$i3QE4$BIm_2^Q0lN4idV4e@!m}I1zo)|@WC2grcL<-05dt%Q)g=wK9 zna8NRo>)gB>y*0kN`Ei}_Lkf^*$jzEu(!)G^r|aR&s(ppIVw#=MpC?N8ig^zI+n_y zFKS3g;wmpIu36eO;=Oka^nhuLs{PnT8q`s;#<&TZi-9VET&goRb}7`f8`>rQF151t2=mmUKPs8fmJgs$^&x){)(PT7iSS% zZKFj>VUV3yUhehRz!9s=Pj?V&l%(ORt0Mo_$s}DkiQ1MK~Piz zT9u9j#imYz6yz#86y;96%R6gYLb;+NXN;!QUiR*2ocF|Jp<^PW*(OImL$3k4cQLt9 zLXBMba>4=_-;6ByR*F9hHcn25dMdwy%;KN#om&GVEHn%BC(yI}Z-onCoph*!ggnC3 zUPdF_Uk#V=@mZ|nw;cHKtxdB0Vl4plJpXHZ!9UX>|Lc0eKgWT;p%?t~9rzdbf?w4v zFaPzu;IDVcAL}q#`!_i7%_Qm63sC$6atG%a6Y$z@YYjk^gSElI0)l zkpBa{;6KWNe@!p=GadLJ=>`934*ZYyf?w_FbNfHm3;wel^2aeHS^F0_@c&mY_=_F* zpXdeuGzb3Q_JV)51OJn~;IDAtpVABdN(cVEz2FZy@PE|{ezhmh+t1g%;8*W}IR7`j z;9usT|AAic-{QdE+zbA@9r&Mi;P(KAq_hPLDH$Fo{-aM&h>SDhZ;d12UiB&dsP#U1 zxAY7d|cJ?Khn0R5Y9NN1v4k zq{X1(XEpj~h;IWKhDT7xKJ5DAX-x2!5b7QDp9EBP`+cd&Kb!KW*WOY2_WVE9Q<{%TJDF4H3xU!pqj|6_F^0zzWe*rMr^FKr7591IIC6vFtUhU?6L+Viv9?^WWrmvb2LtMA>A z8qxffoZXu8=b^I)L41ctCdH>+pLaFoZ+KlYl~6`l{uyxD%RdAf4wCe-mA^g7{09NQ zQ~TNR*Tnp1I^=I@^3ThX{5_R_f+l~@8;SYPa>&0~lYe`X`8R0tul`$N{<9tOe@>Hs z9{K$}m4AaK|MoW%^T(el+3Wv1P5$jk=D%N)f5zVv^Pl68|JZ|^+h1O`k+_d%OLAtI0nP7gi8@D*vOJ{Ec@dKhJ+I zK=%Cm0N~jFlgvK__?_%u@?K*8^BwXZNBP@^A7d;HsBh8uC8Z_ib)iOo4}P%_Lb;5h zpZ4*ySfhX2KO~DqoH%}70T+;qpw=HZsr(67Q7h$-b0!b={KK03_fY<0sr;D#0=Vq? zuK)mjT$5)4>0Ok+qF0aY_jd!}RDYfiB!?;|<{yMh@hkiZ0G!&-KFS}z*T;js{Eukz zA4~bqq=td{{|qjB{>S%|`P8 z{?|46H&Fg_h+jn>m7w?)P5$!tYLFl6KUV>dJ^wCE{<|puowo7Ep8q$R{4+YFg4N)k zVZid^`)_;xC&T-5%tEyjNQ$ubOc|3KMyRC48>QB8;*Szg;sfHhB&9_;$#y0?q8XR{n5`$?>P6Pol z4ZGK37y|)MWjNngFvWisOcZ5`6}J;UEdjhx$d8S7;O~{zaf_xOrs$I{08h3 z-+Ls<;b|D3Aa87+rg5zek+&wa2&Z5=dInf7k$D1(>FCKIy=pb_EM~&4t9)+8^}-mB z8Ep+Q3{z&@C=z>S!ntiu!Ay87DXGk8>yPI$jYHxAx--SfG4YXUxD!D@%!Jj4Br_eq z0gCiEYa|BK7?cPCVn%J*V z&SM;kdLC&*n32(>OXFpgYsBug;X5V>R?14St*kAF9ER*Wj5NT-P5@)X<-# z!G~$^lQsA$8vIlZj^Ad84@EGZ3}t@u!SpyJ@R*;h@D&1&`N;}@N#HR*S>Xo+9`lnG zemo2rLz$nf@M3|-{A7jK2|VT}EBs!8(_$2KSM%L^z>j0&^BgMIP7VDR0+0FCFzt$P z0<7fyex6g})&1m|v}M++QAQ--$M~xEa)wD8y#U6YUr;K z^pm3W9!fo^p3NO@zek{Ie3%HZrngKtK`HgB{?E#IP7YJ{)$xnrj?GN z{iTHOBRP1+0EU$sIcqfd8yfsG4gS3b9{{eElm3Tk@PGziq`~jh;7{zFC964ERvCu2=8Fa$!m1WampX_#zE{od&;IgWs#c9|Iii+2)Z}5a(w= zvQtC<6Igl)`wx}$7s<$&MtBA-F_fIU06&iHSE#Z-4Y*2^2oe2V&@YTa)J%=91+Hcx zBf5e*@^F-2pFn>$;7;=AYValv{-_3jLxa0OVW)hDYw$T5{3Z?lj0W%2;D^H!*GZp3 z4PK+cS84FSYVhwgcqS~Zo%AWz;0rbQDh>Xs2Jh0~S+Jyc(r1iMDcY!E*f7byj(>sy0+z z6Rge}H4><1P0^h^z|JZt%o*|WL_l&VK zp~P`bxv_g~z5QyZ-ERR%(fybH61nzf_hq^rO@IFyZS zTv|KQJJnx3Jlk99^)ILf${K&Qw-y{O-#ouC5mDr1!x=dhe(>9Zi;!DcFz#`nwmMh~ z$B?PV)2prwR8>F*wRLdx3-DI@t3Z#^&`3C)twyABMthYvNJsEE+RwpvoaUXD4c_Bu z@E%J?cq>Kug1OO?e2Oa3;|xwiug{^GB%W*aZ#u5BJpQVR%3dojSVzsRtgD^hdtQIN zoP>4#I_l42`EBh+^?lu`TitLt`>WmL;pm@sNAKj1c0;dD($edktiRb!CcQf|s~c5D zCHRvp*KS;|#2S?29C>E3iQGvBAL^W*!q?$*k5g1syWEnBvSK=OP!2cn->{gWm8LN|F<(sf)srw` zj#56FEMTKaX>bJmE3HCY>rN>R$_`8p@`!TyhkTeN&TEx{D!)_57K0}YPSNFXfR@8F zq>b@TEiEg8BgSB9JS_*txRGeXu`nvv1quo$sQwXgX1sNG@DdrBk_N#6@rI?x(PSo0st1k z|58M$wlO@aK=(dva>WGq1Sf869avwTZT7=>R)=q-qevMI;?EE4;yOq{SBG@UJ+; zzv_t9tkWQen^|H^l76PG4bVx6(r1=*ET6R1v7c zJex5EmNa<8r>`uqFbB{1EXQMjy*Q!596C2BsI&)k!ax~)=A>qP{#uH7EnpeutqnLT zl28=Yr7$CV#qf3E$ns#dSh2-9V#*+#a&#Fi){0?v~bBFuH{(7*xPx)UiA_tI-97mxg|lKQ&$xe&&N;)(Zi#( zDBOuy4G%e^s$EWY8bK!$FHxfqBKUM zD2?>@!KLWcH%^frUcE-YA6o!v40bt15*EJ<;Bqb`+)h7((ccegmG2xzkNF}WhAU*0 zAitL3yu6DU&h@#8a8)iP|5qCNrx`uB+a?YDON^e|?Nx?zIe*p2c}GM4KBMP$+sAN} zuk3k%aQOOTT)p?9@9kl|-^u6)GMvjfnsB?EVT_*38O89YnEbPt9JH-^cYiCRU&rXx zd4ZTOr{7QXSbrPfQXvHk1Of3(xD=h6aFlZ|T<~=c5e5^E5pO3)G5i^LrtEn<;r4vh z|GmP;&oX-TKZ+1?~kg;$vzZqGLu&fC@dgsXO?%GITjpJvLO@Nqj_s$2sY&h0sf z;mBXV2L`mmcDNK?!tmz-r(0tlCD6_e9Fm7K2`&gCEM5^Q4Jz;QcU z-WvE{p)p{-eB8kE!7w2HGF+-$RfMB`Zih?d`#XmJiQ$_Wj&qQr|1-mPF#J7+bNWvi z&gsoQzzhNP;q)1VW4)6}kjyxY(Q`Q`G5j8&Q+kdgT-iqmfsYamK39WZt-0^?h0$lg?_4mTd_J#bF&yV~m2V#5s3*1`3oZ;L zjGpUxF~k21bV|<8ZE_|HDTdL&aBhcYCWp&k#&D!p@^2>`>kILHB!8_&{stze9cY!D zEez-O{0EcI$HQ+J-VAawC|?)+9tVTH{T#_~-rrBM;dz4FFh(%^HNceov4mqiay#cU z{4elKl?%^3!hrg`4wsTMgVCeUrsywaI3M>aY`7ZVB1}FX4_g`iPA30JhHqi`YZ|-{ z{5}YSz1^Ou!N(Df?KTsxdSrxfF2i|yvzQ#--Y#G`Z*Q{*x3{;eH1ZpnoOaMd+4&ZR z^Y-=-!?}H4V)C&+j)4oqs|;TyA@TWFCWn{nT}F>`$n3^$hI2Wc8aZER=<%Ez3~2WI z;Zo&I!wP|*#uK_V+>}6iuICYqz5t%7_I8|x{!~Vf<)T{ye;0F;4Ump@E{4`=wpOwJg>F?;TJl`;A@MqjC+zePiTkB0tv4gH@r^xtdf z@pp3=&^}w?QuaBT;VT$EoNyG^43`>L&(zRQVE7wM&LoDfWcW0OZ((>)gGV&@Zy3(Y zwNZm_)!={B;IC-#FA2A|hoh;Zp`F`Uxz1!bxAPPY?$h8Q4gL_rpND+Y;KI;u!%1!9 zO~SE$Uw}*1?=D8q=e0cy=k=(LPCz+){&mssuh0&B{vE(@uIC^duJjy7xLwb489mqY zJce^UOBv4nhgpQ%>v1uoZ-X+Z{_;zP|Bd0_Fnl}1Q{eZ57|;&9yh8}Lmus?(UfBVE z=ZFF2{1Gmt&y7sZi-43+YAeHE205zzTuuqp z^G{6vB8KyI%~FQ%VDz^$oYSu$9P3N9aY!2XGkPxPcMRw2pe=->{kh-!rUw61gZGEu zKVm?AxZgF1aI^!Tr-~Tf4$qYRFJw5Mr~C|mh0!-LoUeE8X82o-{y~QGbm7V7bZo_zu;oLrNGdbKoA26KT zXCL8q`?v?mjO_L~f^fTiPGmT@&q%^ieluLu9gK4s&il~}hVyZ$%!cPl^^7Wp^YvgY z;i%`I;ZpT@4a50(j=#6XfO_)z=vR!M&qsGMoR7~dY`7YSpJ(!4fIO5PUS{-sKKh8^ zyj{8B_plhSUeJHufdzyxnBlxV978yg@%C^6!+CqiCfwd0CTZkPXL8yh4`t^vhV%9i zVmL3?ElfU+Cu$vc2g6qZuEIS`4lmbgMvrpTI_?pMb2(3Fx`c3xr@;k03B_c7<)AIpD}ta{~HZ`+F>I5gmv5i!tL$hY=*Z3t14F^!+AYk zz~o~)RO`4|jGmWw8N<2!TNuve-^1i%c~683!-I^T%YT#M?LepW{|CdleEeND2DAgm zzhL;o@Jz}1hH$J`zK$FE696EfoHn=={b_{T>GAj780_?yY3P?|=vx`S738UWR}pR> zZy#awD;WLn7|z#U8yLQl(Z9&>Ee!uqgPVr~5d#pwUa=r3S6AGc@Na5ZjUOE}7Z0WLLeH!^xYZbul-?Y5lZ-2Y$6aIVi<8?N+u zjc~g@_&a(GXiu)syA0?0>|;2${}+VY+wBpwKtTCza4Gv2F`T!n*&4i&;XL1^8XSM8 zj{)=L^8d_mF6Udq(LQ|LaW?#p9s|nZ>x=Ul{wsK<%5^crcQAZD!#O?v-X8!k^4|s_s$BhlDkY+xIIhl>w}zYH+-RXL5LX+ZoQw`$xj<<=w53zmLgj2R&4IzhgKruNx}~0@|OK>tw?1{q#ac-v&HN z{v1Y+$uV$Y@H3qIMVB)<+zuf|k4fcUEn+yAbFD_sQVo3zqrV^IEB$Y0^q9nQV_3=P zxt?nneSstupHFJ&pJDWvRPwiK=y%xYX`9Q~siE%&=T2b2dTfVFmFrN3^Ljs$aMfjGG9fk)|C$8c_+8yU{!-_G#&n4GnQ+x7n^qvvu?@c=Uf zyZ*yH0v0&e^HPR$Ievz7`UMQ<<+`5XT+S~T&dc>0!#_7-cI#mHGYoef2R9JZxU^i} z8vPl*fiR5Rgrgn!cyhRg{wPNOEbyp$oWk&ShRF&ycY zo-+u?c8j?3$1W!v_2=?yn4ETarsUkhaBj~B8P3On7a6{b$w@gLZXl$>#qD_t!`H(z zm2WY_dHbv*T-kpW3WabL!+E)`V{*9NmT2fBjGni{4GeFG{FI(s7|z?_YYgXh`w3Py z1hfNhhocz23!W+YH!_^t?KZ-d9aaJlhPxQf?a;>La63H2=rO6<;bRQva-P)4`2)j| zUg^J;aCqj`s=j%irz4D{&`rthVRloAih@JqC&u@oIl`Dk^5Wj=r z^x937>rRH#>qmieJ&$5??qT$&5svkEFQqZcr8Mfv_s1?G9QA2~OX(S8_zH$!$?%m7 z$NVs0OjRN7Y5P;)1%O;5P&_kI2Fw>PmG4P}D|;%x{S3m9b~U3P!|(?geiq><2lesL zJ?enLE~i++0_SorBwXopBHdri=(#>VhI2UqhCc*pRo+^LKg{rC?YWTnhcY?;344}M zem^#QF8G1$S^p!oXT=X>PwbNzer)aYQdzA3`1rY#^8K;dbH)#3PxUW-er)zs^W}ef zK2pDb`?1+G?+0q1CFH37*zB481KD%wkJO%?AIP5V|DV~Due11i)=Tz7pM51SyvKlYK7>ojQR_;4z6UN9)Vj@NMo?$xHiXt_(yOl`bQ9iV8@@9u)sftw4xtG?HB1kVfYw^?_&6D z4X%EdZP#-*qv!2sDiT7#2=^M5K36jQQ-)v1a8AFB;avXB4Ciw0U^thvj^UjCIfj46 z^m&2dD;dsz@674{#^`yzYX1x$^Ll}QekTIrTt5FjGMAsv=(&6;1^<^P?A5`QL4fM7 zh<{BOj}ZSBE+_hL7@>NO^xrX@%m0euoPG(zhfo^j+`@1V!*5`?>hDOul;PQoKFsj3 z48M`#c?^#*++z4LhLSg#jQ~-BY~$f zyq@7E!y6c$#_**KUrcF?S{dFzX^fUr8bvfx8lyH!BYr)lFw+w%r;ZHJrEyItXG(K);xaxz5Z)f-~5TLMw;r~(~ z#2!lHys3Otghn#F52Z1(7=94LXEVGn!>bwIkKs)WM_*6{RTk7o?WN;0)wU5IfB=Pd ziV;7A(ipu)X~fehjgjiVh$|l(ah$s`Af6#o@*{)nhWMcj&t&*OhL2_VAchw+d@#f3 zF#IrvhZs&@0TxeH`$T;XXY|~k9Kvwbu8>}>5%BSgO#V+9{Vs+d#c*L5xJNlhGn}9Q zqt+Vu_%tMhfRP6i6ebalb^dDwLOh4jAIIEuiP93tsB~{!J!a$yamXavS|FYP>6K^lEN? z%SNyM@85ogpQDtAIE4l^mG5{e??}Rxp6dVgoo%C^LiF=(^y>fk{me!`m+0?i^nBg= lB*P~#JvZ3oG?1J$8hn+WZ63)q(}q7jRO0nET>Zbh{|6~IV_*OP From a342a267107cc5f937f5728164777d23363b4072 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Thu, 23 Jul 2015 16:50:58 +0200 Subject: [PATCH 23/61] finita classe di salvataggio output finale, rivedere mob strct second --- Mobi/APPS/mobi.cc | 117 ++++++++++++++------------- Mobi/APPS/mobi.o | Bin 24608 -> 35504 bytes Mobi/Sources/MobiSaver.cc | 166 +++++++++++++++++++++++++++++++++++++- Mobi/Sources/MobiSaver.h | 9 ++- 4 files changed, 232 insertions(+), 60 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 35a4a3f..d7ed822 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -120,6 +120,9 @@ int main(int argc, char* argv[]) { } while ((strcmp(input.c_str(), "y")) != 0 && (strcmp(input.c_str(), "n")) != 0); //(!cin.fail() && input != 'y' && input != 'n'); + if (!v) + cout << "\nLOAD..." << endl; + if ((strcmp(input.c_str(), "y")) == 0) { prot.load(pl); } else { @@ -134,49 +137,53 @@ int main(int argc, char* argv[]) { // Mi salvo i vari modelli prot.save(outputFile); + + + + ///////////////////////////////////////////////////////////////////// -// unsigned int d = 0; -// -// TmScore tm("./Mobi/data/TMscore", outputFile, v); -// -// Protein* traslata = new Protein(); -// -// for (unsigned int i = 0; i < prot.size()-1; i++) -// for (unsigned int j = i+1; j < prot.size(); j++) -// { -// traslata = tm.TmImpose(outputFile + (itosDEF(i)), -// outputFile + (itosDEF(j))); -// if (traslata != NULL) { -// -// prot.addModels(*(traslata->getSpacer(d))); -// } else -// ERROR("Errore nella creazione della proteina traslata", -// exeption); -// -// prot.addModels(*(prot.getSpacer(j))); -// -// -// } -// -// //prot.printModels(outputFile); -// -// StandardDeviation std(prot, v); -// vector SD; -// -// vector EVERAGE; -// -// EVERAGE = std.get_everage_distance(); -// + unsigned int d = 0; + + TmScore tm("./Mobi/data/TMscore", outputFile, v); + + Protein* traslata = new Protein(); + + for (unsigned int i = 0; i < prot.size()-1; i++) + for (unsigned int j = i+1; j < prot.size(); j++) + { + traslata = tm.TmImpose(outputFile + (itosDEF(i)), + outputFile + (itosDEF(j))); + if (traslata != NULL) { + + prot.addModels(*(traslata->getSpacer(d))); + } else + ERROR("Errore nella creazione della proteina traslata", + exeption); + + prot.addModels(*(prot.getSpacer(j))); + + + } + + //prot.printModels(outputFile); + + StandardDeviation std(prot, v); + + + vector ever; + + ever = std.get_everage_distance(); + // cout << "EVERAGE" << endl; -// for (vector::iterator everage = EVERAGE.begin(); everage != EVERAGE.end(); +// for (vector::iterator everage = ever.begin(); everage != ever.end(); // everage++) { // cout << *everage << endl; // // } -// -// -// SD = std.get_standard_deviation(); + + vector SD; + SD = std.get_standard_deviation(); // cout << "STANDARD DEVIATION" << endl; // for (vector::iterator walk = SD.begin(); walk != SD.end(); // walk++) { @@ -187,27 +194,23 @@ int main(int argc, char* argv[]) { /////////////////////////////////////////////////// + vector ANGLE_PHI; + ANGLE_PHI=std.get_StandarDev_angle_PHI(); -// StandardDeviation std(prot, v); -// -// vector ANGLE_PHI; -// ANGLE_PHI=std.get_StandarDev_angle_PHI(); -// -// -// cout << "STANDARD DEVIATION" << endl; +// cout << "ANGLE PHI" << endl; // for (vector::iterator walk = ANGLE_PHI.begin(); walk != ANGLE_PHI.end(); // walk++) { // cout << *walk << endl; // // } -// -// -// vector ANGLE_PSI; -// ANGLE_PSI=std.get_StandarDev_angle_PSI(); -// -// -// cout << "STANDARD DEVIATION" << endl; + + + vector ANGLE_PSI; + ANGLE_PSI=std.get_StandarDev_angle_PSI(); + + +// cout << "ANGLE PSI" << endl; // for (vector::iterator walk = ANGLE_PSI.begin(); walk != ANGLE_PSI.end(); // walk++) { // cout << *walk << endl; @@ -217,11 +220,11 @@ int main(int argc, char* argv[]) { /////////////////////////////////////////////////////////////////////////////////// -// SecondaryStructure sstr (prot, v); -// -// vector MOB; -// MOB = sstr.getMobilitySecondaryStructure(); -// + SecondaryStructure sstr (prot, v); + + vector MOB; + MOB = sstr.getMobilitySecondaryStructure(); + // cout << "\nSECONDARY STRUCTURE" << endl; // for (vector::iterator walk = MOB.begin(); walk != MOB.end(); walk++) { // cout << *walk << " "; @@ -234,7 +237,9 @@ int main(int argc, char* argv[]) { ///////////////////////////////////////////////////////////////////////////////////// MobiSaver* saver = new MobiSaver(prot, outputFile, v); - saver->save_mob_everageScalD(); + saver->save_allMobility(ever, SD, ANGLE_PHI, ANGLE_PSI, MOB); + + delete saver; prot.remove(outputFile); diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index c8cc88a6aef7133ade4ac152ce6cfdfe44cad018..8117a9ed8a67a90425ef4b2a90a86bc4522cfebe 100644 GIT binary patch literal 35504 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 literal 24608 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 everageDistance){ - ofstream fout; //stream in output + if (everageDistance.size()==0) + ERROR ("Vector everage distance empty!", exception); + ofstream fout (out.c_str(), ofstream::app); + + if (!fout) + ERROR("Could not open file for writing.", error); + + if (verbose) + cout<<"\n ### Salvataggio sul file della mobilità data la distanza media ###"< Average scale distance 0" << endl; + + for (vector::iterator walk = everageDistance.begin(); + walk != everageDistance.end(); walk++) { + if (*(walk) < 0.85) + fout << "M"; + else + fout << "."; + } + + fout.close(); if (verbose) - cout<<"\n ###Salvataggio sul file della mobilità data la distanza media ###"< Scale_distance) { + + if (Scale_distance.size() == 0) + ERROR("Vector standard deviation empty!", exception); + + ofstream fout(out.c_str(), ofstream::app); + + if (!fout) + ERROR("Could not open file for writing.", error); + + if (verbose) + cout + << "\n ### Salvataggio sul file della mobilità data dalla standard deviation ###" + << endl; + + fout << endl; + fout << "> Standard deviation distance 1" << endl; + + for (vector::iterator walk = Scale_distance.begin(); + walk != Scale_distance.end(); walk++) { + if (*(walk) > 0.09) + fout << "M"; + else + fout << "."; + } + + fout.close(); + + if (verbose) + cout << "Mobility from standard deviation saved!" << endl; + +} + + +void MobiSaver::save_mob_angle_PHI(vector angle_PHI){ + + if (angle_PHI.size() == 0) + ERROR("Vector angle PHI empty!", exception); + + ofstream fout(out.c_str(), ofstream::app); + + if (!fout) + ERROR("Could not open file for writing.", error); + + if (verbose) + cout + << "\n ### Salvataggio sul file della mobilità data dall'angle_PHI ###" + << endl; + fout << endl; + fout << "> Phi angle 2" << endl; + for (vector::iterator walk = angle_PHI.begin(); + walk != angle_PHI.end(); walk++) { + if (*(walk) > 20) + fout << "M"; + else + fout << "."; + } + fout.close(); + + if (verbose) + cout << "Mobility from angle_PHI saved!" << endl; + +} + +void MobiSaver::save_mob_angle_PSI(vector angle_PSI){ + + if (angle_PSI.size() == 0) + ERROR("Vector angle PSI empty!", exception); + + ofstream fout(out.c_str(), ofstream::app); + + if (!fout) + ERROR("Could not open file for writing.", error); + + if (verbose) + cout + << "\n ### Salvataggio sul file della mobilità data dall'angle_PSI ###" + << endl; + + fout << endl; + fout << "> Psi angle 3" << endl; + + for (vector::iterator walk = angle_PSI.begin(); + walk != angle_PSI.end(); walk++) { + if (*(walk) > 20) + fout << "M"; + else + fout << "."; + } + + fout.close(); + + if (verbose) + cout << "Mobility from angle_PSI saved!" << endl; + +} + +void MobiSaver::save_mob_SecondaryStructure(vector Mob_SecStructure){ + + if (Mob_SecStructure.size() == 0) + ERROR("Vector Mob_SecStructure empty!", exception); + + ofstream fout(out.c_str(), ofstream::app); + + if (!fout) + ERROR("Could not open file for writing.", error); + + if (verbose) + cout + << "\n ### Salvataggio sul file della mobilità data la struttura secondaria ###" + << endl; + + fout << endl; + fout << "> Secondary structure 4" << endl; + + for (vector::iterator walk = Mob_SecStructure.begin(); + walk != Mob_SecStructure.end(); walk++) + fout << *(walk); + + fout.close(); + + if (verbose) + cout << "Mobility from sacondary structure saved!" << endl; + +} +void MobiSaver::save_allMobility(vector everageDistance, + vector Scale_distance, vector angle_PHI, + vector angle_PSI, vector Mob_SecStructure) { + save_mob_everageScalD(everageDistance); + save_mob_standardDeviation(Scale_distance); + save_mob_angle_PHI(angle_PHI); + save_mob_angle_PSI(angle_PSI); + save_mob_SecondaryStructure(Mob_SecStructure); } diff --git a/Mobi/Sources/MobiSaver.h b/Mobi/Sources/MobiSaver.h index 096f222..cb88fcb 100644 --- a/Mobi/Sources/MobiSaver.h +++ b/Mobi/Sources/MobiSaver.h @@ -27,7 +27,14 @@ class MobiSaver : public Saver{ virtual ~MobiSaver(); - virtual void save_mob_everageScalD(); + void save_mob_everageScalD(vector __everageDistance); + void save_mob_standardDeviation(vector __Scale_distance); + void save_mob_angle_PHI(vector __angle_PHI); + void save_mob_angle_PSI(vector __angle_PSI); + void save_mob_SecondaryStructure(vector __Mob_SecStructure); + void save_allMobility(vector __everageDistance, + vector __Scale_distance, vector __angle_PHI, + vector __angle_PSI, vector __Mob_SecStructure); private: bool verbose; From cc07b126a8498f43afb0e57eadeb7c2ea289c49e Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sat, 25 Jul 2015 16:17:26 +0200 Subject: [PATCH 24/61] standar deviation with mask ok --- Mobi/APPS/mobi.cc | 3 +- Mobi/APPS/mobi.o | Bin 35504 -> 35152 bytes Mobi/Sources/MobiSaver.cc | 164 +++++++++++++++++++++++++++-- Mobi/Sources/MobiSaver.h | 14 +-- Mobi/Sources/SecondaryStructure.cc | 7 +- 5 files changed, 164 insertions(+), 24 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index d7ed822..c2c25d3 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -224,7 +224,6 @@ int main(int argc, char* argv[]) { vector MOB; MOB = sstr.getMobilitySecondaryStructure(); - // cout << "\nSECONDARY STRUCTURE" << endl; // for (vector::iterator walk = MOB.begin(); walk != MOB.end(); walk++) { // cout << *walk << " "; @@ -237,7 +236,7 @@ int main(int argc, char* argv[]) { ///////////////////////////////////////////////////////////////////////////////////// MobiSaver* saver = new MobiSaver(prot, outputFile, v); - saver->save_allMobility(ever, SD, ANGLE_PHI, ANGLE_PSI, MOB); + saver->allMobility(ever, SD, ANGLE_PHI, ANGLE_PSI, MOB); delete saver; diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index 8117a9ed8a67a90425ef4b2a90a86bc4522cfebe..754a24af936b9a61de8dab6770c0ce4415066e0b 100644 GIT binary patch delta 3751 zcmZ`*4^ULc8Q*=d5f0=I5T5TuPT+B%O{}J!I11hY#&}vCKphQEI+Ymzrb)G>siVf@ zB8Oh^5BeD_L<1N#|BS|*qp>v#MNKq1k_1PkRdg~PIjJKWwHn3iw|no*O2?hq-`o9t zzwfuZ-`jie**i+>2BkV%Y5L`!A=8+@ffdB`t&1aM#WFpXnkzQO!F7v+miULpI}~bz z*AferHVYg|%%x_ypE%RH%0!5_$+c#$zA%Ci*P4TRYa}6N@3?4)OHF3pCUb@AukPnk zrfuni@v4n_E8)5&oi0xhM<^X{1PJXFxcyWpqq}!TBM)%vADMrsI#%+wAd&TO{ z`);~?9i7~rZ)l-{Pv1p2pcTQNt>fuYIBcCy`@rAM>9oUNpHfMmDg19RD69f|?*xN~LZ*clm-mjjViLnbod|ZDo8!ITnb$e)!MfD` z>H59iy7b3&S7B|c=5D>)Tecr7C)w4YfEQLA%@?VM4pbGX2bTR`>gvZ+3!a#o%_F|k zE?>+)LVmvHz#tfIv(fWVY|B(8--gAu9=Z|U7&HYdbz)FzWQWVw1@$SOsDLTRlaIop z6fG){Z%l3t$RB0)-h3Dg1~|B?4(ipS;zwQHVA(dYO4k-l!jpuAbIZPC^g$pZ+ zkqhm9oDuB~`3Rdl>vv;2wg=`)d-Bz(OZk^v6Fyb~_l6Wzfe zt&SMOJ|9Sa%e<+ihCYMCA1K>tBX23}ppEQS`1rWO&e}+i7;lMWCv~zflHJqEHpVt( zlC!K$sm~;BQA2N~lXcN-Lk9U%D4)nt*cENpEy`Im*&WRnl#+3qZIFrHn=A}bTv{w%UNfgR2w$HllOf!)a>8xq+~ zw~ZV~?tP$N8;E?0P!cpTr(!k&{WRGMijZV#m_R`egP_ zI(d+sgqlW`ZBHX@DqrTK{(M{e`t#Gb^ykGn*PmDSmNpUjHme!=t0~-h^+0=lW(p}! z#ZN~=stGm!Or40O-kohi&1FwOpj4k%>wIl50zDO z{MHf66{TSg)Qw!Ow9WzRsO3s0&hT+=E?9G3pe88I89~dTHpi)4ng{JU4*DTzxlURH zCAm(edI8ksI>0%W!G+u$<=g_Wj&{%{C>iZk%3p=L(GKNO474L>0nOp0W1s}F2x<{u zg!70;Kyx~yEf)UOBxF96I!8p$dp$I>K%;YnQm#Y0)1fT(f;G>ftkPjdo`VjA+B_#6 z2Iuo|6Bx;N&^#!~chZ?qo9|SbywINSP@3#uEpRB;>{y9pSXhv)blag0nXfCMy}*H6 z(8f4<;uvT2hf_j}cK92|tc;-}{eufPMbH*lKUt;!5!erI;5bL%bb*xus|9{7FcLgd zRQel%lR0V&%!H(of{;0)aZ<8UL_ZbL=O0BiV{`)Ir*5Ug{ClTH_NBx9he`_-zvY$1 zNyD#3hZOj8CuP|2*C^Tpi7%JnMzeygg97Wj=)JAwHdLPfQ_%U6?=HCx$rGU%cQ7W6%WuiRm~?w zw@JD65RbV#jVLe3i`c_$50BEX1YQuz2am{LiMP&URE~D}dL&@ti6MMKmy zHLnzXQ;M#Ge78EjR$65jM#JrxlvRRc*t6{kdJ2nhEi?YV$s0eZ?3OE{6P^(L3y-?1 zj3__F%hoG@jaT&)cHX{}^xP}#b5!DgC-J94yjyIV8y&~aTbq>d5zfO# z7bX51CgN5-F||qkrHI1ZzNte`d;Ecz>S2D_k+aCKXz(-%#BJrR+wlC3}2zr zUqLD2SdLneBx;mQUly7&ft3RP%CU62q~9v(KbQFTCH}C)%ipP!5D5N`o8^B@h;2gQgrf;k|@?E>!$Oo4c>N=I|lCMTdZHeP~a?BSCANklgpQGT0V vz;0}bGzf=gfltG?=r&1UnZQi~zu>4v@=J)VxBpC7U#ZgB9Q{p|-4Xu-bqwv+ delta 4186 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 WZ%MeEc{_~tsPqE2zI;zl*#7~oX;1qA diff --git a/Mobi/Sources/MobiSaver.cc b/Mobi/Sources/MobiSaver.cc index ec22d49..769ed33 100644 --- a/Mobi/Sources/MobiSaver.cc +++ b/Mobi/Sources/MobiSaver.cc @@ -57,7 +57,7 @@ MobiSaver::~MobiSaver() { -void MobiSaver::save_mob_everageScalD(vector everageDistance){ +void MobiSaver::mob_eveScalD(vector everageDistance){ if (everageDistance.size()==0) ERROR ("Vector everage distance empty!", exception); @@ -91,7 +91,7 @@ void MobiSaver::save_mob_everageScalD(vector everageDistance){ } -void MobiSaver::save_mob_standardDeviation(vector Scale_distance) { +void MobiSaver::mob_stanD(vector Scale_distance) { if (Scale_distance.size() == 0) ERROR("Vector standard deviation empty!", exception); @@ -125,7 +125,7 @@ void MobiSaver::save_mob_standardDeviation(vector Scale_distance) { } -void MobiSaver::save_mob_angle_PHI(vector angle_PHI){ +void MobiSaver::mob_aPHI(vector angle_PHI){ if (angle_PHI.size() == 0) ERROR("Vector angle PHI empty!", exception); @@ -158,7 +158,7 @@ void MobiSaver::save_mob_angle_PHI(vector angle_PHI){ } -void MobiSaver::save_mob_angle_PSI(vector angle_PSI){ +void MobiSaver::mob_aPSI(vector angle_PSI){ if (angle_PSI.size() == 0) ERROR("Vector angle PSI empty!", exception); @@ -191,7 +191,7 @@ void MobiSaver::save_mob_angle_PSI(vector angle_PSI){ } -void MobiSaver::save_mob_SecondaryStructure(vector Mob_SecStructure){ +void MobiSaver::mob_SecS(vector Mob_SecStructure){ if (Mob_SecStructure.size() == 0) ERROR("Vector Mob_SecStructure empty!", exception); @@ -220,14 +220,156 @@ void MobiSaver::save_mob_SecondaryStructure(vector Mob_SecStructure){ } -void MobiSaver::save_allMobility(vector everageDistance, +void MobiSaver::mob_eveScalD_filtSecS(vector everageDistance, vector mobSecS){ + + if (everageDistance.size()==0 || mobSecS.size()==0) + ERROR ("Exception: Vectors must be full.", exception); + + ofstream fout (out.c_str(), ofstream::app); + + if (!fout) + ERROR("Could not open file for writing.", error); + + if (verbose) + cout<<"\n ### Save mobility from average Scale distance filtered by Secondary Structure... ###"< Average scale distance filtered with SecStr 0" << endl; + + vector::iterator everage = everageDistance.begin(); + vector::iterator secStruct = mobSecS.begin(); + + //facciamo che se la media è fissa resta fisso a prescindere, se è mobile resta mobile se la struttura secondaria dice che è mobile + //altrimenti diventa fisso + while (everage != everageDistance.end() || secStruct != mobSecS.end()){ + + if (*(everage) < 0.85 && *(secStruct)!='.') + fout << "M"; + else + fout << "."; + + everage++; + secStruct++; + } + + fout.close(); + + if (verbose) + cout << "Mobility from average scaled distance filtered by Secondary Structure saved!" << endl; + + +} + + +void MobiSaver::mob_stanD_withMask(vector Scale_distance) { + + vector vettoreSupporto; + map map; + + if (Scale_distance.size() == 0) + ERROR("Vector standard deviation empty!", exception); + + ofstream fout(out.c_str(), ofstream::app); + + if (!fout) + ERROR("Could not open file for writing.", error); + + if (verbose) + cout + << "\n ### Save on file standard deviation with Mask ###" + << endl; + + fout << endl; + fout << "> Standard deviation distance with mask 1" << endl; + + + const pair product1 ("M.MM", "MMMM"); + const pair product2 ("MM.M", "MMMM"); + const pair product3 ("M..MM", "MMMMM"); + const pair product4 ("MM..M", "MMMMM"); + const pair product5 (".M.M.", "....."); + const pair product6 ("..M..", "....."); + const pair product7 ("..MM..","......"); + + map.insert(product1); + map.insert(product2); + map.insert(product3); + map.insert(product4); + map.insert(product5); + map.insert(product6); + map.insert(product7); + + + for (vector::iterator walk = Scale_distance.begin(); + walk != Scale_distance.end(); walk++) { + if (*(walk) > 0.09) + vettoreSupporto.push_back("M"); + else + vettoreSupporto.push_back("."); + } + + string test; + + vector::iterator mob = vettoreSupporto.begin(); + std::map :: iterator iter= map.begin(); + + + int i; + bool flag; + vector ::iterator j; + + while (mob != vettoreSupporto.end()) { + + i = 0; + flag = true; + test.clear(); + j=mob; + + while (j != vettoreSupporto.end() && i < 6 && flag) { + + test = test + (*(j)); + cout << test << endl; + iter = map.find(test); + if (iter != map.end()){ + cout << "1111" << test << endl; + test = iter->second; + flag=false; + } + + j++; + i++; + } + + if(!flag){ + fout << test; + mob=j; + }else{ + fout << *(mob); + mob++; + } + + + } + + + + fout.close(); + + if (verbose) + cout << "Mobility from standard deviation whith mask saved!" << endl; + +} + +void MobiSaver::allMobility(vector everageDistance, vector Scale_distance, vector angle_PHI, vector angle_PSI, vector Mob_SecStructure) { - save_mob_everageScalD(everageDistance); - save_mob_standardDeviation(Scale_distance); - save_mob_angle_PHI(angle_PHI); - save_mob_angle_PSI(angle_PSI); - save_mob_SecondaryStructure(Mob_SecStructure); + mob_eveScalD(everageDistance); + mob_eveScalD_filtSecS(everageDistance, Mob_SecStructure); + mob_stanD(Scale_distance); + mob_stanD_withMask(Scale_distance); + mob_aPHI(angle_PHI); + mob_aPSI(angle_PSI); + mob_SecS(Mob_SecStructure); } diff --git a/Mobi/Sources/MobiSaver.h b/Mobi/Sources/MobiSaver.h index cb88fcb..6b9ca41 100644 --- a/Mobi/Sources/MobiSaver.h +++ b/Mobi/Sources/MobiSaver.h @@ -27,12 +27,14 @@ class MobiSaver : public Saver{ virtual ~MobiSaver(); - void save_mob_everageScalD(vector __everageDistance); - void save_mob_standardDeviation(vector __Scale_distance); - void save_mob_angle_PHI(vector __angle_PHI); - void save_mob_angle_PSI(vector __angle_PSI); - void save_mob_SecondaryStructure(vector __Mob_SecStructure); - void save_allMobility(vector __everageDistance, + void mob_eveScalD(vector __everageDistance); + void mob_eveScalD_filtSecS(vector __everageDistance, vector __mobSecS); + void mob_stanD(vector __Scale_distance); + void mob_stanD_withMask(vector __Scale_distance); + void mob_aPHI(vector __angle_PHI); + void mob_aPSI(vector __angle_PSI); + void mob_SecS(vector __Mob_SecStructure); + void allMobility(vector __everageDistance, vector __Scale_distance, vector __angle_PHI, vector __angle_PSI, vector __Mob_SecStructure); diff --git a/Mobi/Sources/SecondaryStructure.cc b/Mobi/Sources/SecondaryStructure.cc index 5c5f356..670d0ea 100644 --- a/Mobi/Sources/SecondaryStructure.cc +++ b/Mobi/Sources/SecondaryStructure.cc @@ -54,11 +54,9 @@ vector SecondaryStructure::getMobilitySecondaryStructure() { for (unsigned int j = 0; j < num_amino; j++) { //mi tiro fuori il primo valore char e lo metto in un vettore di char sec_Structures[j][i] = (*(vettore_di_supporto[j].begin())); - if (verbose) - cout << sec_Structures[j][i]; + } - if (verbose) - cout << endl; + } @@ -125,7 +123,6 @@ vector SecondaryStructure::getMobilitySecondaryStructure() { } - return mobility; } From 82e618c7074bd28c1b9ee067cb60798c256027a3 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sat, 25 Jul 2015 18:43:24 +0200 Subject: [PATCH 25/61] =?UTF-8?q?terminato=20ultimo=20filtro=20sulla=20mob?= =?UTF-8?q?ilit=C3=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Mobi/Sources/MobiSaver.cc | 122 +++++++++++++++++++++++++++++++++++++- Mobi/Sources/MobiSaver.h | 1 + 2 files changed, 122 insertions(+), 1 deletion(-) diff --git a/Mobi/Sources/MobiSaver.cc b/Mobi/Sources/MobiSaver.cc index 769ed33..ed63e03 100644 --- a/Mobi/Sources/MobiSaver.cc +++ b/Mobi/Sources/MobiSaver.cc @@ -261,6 +261,123 @@ void MobiSaver::mob_eveScalD_filtSecS(vector everageDistance, vector everageDistance, vector angle_PHI, + vector angle_PSI, vector Scale_distance) { + + vector vettoreSupporto; + + if (everageDistance.size() == 0 || angle_PHI.size() == 0 + || angle_PSI.size() == 0 || Scale_distance.size() == 0) + ERROR("One vectors is empty!", exception); + + ofstream fout(out.c_str(), ofstream::app); + + if (!fout) + ERROR("Could not open file for writing.", error); + + if (verbose) + cout + << "\n ### Save mobility from average Scale distance filtered by PHI PSI Standard deviation... ###" + << endl; + + fout << endl; + fout << "> Average scale distance filtered with PHI PSI StdD 0" << endl; + + const string filter1 = "MM."; + const string filter2 = ".MM"; + + for (vector::iterator walk = everageDistance.begin(); + walk != everageDistance.end(); walk++) { + if (*(walk) < 0.85) + vettoreSupporto.push_back("M"); + else + vettoreSupporto.push_back("."); + } + + string test; + + vector::iterator mob = vettoreSupporto.begin(); + vector::iterator phi = angle_PHI.begin(); + vector::iterator psi = angle_PSI.begin(); + vector::iterator stdD = Scale_distance.begin(); + + int i; + bool flag; + vector::iterator j; + vector::iterator h, s, d; + + while (mob != vettoreSupporto.end()) { + + i = 0; + flag = true; + test.clear(); + j = mob; + h = phi; + s = psi; + d = stdD; + + while (j != vettoreSupporto.end() && i < 3 && flag) { + + test = test + (*(j)); + if (verbose) + cout << test << endl; + + if (test.compare(filter1) == 0) { + if (verbose) { + cout << "phi " << *(h) << " psi " << *(s) << " stdD " + << *(d) << "Prev_psi" << *(s - 1) << endl; + cout << "Trovato" << test << endl; + } + if (*(h) > 20 && *(s) > 20 && *(d) > 0.09 && (*(s - 1) > 20)) + flag = false; + + } else if (test.compare(filter2) == 0) { + if (verbose) { + cout << "phi " << *(h - 2) << " psi " << *(s - 2) + << " stdD " << *(d - 2) << "Prev_phi" << *(h - 1) + << endl; + cout << "Trovato" << test << endl; + } + if (*(h - 2) > 20 && *(s - 2) > 20 && *(d - 2) > 0.09 + && (*(h - 1) > 20)) + flag = false; + + } + + j++; + h++; + s++; + d++; + i++; + } + + if (!flag) { + if (verbose) + cout << "###########MODIFICATO!!" << endl; + + fout << "MMM"; + mob = j; + phi = h; + psi = s; + stdD = d; + + } else { + fout << *(mob); + mob++; + } + + } + + fout.close(); + + if (verbose) + cout + << "Mobility from average Scale distance filtered by PHI PSI Standard deviation whith mask saved!" + << endl; + +} + void MobiSaver::mob_stanD_withMask(vector Scale_distance) { vector vettoreSupporto; @@ -328,10 +445,12 @@ void MobiSaver::mob_stanD_withMask(vector Scale_distance) { while (j != vettoreSupporto.end() && i < 6 && flag) { test = test + (*(j)); + if(verbose) cout << test << endl; iter = map.find(test); if (iter != map.end()){ - cout << "1111" << test << endl; + if(verbose) + cout << "Trovato" << test << endl; test = iter->second; flag=false; } @@ -366,6 +485,7 @@ void MobiSaver::allMobility(vector everageDistance, mob_eveScalD(everageDistance); mob_eveScalD_filtSecS(everageDistance, Mob_SecStructure); + mob_eveScalD_filteredByPHI_PSI_standD(everageDistance, angle_PHI, angle_PSI, Scale_distance); mob_stanD(Scale_distance); mob_stanD_withMask(Scale_distance); mob_aPHI(angle_PHI); diff --git a/Mobi/Sources/MobiSaver.h b/Mobi/Sources/MobiSaver.h index 6b9ca41..4eda57f 100644 --- a/Mobi/Sources/MobiSaver.h +++ b/Mobi/Sources/MobiSaver.h @@ -29,6 +29,7 @@ class MobiSaver : public Saver{ void mob_eveScalD(vector __everageDistance); void mob_eveScalD_filtSecS(vector __everageDistance, vector __mobSecS); + void mob_eveScalD_filteredByPHI_PSI_standD(vector __everageDistance, vector __angle_PHI, vector __angle_PSI, vector __Scale_distance); void mob_stanD(vector __Scale_distance); void mob_stanD_withMask(vector __Scale_distance); void mob_aPHI(vector __angle_PHI); From 352a267e02e472d2380ffec0584722f765fc7c22 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Sun, 26 Jul 2015 18:29:03 +0200 Subject: [PATCH 26/61] creata documentazione --- Biopool/APPS/pdb2secondary.cc | 3 + Mobi/APPS/mobi.cc | 125 ++++---- Mobi/APPS/mobi.o | Bin 35152 -> 34992 bytes Mobi/Sources/MobiSaver.cc | 466 ++++++++++++++++------------- Mobi/Sources/MobiSaver.h | 37 ++- Mobi/Sources/ProteinModels.cc | 220 ++++++++------ Mobi/Sources/ProteinModels.h | 60 ++-- Mobi/Sources/ProteinModels.o | Bin 71816 -> 71752 bytes Mobi/Sources/SecondaryStructure.cc | 133 ++++---- Mobi/Sources/SecondaryStructure.h | 26 +- Mobi/Sources/StandardDeviation.cc | 312 ++++++++++--------- Mobi/Sources/StandardDeviation.h | 42 ++- Mobi/Sources/TmScore.cc | 34 ++- Mobi/Sources/TmScore.h | 49 +-- Mobi/Sources/TmScore.o | Bin 32424 -> 32424 bytes 15 files changed, 833 insertions(+), 674 deletions(-) diff --git a/Biopool/APPS/pdb2secondary.cc b/Biopool/APPS/pdb2secondary.cc index f05e856..decfec5 100644 --- a/Biopool/APPS/pdb2secondary.cc +++ b/Biopool/APPS/pdb2secondary.cc @@ -14,8 +14,11 @@ along with Victor. If not, see . */ /** + + @Description */ +// Includes: #include #include #include diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index c2c25d3..7c05718 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -14,17 +14,26 @@ along with Victor. If not, see . */ -// --*- C++ -*------x----------------------------------------------------------- -// -// -// Description: Mobi è un software che riceve in input -// un file .pdb creato con tecnologia NMR. -// Questo file contiene molti modelli della stessa proteina, -// li confronta e restituisce in un file di output -// le parti mobili della proteina. -// -// -// -----------------x----------------------------------------------------------- +/* + @file Mobi.cc + @author Riccardo Zanella, riccardozanella89@gmail.com + @version 1.0 + */ + +/* --*- C++ -*------x----------------------------------------------------------- + * + * + * Description: Mobi is a software that take in input .pdb file created + * Whit NMR technology. + * this file contained more models of the same protein, + * he take it, then he imposed all models whit all models + * and return mobility part of the protein in a .pdb file + * + * + * -----------------x----------------------------------------------------------- + */ + +// Includes: #include #include #include @@ -48,12 +57,12 @@ void sShowHelp() { cout << "DESCRIPTION \n" << endl; cout - << "\t Mobi è un software che riceve in input un file .pdb creato con tecnologia NMR." + << "\t Mobi is a software that take in input a .pdb file created by NMR tecnology." << endl; cout - << "\t Questo file contiene molti modelli della stessa proteina, li confronta e restituisce in un file di output " + << "\t this file contained more models of the same protein, then Mobi imposed models and return " << endl; - cout << "\t le parti mobili della proteina." << endl; + cout << "\t aminoacid's mobility." << endl; cout << "\n" << endl; @@ -68,8 +77,7 @@ void sShowHelp() { int main(int argc, char* argv[]) { bool v; - string inputFile, outputFile, outputFile_1; - string input; + string inputFile, outputFile, input; //guide with -h option if (getArg("h", argc, argv)) { @@ -98,16 +106,15 @@ int main(int argc, char* argv[]) { ProteinModels prot; - - // Protein prot; - if (v) { pl.setVerbose(); prot.setVerbose(); } else pl.setNoVerbose(); - //method that ask how much models load in protein + // -------------------------------------------------- + // 1. ask how much models load in protein + // -------------------------------------------------- do { cout << "Questo file pdb contiene "; @@ -121,7 +128,7 @@ int main(int argc, char* argv[]) { && (strcmp(input.c_str(), "n")) != 0); //(!cin.fail() && input != 'y' && input != 'n'); if (!v) - cout << "\nLOAD..." << endl; + cout << "\nLOAD..." << endl; if ((strcmp(input.c_str(), "y")) == 0) { prot.load(pl); @@ -129,52 +136,60 @@ int main(int argc, char* argv[]) { prot.loadSameModels(pl); } + // -------------------------------------------------- + // 2. set path to output file + // -------------------------------------------------- + if (outputFile != "!") { outputFile = "./Mobi/data/" + outputFile; } else outputFile = "./Mobi/data/stdout"; - // Mi salvo i vari modelli - prot.save(outputFile); - - - + // -------------------------------------------------- + // 3. method that save in separated file each models + // -------------------------------------------------- + prot.save(outputFile); ///////////////////////////////////////////////////////////////////// + //SUPER IMPOSITION unsigned int d = 0; + // ------------------------------------------------------ + // 4. TmScore object make super imposition of each models + // ------------------------------------------------------ + TmScore tm("./Mobi/data/TMscore", outputFile, v); Protein* traslata = new Protein(); - for (unsigned int i = 0; i < prot.size()-1; i++) - for (unsigned int j = i+1; j < prot.size(); j++) - { - traslata = tm.TmImpose(outputFile + (itosDEF(i)), - outputFile + (itosDEF(j))); - if (traslata != NULL) { - - prot.addModels(*(traslata->getSpacer(d))); - } else - ERROR("Errore nella creazione della proteina traslata", - exeption); + for (unsigned int i = 0; i < prot.size() - 1; i++) + for (unsigned int j = i + 1; j < prot.size(); j++) { + traslata = tm.TmImpose(outputFile + (itosDEF(i)), + outputFile + (itosDEF(j))); + if (traslata != NULL) { - prot.addModels(*(prot.getSpacer(j))); + prot.addModels(*(traslata->getSpacer(d))); + } else + ERROR("Errore nella creazione della proteina traslata", + exeption); + prot.addModels(*(prot.getSpacer(j))); - } + } - //prot.printModels(outputFile); + // ---------------------------------------------------------------------------------------- + // 5. Standard Deviation object calculate metrics (everage ScalD, StanDevScalD ,phi, psi) + // ---------------------------------------------------------------------------------------- StandardDeviation std(prot, v); - vector ever; ever = std.get_everage_distance(); + //print vector // cout << "EVERAGE" << endl; // for (vector::iterator everage = ever.begin(); everage != ever.end(); // everage++) { @@ -184,19 +199,20 @@ int main(int argc, char* argv[]) { vector SD; SD = std.get_standard_deviation(); + + //print vector // cout << "STANDARD DEVIATION" << endl; // for (vector::iterator walk = SD.begin(); walk != SD.end(); // walk++) { // cout << *walk << endl; // } - /////////////////////////////////////////////////// + //ANGLE vector ANGLE_PHI; - ANGLE_PHI=std.get_StandarDev_angle_PHI(); - + ANGLE_PHI = std.get_StandarDev_angle_PHI(); // cout << "ANGLE PHI" << endl; // for (vector::iterator walk = ANGLE_PHI.begin(); walk != ANGLE_PHI.end(); @@ -205,10 +221,8 @@ int main(int argc, char* argv[]) { // // } - vector ANGLE_PSI; - ANGLE_PSI=std.get_StandarDev_angle_PSI(); - + ANGLE_PSI = std.get_StandarDev_angle_PSI(); // cout << "ANGLE PSI" << endl; // for (vector::iterator walk = ANGLE_PSI.begin(); walk != ANGLE_PSI.end(); @@ -217,13 +231,16 @@ int main(int argc, char* argv[]) { // // } - /////////////////////////////////////////////////////////////////////////////////// - SecondaryStructure sstr (prot, v); + //SECONDARY STRUCTURE + + SecondaryStructure sstr(prot, v); vector MOB; MOB = sstr.getMobilitySecondaryStructure(); + + //print vector // cout << "\nSECONDARY STRUCTURE" << endl; // for (vector::iterator walk = MOB.begin(); walk != MOB.end(); walk++) { // cout << *walk << " "; @@ -232,14 +249,16 @@ int main(int argc, char* argv[]) { // // cout << endl; - ///////////////////////////////////////////////////////////////////////////////////// - MobiSaver* saver = new MobiSaver(prot, outputFile, v); - saver->allMobility(ever, SD, ANGLE_PHI, ANGLE_PSI, MOB); + // -------------------------------------------------- + // 6. MobiSaver object save mobility in output file + // -------------------------------------------------- + MobiSaver* saver = new MobiSaver(prot, outputFile, v); + saver->allMobility(ever, SD, ANGLE_PHI, ANGLE_PSI, MOB); - delete saver; + delete saver; prot.remove(outputFile); diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index 754a24af936b9a61de8dab6770c0ce4415066e0b..d644061f8ec2450c826cffac9a0d29526a45eab9 100644 GIT binary patch delta 2753 zcmZ`)4Nz3q6~6buO<-AEV1>8O0eQeji|nc~ zg)Yc$GlU@GNmH?nk;GK3Z9@92sn(`~8JZuPNUI~XwiUEVNGBt<)fxo0=RTI1CmrwX zJNMl4ec!qFoPB%u!akv=Q`nnFo8EkAU#ulwmR+?Tug|r~Q*HChwZ4s>t)9THg>X8y z{{f;6HOLBR(Bqd~vfoz|*y*Zw%Yn_VfE;jbamyYre(JUd5M5YTy-}|5Y<0_<>fNq@ zyIS73ORjkAaXH}L%FoH59Y@kcg-QBr9m-LQ^*e= zCOPP0bxyKf5T=r#!dyXBc*$HMOd8;dc|*|-10mtF&h`^ZT?`@4_A|fou8T^L z@+8iq|GXQCz(CSm_{;n`v>HB}p9z-Ca(Wo5GK+Ctn6b({`syT4dv0axjp??;Mbz=k zFNDHXsBL@nPW!eS_jP5nc z+A_&*f&Dm>ydiM^J%OFfB$Jx|QY<^Jkdv`&P$7pIyRDGR?4mHGkc)8(|CCKS;@Qn? zayp)2qj^~ie34Ae{z@AgcR08YIB?pY` zdM^37k%g_K*T{}p$={6Zyp>!^{3rLw=;$oW+E4;vXyWv^wC&NTL)EHaUnikxndg|f&+k#BR% z!jE;*!mB@L;msMe@a~RCD>2?T&xG;8be?%U-8!X+F4$T>ZKCANA`o?%LX zbZa`4TAQK3nxytxpNOFrkQP{Jhg!Pe$pq?zuA&Has$GkM0<8k+YeBjfy3ig4X-Sao zhpr{%GzW&46w^Z>Ep?!+TSq;)Mhj29x)-AJh;WADhLR$(_ ziG!Yn$`XfgVGA56v17&|3>AQ6ci?#{(H@2_yCZ(g#IFH-kzv?gY{>IYuX@rT+p&l) zhDwJ+7!1JyhaHm+;o?#*%qz7ES94(5CZ9g7uBmxBj<&!}?@k&5kFT8m0N(WNqwz9-TTxLxs?ak?RR z@sii3UCrK(#uIQg7oQ(RF(Gl<;c+Dzli+4hgu$Q%e|T92{5=ADVI9(^8dKn4*z1)*8qN ziI5&LN;{%a{vCV+pXkOU2+1K4?^13Ppc~nTLKeD~dvpg3gz}|pW?epXXXkH!2C6#7n{ delta 2910 zcmZ`)e^gV~9l!U%Ee28(b3$A zB~A_^;@8q)*CAc4vN|osqjqBx#%k-29@&Po+175>Ka`&1N>}ToRkQDX3EPt$@8Nyk zz2DF0^S$5u@m}!fjN7lVJ!OXzyX#=eItkEhFaO<+UVV4uXo7Rn;dez zv)b{zLw45UkGsLk`HjvRhn(x)uwJgNci6oyx!P4LdmYuat{T_(oOXHH(&f1%JT!7e zgTsRo#e+Jp(^2b?H@j-QPQ(q4ni{9f(Jp(u4xh(km)-R)ufthu|B8$hIyTm$%PwOj zn8@jEaC)kha;6H|;FMhrUS1mCQX^w+ZhO6we!cU**{8Dpudul;`Mb}Qls+w&tz1#Q za>ZI%E(>(TBx$t!XA-i#(Ws@m)_rhPZ>5!if9frQV2Fp@gk^LLni2{GT^tN1tV`V) zONf8S)^Wn4VTE#$lqD@%&N(}Pt`;4Plq^;veH*75- zUa!ty5+MkkMtuHA*fBBP(Z>m%`m?~zKu7kCd_jjQlI9{e&Cf&qOZ^k>YZ%i(l}LDS(iriDB8 zhm584MKBoV(>2(yvV`${_xKJYrEQ;t+ctSW@Rngxm{*8d+Lzqvs0+2#-)TEP{@k?n zFTQw?zZ|%hwU$D&4 zbUE=j_uANcXg~ghrFX_yUpZpde&_whvM0>95NWsKFA?Ip2be( zke|+CXL86nWqxlKyPZS!Ca{0`4CJi@zPOOUj%1O`32Zove3roeo<({RdHmHR_DL2w zmBjAnkc&xdhnZYWVrMf+S2BAsi`-34LQS8@4rY=uk#EzV!pl0D!cRYv!khDc3h(YM zsTAX5sXB~*oW?WnN;mapr;)80c!LjQ#G>Y}8Kv0jW9C@YY_>aVA>L$wiR_j@i|IR2 zbO8kCm}uYe$5zGBolyCW5ZxK5e9|Y-0}%YCkB&m+0w28rLB#i=a$zxzg}#OJ=~f6X zw9#y>(ndcmGQpO!;UzLoBQV7?W6-(rxyD4#nQS?Lh;Afgiyods4wUjwTP zEc7YpDX^k3h`0(Qiz4UpW$$lBd`^q0`3%!BSj^cb|%ouRfsQN4lE zb71#~^aA|QlZUo`&pP^N(0H#1w@Kh5@7YJBBie8y@QX}Vg{KM*K-UW*eMi9$IF{U1 zDG#cYGad~u;_#J-PjiGzRK<;v7=L9$W}_%Q7Ge3m+_i&KIKB!MjUrtL1E{g8G`v%8 z{MPePtZ2#<%?g!<=jl}xgskBjFgIyouu)5EAihZ~c|M}WuNtYs2S0qu*g7r8wMY)X zO5dc?cS2p0DD|jZMK$}HLhyN`3;HOu67b)zLhp<}|wmrh~Q>@2l z>J%@79W$R+d3itH!-tRGKv%O^^0vym4x>}vOVeEE6b~U|Dt*67{~>(ZEYe$$=@X^< zDzEwmMZvrlktTD5O}-R54=Q{jU7|!Qpatj8Dp(Bzn8l?FZ#n%Iy#QBz;=ElEmY;cz zs*bKmeEKcwfx4|C?SrDNqV&2-!*7u}a*K{Cnv+~Ze+}`7BTD3g;`). + */ + +/** + * @file MobiSaver.h + * @author Riccardo Zanella + * @date 21 lug 2015 + * @version 0.1 + */ + +//Includes: +#include "MobiSaver.h" using namespace Victor; using namespace Victor::Biopool; @@ -15,60 +30,76 @@ using namespace Victor::Mobi; const string OUT = "ResultMobi.fasta"; -MobiSaver::MobiSaver(ProteinModels prot, string output, bool verbose): Saver(), verbose(verbose) { +/** + * Default Constructor + * @param ( ProteinModels& ), object PreteinModels + * @param string output, path file output + * @param bool verbose , verbose + */ +MobiSaver::MobiSaver(ProteinModels prot, string output, bool verbose) : + Saver(), verbose(verbose) { // TODO Auto-generated constructor stub //Se il file non esiste lo creo inserendo la sequenza aminoacidica in testa altrimenti non creo nulla out = output + OUT; - if (access(out.c_str(), F_OK) != 0){ + if (access(out.c_str(), F_OK) != 0) { if (verbose) - cout<<"\n ### Create fasta file in output ###"<::iterator walk = prot.sequence.begin(); fout.open(out.c_str()); - if (!fout) { - ERROR("Error to create file!", error); - } else { - fout << "> sequence" << endl; - while (walk != prot.sequence.end()) { - fout << *(walk); - walk++; - } - + if (!fout) { + ERROR("Error to create file!", error); + } else { + fout << "> sequence" << endl; + while (walk != prot.sequence.end()) { + fout << *(walk); + walk++; + } - fout.close(); + fout.close(); - if (verbose) - cout << "file success created!" << endl; - } + if (verbose) + cout << "file success created!" << endl; + } } - } +/** + * Default Deconstructor + * + */ MobiSaver::~MobiSaver() { // TODO Auto-generated destructor stub } +// PREDICATES: +/** + * save mobility from average scale distance vector + * @param vector , vector of average scale distance + * @return void + */ +void MobiSaver::mob_eveScalD(vector everageDistance) { -void MobiSaver::mob_eveScalD(vector everageDistance){ - - if (everageDistance.size()==0) - ERROR ("Vector everage distance empty!", exception); + if (everageDistance.size() == 0) + ERROR("Vector everage distance empty!", exception); - ofstream fout (out.c_str(), ofstream::app); + ofstream fout(out.c_str(), ofstream::app); if (!fout) ERROR("Could not open file for writing.", error); if (verbose) - cout<<"\n ### Salvataggio sul file della mobilità data la distanza media ###"< Average scale distance 0" << endl; @@ -86,11 +117,13 @@ void MobiSaver::mob_eveScalD(vector everageDistance){ if (verbose) cout << "Mobility from average scaled distance saved!" << endl; - - } - +/** + * save mobility from standard deviation distance vector + * @param vector , vector of scale distance + * @return void + */ void MobiSaver::mob_stanD(vector Scale_distance) { if (Scale_distance.size() == 0) @@ -102,8 +135,7 @@ void MobiSaver::mob_stanD(vector Scale_distance) { ERROR("Could not open file for writing.", error); if (verbose) - cout - << "\n ### Salvataggio sul file della mobilità data dalla standard deviation ###" + cout << "\n ### Mobility from standard deviation saved on file ###" << endl; fout << endl; @@ -124,143 +156,169 @@ void MobiSaver::mob_stanD(vector Scale_distance) { } - -void MobiSaver::mob_aPHI(vector angle_PHI){ +/** + * save mobility from vector of phi angle + * @param vector , vector of scale distance + * @return void + */ +void MobiSaver::mob_aPHI(vector angle_PHI) { if (angle_PHI.size() == 0) - ERROR("Vector angle PHI empty!", exception); + ERROR("Vector angle PHI empty!", exception); - ofstream fout(out.c_str(), ofstream::app); + ofstream fout(out.c_str(), ofstream::app); - if (!fout) - ERROR("Could not open file for writing.", error); + if (!fout) + ERROR("Could not open file for writing.", error); - if (verbose) - cout - << "\n ### Salvataggio sul file della mobilità data dall'angle_PHI ###" - << endl; - - fout << endl; - fout << "> Phi angle 2" << endl; - - for (vector::iterator walk = angle_PHI.begin(); - walk != angle_PHI.end(); walk++) { - if (*(walk) > 20) - fout << "M"; - else - fout << "."; - } + if (verbose) + cout << "\n ### Mobility from angle phi saved on file ###" << endl; - fout.close(); + fout << endl; + fout << "> Phi angle 2" << endl; - if (verbose) - cout << "Mobility from angle_PHI saved!" << endl; + for (vector::iterator walk = angle_PHI.begin(); + walk != angle_PHI.end(); walk++) { + if (*(walk) > 20) + fout << "M"; + else + fout << "."; + } + + fout.close(); + + if (verbose) + cout << "Mobility from angle_PHI saved!" << endl; } -void MobiSaver::mob_aPSI(vector angle_PSI){ +/** + * save mobility from vector of psi angle + * @param vector , from vector of psi angle + * @return void + */ +void MobiSaver::mob_aPSI(vector angle_PSI) { if (angle_PSI.size() == 0) - ERROR("Vector angle PSI empty!", exception); + ERROR("Vector angle PSI empty!", exception); - ofstream fout(out.c_str(), ofstream::app); + ofstream fout(out.c_str(), ofstream::app); - if (!fout) - ERROR("Could not open file for writing.", error); + if (!fout) + ERROR("Could not open file for writing.", error); - if (verbose) - cout - << "\n ### Salvataggio sul file della mobilità data dall'angle_PSI ###" - << endl; - - fout << endl; - fout << "> Psi angle 3" << endl; - - for (vector::iterator walk = angle_PSI.begin(); - walk != angle_PSI.end(); walk++) { - if (*(walk) > 20) - fout << "M"; - else - fout << "."; - } + if (verbose) + cout << "\n ### Mobility from angle phi saved on file ###" << endl; + + fout << endl; + fout << "> Psi angle 3" << endl; - fout.close(); + for (vector::iterator walk = angle_PSI.begin(); + walk != angle_PSI.end(); walk++) { + if (*(walk) > 20) + fout << "M"; + else + fout << "."; + } - if (verbose) - cout << "Mobility from angle_PSI saved!" << endl; + fout.close(); + + if (verbose) + cout << "Mobility from angle_PSI saved!" << endl; } -void MobiSaver::mob_SecS(vector Mob_SecStructure){ +/** + * save mobility structure + * @param vector, from vector of mobility structure + * @return void + */ +void MobiSaver::mob_SecS(vector Mob_SecStructure) { if (Mob_SecStructure.size() == 0) - ERROR("Vector Mob_SecStructure empty!", exception); + ERROR("Vector Mob_SecStructure empty!", exception); - ofstream fout(out.c_str(), ofstream::app); + ofstream fout(out.c_str(), ofstream::app); - if (!fout) - ERROR("Could not open file for writing.", error); + if (!fout) + ERROR("Could not open file for writing.", error); - if (verbose) - cout - << "\n ### Salvataggio sul file della mobilità data la struttura secondaria ###" - << endl; + if (verbose) + cout << "\n ### Mobility from secondary structures saved on file ###" + << endl; - fout << endl; - fout << "> Secondary structure 4" << endl; + fout << endl; + fout << "> Secondary structure 4" << endl; - for (vector::iterator walk = Mob_SecStructure.begin(); - walk != Mob_SecStructure.end(); walk++) - fout << *(walk); + for (vector::iterator walk = Mob_SecStructure.begin(); + walk != Mob_SecStructure.end(); walk++) + fout << *(walk); - fout.close(); + fout.close(); - if (verbose) - cout << "Mobility from sacondary structure saved!" << endl; + if (verbose) + cout << "Mobility from secondary structure saved!" << endl; } -void MobiSaver::mob_eveScalD_filtSecS(vector everageDistance, vector mobSecS){ - - if (everageDistance.size()==0 || mobSecS.size()==0) - ERROR ("Exception: Vectors must be full.", exception); +/** + * save mobility from average scale distance filtered by secondary structures + * @param vector , vector average scaled distance + * @param vector , vector secondary structures + * @return void + */ +void MobiSaver::mob_eveScalD_filtSecS(vector everageDistance, + vector mobSecS) { - ofstream fout (out.c_str(), ofstream::app); + if (everageDistance.size() == 0 || mobSecS.size() == 0) + ERROR("Exception: Vectors must be full.", exception); - if (!fout) - ERROR("Could not open file for writing.", error); + ofstream fout(out.c_str(), ofstream::app); - if (verbose) - cout<<"\n ### Save mobility from average Scale distance filtered by Secondary Structure... ###"< Average scale distance filtered with SecStr 0" << endl; + if (verbose) + cout + << "\n ### Save mobility from average Scale distance filtered by Secondary Structure... ###" + << endl; - vector::iterator everage = everageDistance.begin(); - vector::iterator secStruct = mobSecS.begin(); + fout << endl; + fout << "> Average scale distance filtered with SecStr 0" << endl; - //facciamo che se la media è fissa resta fisso a prescindere, se è mobile resta mobile se la struttura secondaria dice che è mobile - //altrimenti diventa fisso - while (everage != everageDistance.end() || secStruct != mobSecS.end()){ + vector::iterator everage = everageDistance.begin(); + vector::iterator secStruct = mobSecS.begin(); - if (*(everage) < 0.85 && *(secStruct)!='.') - fout << "M"; - else - fout << "."; + //facciamo che se la media è fissa resta fisso a prescindere, se è mobile resta mobile se la struttura secondaria dice che è mobile + //altrimenti diventa fisso + while (everage != everageDistance.end() || secStruct != mobSecS.end()) { - everage++; - secStruct++; - } + if (*(everage) < 0.85 && *(secStruct) != '.') + fout << "M"; + else + fout << "."; - fout.close(); + everage++; + secStruct++; + } - if (verbose) - cout << "Mobility from average scaled distance filtered by Secondary Structure saved!" << endl; + fout.close(); + if (verbose) + cout + << "Mobility from average scaled distance filtered by Secondary Structure saved!" + << endl; } - +/** + * save mobility from average scale distance filtered by angles and scaled distance + * @param vector , vector average scaled distance + * @param vector , angle phi + * @param vector , angle psi + * @param vector , Scaled Distance + * @return void + */ void MobiSaver::mob_eveScalD_filteredByPHI_PSI_standD( vector everageDistance, vector angle_PHI, vector angle_PSI, vector Scale_distance) { @@ -320,25 +378,13 @@ void MobiSaver::mob_eveScalD_filteredByPHI_PSI_standD( while (j != vettoreSupporto.end() && i < 3 && flag) { test = test + (*(j)); - if (verbose) - cout << test << endl; if (test.compare(filter1) == 0) { - if (verbose) { - cout << "phi " << *(h) << " psi " << *(s) << " stdD " - << *(d) << "Prev_psi" << *(s - 1) << endl; - cout << "Trovato" << test << endl; - } if (*(h) > 20 && *(s) > 20 && *(d) > 0.09 && (*(s - 1) > 20)) flag = false; } else if (test.compare(filter2) == 0) { - if (verbose) { - cout << "phi " << *(h - 2) << " psi " << *(s - 2) - << " stdD " << *(d - 2) << "Prev_phi" << *(h - 1) - << endl; - cout << "Trovato" << test << endl; - } + if (*(h - 2) > 20 && *(s - 2) > 20 && *(d - 2) > 0.09 && (*(h - 1) > 20)) flag = false; @@ -353,8 +399,6 @@ void MobiSaver::mob_eveScalD_filteredByPHI_PSI_standD( } if (!flag) { - if (verbose) - cout << "###########MODIFICATO!!" << endl; fout << "MMM"; mob = j; @@ -378,114 +422,122 @@ void MobiSaver::mob_eveScalD_filteredByPHI_PSI_standD( } +/** + * save mobility from standard deviation with mask + * @param vector , vector scaled distance + * @return void + */ void MobiSaver::mob_stanD_withMask(vector Scale_distance) { vector vettoreSupporto; - map map; + map map; if (Scale_distance.size() == 0) - ERROR("Vector standard deviation empty!", exception); + ERROR("Vector standard deviation empty!", exception); + + ofstream fout(out.c_str(), ofstream::app); - ofstream fout(out.c_str(), ofstream::app); + if (!fout) + ERROR("Could not open file for writing.", error); - if (!fout) - ERROR("Could not open file for writing.", error); + if (verbose) + cout << "\n ### Save on file standard deviation with Mask ###" << endl; - if (verbose) - cout - << "\n ### Save on file standard deviation with Mask ###" - << endl; - - fout << endl; - fout << "> Standard deviation distance with mask 1" << endl; - - - const pair product1 ("M.MM", "MMMM"); - const pair product2 ("MM.M", "MMMM"); - const pair product3 ("M..MM", "MMMMM"); - const pair product4 ("MM..M", "MMMMM"); - const pair product5 (".M.M.", "....."); - const pair product6 ("..M..", "....."); - const pair product7 ("..MM..","......"); - - map.insert(product1); - map.insert(product2); - map.insert(product3); - map.insert(product4); - map.insert(product5); - map.insert(product6); - map.insert(product7); - - - for (vector::iterator walk = Scale_distance.begin(); - walk != Scale_distance.end(); walk++) { - if (*(walk) > 0.09) - vettoreSupporto.push_back("M"); - else - vettoreSupporto.push_back("."); - } + fout << endl; + fout << "> Standard deviation distance with mask 1" << endl; + + const pair product1("M.MM", "MMMM"); + const pair product2("MM.M", "MMMM"); + const pair product3("M..MM", "MMMMM"); + const pair product4("MM..M", "MMMMM"); + const pair product5(".M.M.", "....."); + const pair product6("..M..", "....."); + const pair product7("..MM..", "......"); + + map.insert(product1); + map.insert(product2); + map.insert(product3); + map.insert(product4); + map.insert(product5); + map.insert(product6); + map.insert(product7); - string test; + for (vector::iterator walk = Scale_distance.begin(); + walk != Scale_distance.end(); walk++) { + if (*(walk) > 0.09) + vettoreSupporto.push_back("M"); + else + vettoreSupporto.push_back("."); + } - vector::iterator mob = vettoreSupporto.begin(); - std::map :: iterator iter= map.begin(); + string test; + vector::iterator mob = vettoreSupporto.begin(); + std::map::iterator iter = map.begin(); - int i; - bool flag; - vector ::iterator j; + int i; + bool flag; + vector::iterator j; while (mob != vettoreSupporto.end()) { i = 0; flag = true; test.clear(); - j=mob; + j = mob; while (j != vettoreSupporto.end() && i < 6 && flag) { test = test + (*(j)); - if(verbose) - cout << test << endl; + if (verbose) + cout << test << endl; iter = map.find(test); - if (iter != map.end()){ - if(verbose) - cout << "Trovato" << test << endl; - test = iter->second; - flag=false; - } - - j++; - i++; + if (iter != map.end()) { + if (verbose) + cout << "Trovato" << test << endl; + test = iter->second; + flag = false; + } + + j++; + i++; } - if(!flag){ + if (!flag) { fout << test; - mob=j; - }else{ + mob = j; + } else { fout << *(mob); mob++; } - } + fout.close(); - - fout.close(); - - if (verbose) - cout << "Mobility from standard deviation whith mask saved!" << endl; + if (verbose) + cout << "Mobility from standard deviation whith mask saved!" << endl; } +/** + * save all type of mobility + * @param vector , vector average scaled distance + * @param vector , vector Scaled Distance + * @param vector , angle phi + * @param vector , angle psi + * @param vector , secondary structures + * + * @return void + */ void MobiSaver::allMobility(vector everageDistance, vector Scale_distance, vector angle_PHI, vector angle_PSI, vector Mob_SecStructure) { mob_eveScalD(everageDistance); mob_eveScalD_filtSecS(everageDistance, Mob_SecStructure); - mob_eveScalD_filteredByPHI_PSI_standD(everageDistance, angle_PHI, angle_PSI, Scale_distance); + mob_eveScalD_filteredByPHI_PSI_standD(everageDistance, angle_PHI, angle_PSI, + Scale_distance); mob_stanD(Scale_distance); mob_stanD_withMask(Scale_distance); mob_aPHI(angle_PHI); diff --git a/Mobi/Sources/MobiSaver.h b/Mobi/Sources/MobiSaver.h index 4eda57f..e10d72b 100644 --- a/Mobi/Sources/MobiSaver.h +++ b/Mobi/Sources/MobiSaver.h @@ -1,13 +1,31 @@ -/* - * MobiSaver.h - * - * Created on: 22 lug 2015 - * Author: riccardo +/* This file is part of Victor. + + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + +/** + * @file MobiSaver.h + * @author Riccardo Zanella + * @date 21 lug 2015 + * @version 0.1 */ + #ifndef MOBI_SOURCES_MOBISAVER_H_ #define MOBI_SOURCES_MOBISAVER_H_ +//Includes: #include #include #include @@ -21,11 +39,20 @@ using namespace Victor::Biopool; namespace Victor { namespace Mobi { +/**@brief Implements a MobiSaver. + * This class inherit Saver class. This class allow to Saver in output file all type of vector generated from + * Standard Deviation and SecondaryStructure classes to have the mobility. + * You can save Mobility also filtered by same type of mask. + */ + class MobiSaver : public Saver{ public: + + // CONSTRUCTORS/DESTRUCTOR: MobiSaver(ProteinModels __protein,string __output, bool __verbose = false); virtual ~MobiSaver(); + // PREDICATES: void mob_eveScalD(vector __everageDistance); void mob_eveScalD_filtSecS(vector __everageDistance, vector __mobSecS); diff --git a/Mobi/Sources/ProteinModels.cc b/Mobi/Sources/ProteinModels.cc index d781cfb..1ebc9fb 100644 --- a/Mobi/Sources/ProteinModels.cc +++ b/Mobi/Sources/ProteinModels.cc @@ -1,31 +1,72 @@ +/* + @file ProteinModels.cc + @author Riccardo Zanella, riccardozanella89@gmail.com + @version 1.0 + */ + +/* This file is part of Victor. + + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + +// Includes: #include #include #include #include - using namespace Victor; using namespace Victor::Mobi; using namespace Victor::Biopool; const string PDB = ".pdb"; -ProteinModels::ProteinModels() : Protein(), verbose(false) {} +// CONSTRUCTORS/DESTRUCTOR: -ProteinModels::ProteinModels(const Protein& _orig) : Protein(_orig), verbose(false) {} +/** + * Default Constructor + * @param nothing. + */ +ProteinModels::ProteinModels() : + Protein(), verbose(false) { +} -ProteinModels::~ProteinModels() {} +/** + * Constructor. Copy another Protein object. + *@param Protein + */ +ProteinModels::ProteinModels(const Protein& _orig) : + Protein(_orig), verbose(false) { +} + +/** + * DESTRUCTOR + *@param none + */ +ProteinModels::~ProteinModels() { +} // PREDICATES: /** - * Return a pointer to the Spacer with the requested chainID - * @param c (char), the chainID - * @return A pointer to the Spacer + Overloading method load, this method load all models in Protein Models Object + @param (PdbLoader&) , object PdbLoader + @return void */ void ProteinModels::load(PdbLoader& pl) { - unsigned int d=0; + unsigned int d = 0; if (!verbose) pl.setNoVerbose(); @@ -38,94 +79,86 @@ void ProteinModels::load(PdbLoader& pl) { this->Protein::load(pl); } - if (this->size()!=0){ - //riempio il mio vettore dei modelli originali - for (unsigned int i = 0; i < this->size(); i++) - original_models.push_back(*(this->getSpacer(i))); + if (this->size() != 0) { + for (unsigned int i = 0; i < this->size(); i++) + original_models.push_back(*(this->getSpacer(i))); - //riempio il mio vettore delle sequenze - for (unsigned int i = 0; i < this->getSpacer(d)->sizeAmino(); i++) + for (unsigned int i = 0; i < this->getSpacer(d)->sizeAmino(); i++) sequence.push_back(this->getSpacer(d)->getAmino(i).getType1L()); - - - - if (verbose) - cout << "\n" << "Modelli caricati nella proteina" << endl; + if (verbose) + cout << "\n" << "Models load in protein" << endl; } } - /** - * Return a pointer to the Spacer with the requested chainID - * @param c (char), the chainID - * @return A pointer to the Spacer + Chose how much models do you want load + @param (PdbLoader&) , object PdbLoader + @return unsigned int */ -unsigned int ProteinModels::selectModels(PdbLoader& pl){ - - unsigned int modelNum; - string input; - - - cout << "Quanti ne vuoi caricare? Inserisci un valore compreso tra 2 e "; - cout << pl.getMaxModels() << endl; +unsigned int ProteinModels::selectModels(PdbLoader& pl) { + unsigned int modelNum; + string input; - getline(cin, input); + cout << "Quanti ne vuoi caricare? Inserisci un valore compreso tra 2 e "; + cout << pl.getMaxModels() << endl; + getline(cin, input); - modelNum = stouiDEF(input); + modelNum = stouiDEF(input); - while (modelNum > pl.getMaxModels() || modelNum < 2) - { - cerr << "Number of models selected out of bounds! Reinput please..." << endl; - getline(cin, input); - modelNum = stouiDEF(input); + while (modelNum > pl.getMaxModels() || modelNum < 2) { + cerr << "Number of models selected out of bounds! Reinput please..." + << endl; + getline(cin, input); + modelNum = stouiDEF(input); - } - - return modelNum; + } - } + return modelNum; +} /** - * Return a pointer to the Spacer with the requested chainID - * @param c (char), the chainID - * @return A pointer to the Spacer + Load same models + @param (PdbLoader&) , object PdbLoader + @return void */ -void ProteinModels::loadSameModels(PdbLoader& pl){ +void ProteinModels::loadSameModels(PdbLoader& pl) { - unsigned int d; - unsigned int modelNum = selectModels(pl); + unsigned int d; + unsigned int modelNum = selectModels(pl); - for (unsigned int i=1; i<= modelNum; i++) - { - if (verbose) - cout << "\t>>>model#" << i << endl; - pl.setModel(i); //dal pdb loader scelgo il modello da caricare nella proteina - pl.checkModel(); - this->Protein::load(pl); // creates the Protein object - } - - if (this->size()!=0){ - for (unsigned int i = 0; i < this->size(); i++) - original_models.push_back(*(this->getSpacer(i))); + for (unsigned int i = 1; i <= modelNum; i++) { + if (verbose) + cout << "\t>>>model#" << i << endl; + pl.setModel(i); //dal pdb loader scelgo il modello da caricare nella proteina + pl.checkModel(); + this->Protein::load(pl); // creates the Protein object + } - //riempio il mio vettore delle sequenze - for (unsigned int i = 0; i < this->getSpacer(d)->sizeAmino(); i++) - sequence.push_back(this->getSpacer(d)->getAmino(i).getType1L()); + if (this->size() != 0) { + for (unsigned int i = 0; i < this->size(); i++) + original_models.push_back(*(this->getSpacer(i))); + for (unsigned int i = 0; i < this->getSpacer(d)->sizeAmino(); i++) + sequence.push_back(this->getSpacer(d)->getAmino(i).getType1L()); - if (verbose) - cout << "\n" << "Modelli caricati nella proteina" << endl; - } - } + if (verbose) + cout << "\n" << "Models load in protein" << endl; + } +} -/*procedura che stampa su file il vettore di spacer*/ -void ProteinModels::printModels(string outputFile){ +/** + Save vector of models in output file + @param (string output) , name of output file + @return void + */ +void ProteinModels::printModels(string outputFile) { - ofstream fout; //stream in output + /**stream in output*/ + ofstream fout; string outputFile_1; PdbSaver ps(fout); const string VECTOR = "Vector"; @@ -133,7 +166,7 @@ void ProteinModels::printModels(string outputFile){ unsigned int i = 0; if (verbose) - cout<<"\n ###Salvataggio su file dei modelli ###"<::iterator walk = models.begin(); while (walk != models.end()) { @@ -153,24 +186,29 @@ void ProteinModels::printModels(string outputFile){ fout.close(); if (verbose) - cout << "file chiuso" << endl; + cout << "file cloased" << endl; } } } -void ProteinModels::save(string outputFile){ +/** + Overloading method save, save models in output file + @param (string output) , name of output file + @return void + */ +void ProteinModels::save(string outputFile) { - ofstream fout; //stream in output + /**stream in output*/ + ofstream fout; string outputFile_1; PdbSaver ps(fout); if (verbose) - cout << "Salvataggio dei modelli su file..." << endl; + cout << "Save models on file..." << endl; // Open the proper output stream (file or stdout) for (unsigned int i = 0; i < this->size(); i++) { - outputFile_1 = outputFile + (itosDEF(i)) + PDB; if (verbose) @@ -187,27 +225,30 @@ void ProteinModels::save(string outputFile){ fout.close(); if (verbose) - cout << "file chiuso." << endl; + cout << "file closed." << endl; } if (verbose) - cout << " " << endl; + cout << " " << endl; } - - +/** + Remove file created by save method + @param (string output) , name of output file + @return void + */ void ProteinModels::remove(string outputFile) { string outputFile_1; if (verbose) - cout << "Cancellazione file..." << endl; + cout << "Deleting file..." << endl; // Open the proper output stream (file or stdout) for (unsigned int i = 0; i < this->size(); i++) { outputFile_1 = outputFile + (itosDEF(i)) + PDB; - if(std::remove(outputFile_1.c_str())!=0) - ERROR("File don't deleted! ",exception); + if (std::remove(outputFile_1.c_str()) != 0) + ERROR("File don't deleted! ", exception); } if (verbose) @@ -215,12 +256,21 @@ void ProteinModels::remove(string outputFile) { } -void ProteinModels::addModels(Spacer& sp){ +/** + Add Spacer in object ProteinModels + @param (Spacer&) , object Spacer + @return void + */ +void ProteinModels::addModels(Spacer& sp) { this->models.push_back(sp); } - +/** + Get Spacer from Protein Models + @param (unsigned int) , number of Spacer (range 0/number Spacer) + @return Spacer + */ Spacer ProteinModels::getModel(unsigned int u) { return this->models[u]; } diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index 2dafa96..6c3ecb4 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -1,53 +1,51 @@ /* This file is part of Victor -Victor is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. -Victor is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. -You should have received a copy of the GNU General Public License -along with Victor. If not, see . -*/ + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + /** -* @file PreteinModel.h -* @author Riccardo Zanella -* @date Lug 2015 -* @version 0.1 -*/ + * @file PreteinModel.h + * @author Riccardo Zanella + * @date Lug 2015 + * @version 0.1 + */ + #ifndef MOBI_SOURCES_PROTEINMODEL_ #define MOBI_SOURCES_PROTEINMODEL_ +//Includes: #include #include - using namespace Victor::Biopool; -namespace Victor { namespace Mobi { +namespace Victor { +namespace Mobi { /** -* @brief Extends Protein class with functionalities related to manipulation of NMR model and models comparations. -* Scale Distance metric is provided. -*/ -class ProteinModels : public Protein{ - + * @brief Extends Protein class with functionalities related to manipulation of NMR model and models comparations. + * Scale Distance metric is provided. + */ +class ProteinModels: public Protein { public: - // CONSTRUCTORS/DESTRUCTOR: + // CONSTRUCTORS/DESTRUCTOR: ProteinModels(); ProteinModels(const Protein& _orig); virtual ~ProteinModels(); - - // PREDICATES: - //void load(PdbLoader& pl, char chain, vector models); - virtual void load(PdbLoader& pl); unsigned int selectModels(PdbLoader& pl); @@ -73,9 +71,9 @@ class ProteinModels : public Protein{ bool verbose; public: - vector original_models; - vector models; - vector sequence; + vector original_models; + vector models; + vector sequence; }; } diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o index d63ffc9ab92216ee979130cf54bc9831589c7113..7d831416773c7e34753c197cd85684cee5ff6be9 100644 GIT binary patch delta 1012 zcmZvZUrbYX6vyxRQNY{!0AoT_h?i9tw#7;pO{dZOGirv{WzM*4F+QkdRP0uITMJk~ zqP`f*6Z%cWJxyMgEm@-E_aORW6Jz9dapFvLs7nMS{(%Y@A52Kb&b?ihJ**F(+u!$` zdp^IOo*D9uT=w-hh`IekA8yw1dzGP1>pu|H;{CuiQffS~+)ve5SoRA&#&{s8eyz@z zQU%V}{z(g7Fi_W8PSt90wOz&!`=im)TE7tt2ET0Xj2dlrOEjJ~?1XVR7LU3y%y8X? zxZRwNwrKy;5(?e=Iaq3Nb+ zdaj_F3HwT6L>iEc94gm}A2l1kSplb0ictaoF_Sl7 z9g~znmU$VDM?K>Xv@%kR_|TUzd7i_O0lmxJjKyRFlh?;Q3BB7hFq6o3^WHv1zT0%w zJ??8(4@XPU*JFyeJCWzd8Vji%)i91XPy?*vk{Xd^@{PUkdN2QYW%br6}Nuio{V zWB0C<(gW0w&C-~vd{|CgTK1L~)mXd_}%2kD}6rY?~f5$JyQichiU z5u&fv;EOLj&Fhz*=Dlf8vv=CnoSObulb`;NCWTXl8qCeO8Y;M&aKY7d6zn6{eLRg(pxGd3kzrU|0(f{`GTvMm$0JKOHI zE?bR0@WAw``bVp8*!aK$hSr;a;RS>c*cxPui77;rE^T9_tyCfjL`^+2ZA|CkJNN$Q z-20z%=lWRi-5)AMN`_XbZ0V^ zvI@47PU4%`;Tl!f^&aPFG8Iu)Kl%Ji!BA_J7Kua-Sg8RkXLWbmj+X7${JV}OZOyMw z*jF#zha!EUF$&2w_HF$G( zwS2tiW&=&hV%LhGj4awlfKEc~`G`)z?Mcv9O!maZatu{zok}p%235mN8$x-236^T1 zI)-@a0XiJrJHngkmoee!LV1X)j84a3W{jHrE2|^t18cL7ycMQRIFqTTWfU_8orcc*3;?(UsoVp<0 zU#zd_M*wG*?hm~+5EZa+3Z~MY`$DtwduI;+3Z|y+(b7=-VV@3F{hm08l>pv F{{TX|e(V4M diff --git a/Mobi/Sources/SecondaryStructure.cc b/Mobi/Sources/SecondaryStructure.cc index 670d0ea..ee2dbbe 100644 --- a/Mobi/Sources/SecondaryStructure.cc +++ b/Mobi/Sources/SecondaryStructure.cc @@ -1,24 +1,54 @@ /* - * SecondaryStructure.cc - * - * Created on: 21 lug 2015 - * Author: riccardo + @file ProteinModels.cc + @author Riccardo Zanella, riccardozanella89@gmail.com + @version 1.0 */ +/* This file is part of Victor. + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + +// Includes: #include "SecondaryStructure.h" using namespace Victor; using namespace Victor::Mobi; using namespace Victor::Biopool; -SecondaryStructure::SecondaryStructure(const ProteinModels& modelli ,bool verbose) : - verbose(verbose), models(modelli.original_models) {} - -SecondaryStructure::~SecondaryStructure() {} +// CONSTRUCTORS/DESTRUCTOR: +/** + * Default Constructor + * @param ( ProteinModels& ), object PreteinModels . + */ +SecondaryStructure::SecondaryStructure(const ProteinModels& modelli, + bool verbose) : + verbose(verbose), models(modelli.original_models) { +} +/** + * Default Deconstructor + * @param ( ProteinModels& ), object PreteinModels . + */ +SecondaryStructure::~SecondaryStructure() { +} +/** + * get the mobility analyzing secondary structures + * @return vector , return vector of mobility from Secondary Structure + */ vector SecondaryStructure::getMobilitySecondaryStructure() { mobility.clear(); @@ -26,9 +56,7 @@ vector SecondaryStructure::getMobilitySecondaryStructure() { if (models.size() != 0) num_amino = models[0].sizeAmino(); else - ERROR( - "Nessun modello presente nella proteina, si ricorda di caricare dei modelli.", - exception); + ERROR("Nothing models in the protein, remember load models.", exception); //create a support vector to get secondary structure vector > vettore_di_supporto(num_amino, set()); @@ -45,7 +73,7 @@ vector SecondaryStructure::getMobilitySecondaryStructure() { for (unsigned int i = 0; i < models.size(); i++) { if (verbose) - cout << "Models number: " << i < SecondaryStructure::getMobilitySecondaryStructure() { } + char test; + bool flag; + for (unsigned int i = 0; i < num_amino; i++) { + test = sec_Structures[i][0]; + flag = true; + //if the first letter is empty or is a S + if ((test != 'G') && (test != 'H') && (test != 'I') && (test != 'T') + && (test != 'E') && (test != 'B')) { + //verifing that is all S and/or empty space. + for (unsigned int j = 0; j < models.size(); j++) { - char test; - bool flag; - - for (unsigned int i = 0; i < num_amino; i++) { - - test = sec_Structures[i][0]; - flag = true; + if ((sec_Structures[i][j] != 'G') + && (sec_Structures[i][j] != 'H') + && (sec_Structures[i][j] != 'I') + && (sec_Structures[i][j] != 'T') + && (sec_Structures[i][j] != 'E') + && (sec_Structures[i][j] != 'B')) { + } else { - //se la prima lettera è vuota oppure è una S + mobility.push_back('M'); + flag = false; + break; - if ((test != 'G') && (test != 'H') && (test != 'I') && (test != 'T') - && (test != 'E') && (test != 'B')) { - //verifico che siano tutte S e/o vuote - - for (unsigned int j = 0; j < models.size(); j++) { - - if ((sec_Structures[i][j] != 'G') - && (sec_Structures[i][j] != 'H') - && (sec_Structures[i][j] != 'I') - && (sec_Structures[i][j] != 'T') - && (sec_Structures[i][j] != 'E') - && (sec_Structures[i][j] != 'B')) { - } else { - - mobility.push_back('M'); - flag = false; - break; - - } - - } - if (flag) { - mobility.push_back('c'); } - //la prima lettera è una lettera di struttura - } else { - //verifico che siano tutte uguali a test - for (unsigned int j = 0; j < models.size(); j++) { + } + if (flag) { + mobility.push_back('c'); + } + //the first letter is the letter of Secondary Structure + } else { - if ((sec_Structures[i][j] == test)) { - } else { + //verifing that all letter is the same + for (unsigned int j = 0; j < models.size(); j++) { - mobility.push_back('M'); - flag = false; - break; + if ((sec_Structures[i][j] == test)) { + } else { - } + mobility.push_back('M'); + flag = false; + break; } - if (flag) { - mobility.push_back('.'); - } } + if (flag) { + mobility.push_back('.'); + } } + } return mobility; } diff --git a/Mobi/Sources/SecondaryStructure.h b/Mobi/Sources/SecondaryStructure.h index 37c6055..4d3b7bd 100644 --- a/Mobi/Sources/SecondaryStructure.h +++ b/Mobi/Sources/SecondaryStructure.h @@ -18,36 +18,36 @@ * @version 0.1 */ -/* - * SecondaryStructure.h - * - * Created on: 21 lug 2015 - * Author: riccardo - */ - +// Includes: #ifndef MOBI_SOURCES_SECONDARYSTRUCTURE_H_ #define MOBI_SOURCES_SECONDARYSTRUCTURE_H_ - #include - using namespace Victor::Biopool; namespace Victor { namespace Mobi { +/**@brief Implements a Secondary Structure. + * Includes methods to obtain mobility from the analyze of Secondary Structure. + */ + class SecondaryStructure { public: - SecondaryStructure(const ProteinModels& _orig , bool _verbose = false); + + // CONSTRUCTORS/DESTRUCTOR: + + SecondaryStructure(const ProteinModels& _orig, bool _verbose = false); virtual ~SecondaryStructure(); - vector getMobilitySecondaryStructure(); + // PREDICATES: + vector getMobilitySecondaryStructure(); private: bool verbose; - vector models; - vector mobility; + vector models; + vector mobility; }; } diff --git a/Mobi/Sources/StandardDeviation.cc b/Mobi/Sources/StandardDeviation.cc index b960638..e3a44d9 100644 --- a/Mobi/Sources/StandardDeviation.cc +++ b/Mobi/Sources/StandardDeviation.cc @@ -1,22 +1,56 @@ /* - * ScaleDistance.cc - * - * Created on: 11 lug 2015 - * Author: riccardo + @file StandardDeviation.cc + @author Riccardo Zanella, riccardozanella89@gmail.com + @version 1.0 + */ + +/* This file is part of Victor. + + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Victor. If not, see . */ + +// Includes: #include "StandardDeviation.h" using namespace Victor; using namespace Victor::Mobi; using namespace Victor::Biopool; -StandardDeviation::StandardDeviation(const ProteinModels& modelli ,bool verbose) : - verbose(verbose), original_models(modelli.original_models) ,models(modelli.models) {} +// CONSTRUCTORS/DESTRUCTOR: -StandardDeviation::~StandardDeviation() { +/** + * Default Constructor + * @param (const ProteinModels&), object ProteinModels + * @param (bool verbose), verbose + */ +StandardDeviation::StandardDeviation(const ProteinModels& modelli, bool verbose) : + verbose(verbose), original_models(modelli.original_models), models( + modelli.models) { } +/** + * DESTRUCTOR + *@param none + */ +StandardDeviation::~StandardDeviation() { +} +/** + * internal method, take atom from spacer + * @param (Spacer* s), pointer to the spacer object + * @param (bool flag), internal flag + */ void StandardDeviation::getCaAtom(Spacer* s, bool flag) { //per un modello fissato creo il vettore di atomi @@ -25,7 +59,6 @@ void StandardDeviation::getCaAtom(Spacer* s, bool flag) { for (unsigned int u = 0; u < s->sizeAmino(); u++) { a = &(s->getAmino(u)); - unsigned int i = 1; if (flag) @@ -40,200 +73,184 @@ void StandardDeviation::getCaAtom(Spacer* s, bool flag) { } -vector StandardDeviation::get_everage_distance(){ +/** + * Get average distance Scale Distance + * @return vector + * + */ +vector StandardDeviation::get_everage_distance() { + /** vector average Scale Distance*/ dist_everage.clear(); Spacer* primo_modello = new Spacer; Spacer* secondo_modello = new Spacer; - unsigned int num_atomi = 0; - double ScalD, distance= -1.0; - - if (models.size() != 0) - num_atomi = models[0].sizeAmino(); - else - ERROR("Nessun modello presente nella proteina, si ricorda di eseguire TmImpose.", exception); - - + unsigned int num_atomi = 0; + double ScalD, distance = -1.0; + if (models.size() != 0) + num_atomi = models[0].sizeAmino(); + else + ERROR("ProteinModels empty, remember execute TmImpose.", exception); - vector > dist_from_Ca_atoms(num_atomi, - vector(0.0)); - - - - if (verbose){ - cout << "Numero di modelli presenti: " << models.size() << endl; - cout << "Ogni modello ha un numero di atomi pari a: " << num_atomi << endl; - } - //scorro i modelli e per ognuno creo il vettore di atomi - unsigned int u = 0; - - while (u < (models.size())) { - - primo_modello = &models[u]; - getCaAtom(primo_modello, true); - u++; - - secondo_modello = &models[u]; - getCaAtom(secondo_modello, false); - u++; + vector > dist_from_Ca_atoms(num_atomi, vector(0.0)); + if (verbose) { + cout << "Number of models: " << models.size() << endl; + cout << "Number of atoms in each models: " << num_atomi << endl; + } - for (unsigned int i = 0; i < num_atomi; i++) { - distance = CaVector1[i].distance(CaVector2[i]); - ScalD = 1.0 / (1.0 + ( pow ((distance/4.0), 2.0))); - dist_from_Ca_atoms[i].push_back(ScalD); - } + //for any models create atom's vector + unsigned int u = 0; + while (u < (models.size())) { - CaVector1.clear(); - CaVector2.clear(); + primo_modello = &models[u]; + getCaAtom(primo_modello, true); + u++; - } + secondo_modello = &models[u]; + getCaAtom(secondo_modello, false); + u++; + for (unsigned int i = 0; i < num_atomi; i++) { + distance = CaVector1[i].distance(CaVector2[i]); + ScalD = 1.0 / (1.0 + (pow((distance / 4.0), 2.0))); + dist_from_Ca_atoms[i].push_back(ScalD); + } + CaVector1.clear(); + CaVector2.clear(); - int count; - double sum; - for (unsigned int i = 0; i < num_atomi; i++) { - count=0; - sum=0; - vector::iterator atom = dist_from_Ca_atoms[i].begin(); - while (atom != dist_from_Ca_atoms[i].end()){ + } - sum = sum + (*atom); + int count; + double sum; + for (unsigned int i = 0; i < num_atomi; i++) { + count = 0; + sum = 0; + vector::iterator atom = dist_from_Ca_atoms[i].begin(); + while (atom != dist_from_Ca_atoms[i].end()) { - atom++; - count++; - } - dist_everage.push_back((sum / count)); + sum = sum + (*atom); + atom++; + count++; + } + dist_everage.push_back((sum / count)); - } + } -return dist_everage; + return dist_everage; } -vector StandardDeviation::get_standard_deviation(){ +/** + * Get standard deviation from Scale Distance + * @return vector + */ +vector StandardDeviation::get_standard_deviation() { dist_everage.clear(); ScD.clear(); Spacer* primo_modello = new Spacer; - Spacer* secondo_modello = new Spacer; - - unsigned int num_atomi = 0; - double ScalD, distance= -1.0; + Spacer* secondo_modello = new Spacer; - if (models.size() != 0) - num_atomi = models[0].sizeAmino(); - else - ERROR("Nessun modello presente nella proteina, si ricorda di eseguire TmImpose.", exception); + unsigned int num_atomi = 0; + double ScalD, distance = -1.0; + if (models.size() != 0) + num_atomi = models[0].sizeAmino(); + else + ERROR("ProteinModels empty, remember execute TmImpose.", exception); + vector > dist_from_Ca_atoms(num_atomi, vector(0.0)); + if (verbose) { + cout << "Number of models: " << models.size() << endl; + cout << "Number of atoms in each models: " << num_atomi << endl; + } + //scorro i modelli e per ognuno creo il vettore di atomi + unsigned int u = 0; - vector > dist_from_Ca_atoms(num_atomi, - vector(0.0)); + while (u < (models.size())) { + primo_modello = &models[u]; + getCaAtom(primo_modello, true); + u++; + secondo_modello = &models[u]; + getCaAtom(secondo_modello, false); + u++; - if (verbose){ - cout << "Numero di modelli presenti: " << models.size() << endl; - cout << "Ogni modello ha un numero di atomi pari a: " << num_atomi << endl; + for (unsigned int i = 0; i < num_atomi; i++) { + distance = CaVector1[i].distance(CaVector2[i]); + ScalD = 1.0 / (1.0 + (pow((distance / 4.0), 2.0))); + dist_from_Ca_atoms[i].push_back(ScalD); } - //scorro i modelli e per ognuno creo il vettore di atomi - unsigned int u = 0; - - while (u < (models.size())) { - - primo_modello = &models[u]; - getCaAtom(primo_modello, true); - u++; - secondo_modello = &models[u]; - getCaAtom(secondo_modello, false); - u++; + CaVector1.clear(); + CaVector2.clear(); + } - for (unsigned int i = 0; i < num_atomi; i++) { - distance = CaVector1[i].distance(CaVector2[i]); - ScalD = 1.0 / (1.0 + ( pow ((distance/4.0), 2.0))); - dist_from_Ca_atoms[i].push_back(ScalD); - } - + int count; + double sum; + for (unsigned int i = 0; i < num_atomi; i++) { + count = 0; + sum = 0; + vector::iterator atom = dist_from_Ca_atoms[i].begin(); + while (atom != dist_from_Ca_atoms[i].end()) { - CaVector1.clear(); - CaVector2.clear(); + sum = sum + (*atom); + atom++; + count++; } + dist_everage.push_back((sum / count)); + } + double standDev = -1; - int count; - double sum; - for (unsigned int i = 0; i < num_atomi; i++) { - count=0; - sum=0; - vector::iterator atom = dist_from_Ca_atoms[i].begin(); - while (atom != dist_from_Ca_atoms[i].end()){ - - sum = sum + (*atom); - - atom++; - count++; - } - dist_everage.push_back((sum / count)); - - - } - - - - double standDev=-1; - - - vector::iterator everage = dist_everage.begin(); - - for (unsigned int i = 0; i < num_atomi; i++) { - sum=0; - count=0; - vector::iterator atom = dist_from_Ca_atoms[i].begin(); - - - while (atom != dist_from_Ca_atoms[i].end()){ - sum += (pow ( ((*atom) - (*everage) ) , 2.0 )); - atom++; - count++; + vector::iterator everage = dist_everage.begin(); - } + for (unsigned int i = 0; i < num_atomi; i++) { + sum = 0; + count = 0; + vector::iterator atom = dist_from_Ca_atoms[i].begin(); - standDev = sqrt(sum / count); + while (atom != dist_from_Ca_atoms[i].end()) { + sum += (pow(((*atom) - (*everage)), 2.0)); + atom++; + count++; - ScD.push_back(standDev); + } - everage++; + standDev = sqrt(sum / count); + ScD.push_back(standDev); - } + everage++; + } return ScD; } - +/** + * Get standard deviation from angle_PHI + * @return vector + */ vector StandardDeviation::get_StandarDev_angle_PHI() { double num_amino = 0; double sum = 0; - //cout << "modelli" << original_models.size() << "aminoacidi" << original_models[0].sizeAmino() << endl; - if (original_models.size() < 2) - ERROR("Modelli insufficienti", exception) + ERROR("Number of models insufficient", exception) else num_amino = original_models[0].sizeAmino(); @@ -242,12 +259,12 @@ vector StandardDeviation::get_StandarDev_angle_PHI() { vector(original_models.size())); vector everage(num_amino); -//calcolo angoli +//calculate angle for (unsigned int i = 0; i < original_models.size(); i++) for (unsigned int j = 0; j < num_amino; j++) misure_PHI[j][i] = original_models[i].getAmino(j).getPhi(); -//calcolo media angoli +//calculate average angle for (unsigned int j = 0; j < num_amino; j++) { sum = 0; @@ -259,7 +276,7 @@ vector StandardDeviation::get_StandarDev_angle_PHI() { } - //calcolo stadDev + //calculate stadDev double standDev = -1; for (unsigned int j = 0; j < num_amino; j++) { @@ -277,16 +294,17 @@ vector StandardDeviation::get_StandarDev_angle_PHI() { } - +/** + * Get standard deviation from angle_PSI + * @return vector + */ vector StandardDeviation::get_StandarDev_angle_PSI() { double num_amino = 0; double sum = 0; - //cout << "modelli" << original_models.size() << "aminoacidi" << original_models[0].sizeAmino() << endl; - if (original_models.size() < 2) - ERROR("Modelli insufficienti", exception) + ERROR("Number of models insufficient", exception) else num_amino = original_models[0].sizeAmino(); @@ -329,7 +347,3 @@ vector StandardDeviation::get_StandarDev_angle_PSI() { return angle_PSI; } - - - - diff --git a/Mobi/Sources/StandardDeviation.h b/Mobi/Sources/StandardDeviation.h index b9f9237..f39318b 100644 --- a/Mobi/Sources/StandardDeviation.h +++ b/Mobi/Sources/StandardDeviation.h @@ -30,41 +30,39 @@ using namespace Victor::Biopool; namespace Victor { namespace Mobi { -/** - * @brief Extends Protein class with functionalities related to manipulation of NMR model and models comparations. - * Scale Distance metric is provided. - */ + class StandardDeviation { + /** + * @brief Extends Protein class with functionalities related to manipulation of NMR model and models comparations. + * Scale Distance metric is provided. + */ + public: // CONSTRUCTORS/DESTRUCTOR: - StandardDeviation(const ProteinModels& _orig , bool _verbose = false); + StandardDeviation(const ProteinModels& _orig, bool _verbose = false); virtual ~StandardDeviation(); - - vector get_everage_distance(); - vector get_standard_deviation(); - vector get_StandarDev_angle_PHI(); - vector get_StandarDev_angle_PSI(); - + vector get_everage_distance(); + vector get_standard_deviation(); + vector get_StandarDev_angle_PHI(); + vector get_StandarDev_angle_PSI(); private: - void getCaAtom (Spacer* s, bool flag); - + void getCaAtom(Spacer* s, bool flag); private: bool verbose; - vector original_models; - vector models; - vector CaVector1, CaVector2; - vector < vector > dist_from_Ca_atoms; - vector dist_everage; - vector ScD; - vector angle_PHI; - vector angle_PSI; - + vector original_models; + vector models; + vector CaVector1, CaVector2; + vector > dist_from_Ca_atoms; + vector dist_everage; + vector ScD; + vector angle_PHI; + vector angle_PSI; }; } diff --git a/Mobi/Sources/TmScore.cc b/Mobi/Sources/TmScore.cc index 8763f42..ed5875d 100644 --- a/Mobi/Sources/TmScore.cc +++ b/Mobi/Sources/TmScore.cc @@ -20,6 +20,8 @@ * @date Lug 2015 * @version 0.1 */ + +//Includes: #include #include #include @@ -35,27 +37,39 @@ using namespace std; const string TMTMP_OUT = "TMScore.pdb"; - +/** + * @brief Default Constructor + * @param _binary (string) full path to binary TMScore file, must have execution permission + * @param _tmp (string) full path to temp dir, must have write permission + * @param _tmp bool verbose + */ TmScore::TmScore(string _binary, string output, bool verbose) : - binary(_binary), outputTmScore(output + TMTMP_OUT), verbose(verbose) {} + binary(_binary), outputTmScore(output + TMTMP_OUT), verbose(verbose) { +} //TmScore::TmScore(string _binary, string output, bool verbose) : // binary(_binary), tmp(output.substr(output.length() - 1, 1) == "/" ? // output : output + "/"), verbose(verbose) { //} -TmScore::~TmScore(){} - - +TmScore::~TmScore() { +} +/** + * + * @param _binary (string) full path to binary TMScore file, must have execution permission + * @param _tmp string, path of model file, must have read permission + * @param _tmp string, path of native file, must have read permission + * @return (Protein*), return pointer to rototraslated protein + */ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { Protein* prot = NULL; - //se i file sono accessibili in lettura + //if have read permission if (access(modelFile.c_str(), R_OK) == 0 && access(nativeFile.c_str(), R_OK) == 0) { - //se l'eseguibile ha i permessi di esecuzione + //if binary have execute permission if (access(binary.c_str(), X_OK) == 0) { pid_t pid; //Pipeing TMS output @@ -109,13 +123,11 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { } } - buffer.clear(); //Load from memory buffer PdbLoader pl(buffer); - pl.setNoVerbose(); pl.setModel(1); @@ -123,12 +135,8 @@ Protein* TmScore::TmImpose(string modelFile, string nativeFile) { prot = new Protein(); - - pl.loadProtein(*prot); - - } } } else diff --git a/Mobi/Sources/TmScore.h b/Mobi/Sources/TmScore.h index 122ac84..01886fb 100644 --- a/Mobi/Sources/TmScore.h +++ b/Mobi/Sources/TmScore.h @@ -20,19 +20,17 @@ #ifndef MOBI_SOURCES_TMSCOREBIN_H_ #define MOBI_SOURCES_TMSCOREBIN_H_ +//Include: #include #include #include - using namespace Victor::Biopool; using namespace Victor::Mobi; using namespace std; - extern const string TMTMP_OUT; - namespace Victor { namespace Mobi { @@ -43,45 +41,16 @@ namespace Mobi { class TmScore { + // CONSTRUCTORS/DESTRUCTOR: public: - /** - * @brief Setup. - * @param _binary (string) full path to binary TMScore file, must have execution permission - * @param _tmp (string) full path to temp dir, must have write permission - */ - TmScore(string _binary = "TMScore", string output = ".", bool _verbose = false); - /** - * @brief Given two pdb files containing each a model of the same protein, - * call TMScore binary to superimpose the first over the second. The superimposed (rotated/traslated) - * model is then loaded in a ProteinModels using the double pointer provided. - * @param modelFile (string) full path to model#1 file - * @param nativeFile (string) full path to model#2 file - * @param imposedModel(ProteinModel**) double pointer of type ProteinModel, as output - */ - Protein* TmImpose(string modelFile, string nativeFile);//, ProteinModels** imposedModel); - /** - * @brief Given a ProteinModel call TMScore binary to superimpose two models contained in it. - * The superimposed (rotated/traslated) model is then loaded in a ProteinModel using the double pointer provided. - * @param prot(ProteinModel&) reference to ProteinModel object - * @param model (unsigned int) model#1 name in ProteinModel object - * @param native (unsigned int) model#2 name in ProteinModel object - * @param imposedModel(ProteinModel**) double pointer of type ProteinModel, as output - */ -// virtual void TMImpose(ProteinModel& prot, unsigned int model, -// unsigned int native, ProteinModel** imposedModel); -// /** -// * @brief the TMScore output is not pdb conformant. This static method read the output and fix it in a memory buffer. -// * Then loads a ProteinModel with the superimposed model only. -// * @param pdbFile (string) full path to TMScore output -// * @param imposedModel (ProteinModel**) double pointer of type PRoteinModel, as output -// */ - //Spacer* spacerFromTMOutput(string pdbFile); - /** -// * Set verbosity. -// * Verbosity is applied on PdbLoader instances. -// * @param v (bool) new verbosity option -// */ + TmScore(string _binary = "TMScore", string output = ".", bool _verbose = + false); + + // PREDICATES: + Protein* TmImpose(string modelFile, string nativeFile); + + // MODIFIERS: void setVerbose(bool v) { verbose = v; } diff --git a/Mobi/Sources/TmScore.o b/Mobi/Sources/TmScore.o index 52c023803911d7086b30a41b11617b51a2ee3913..5b7495f22a54511689221f8bd124a5aae28bf8d7 100644 GIT binary patch delta 73 zcmZ4SmvO~k#tmzj7$;2*6f51V#Jo#@F>~@c5v9rhh0ig@0$Cx95kOLTvYV(OV;Gn< U8^{U-vp$F>F!pZ_6bsJ)05P>2r~m)} delta 73 zcmZ4SmvO~k#tmzj7`rA1ij{6wV%{ad7(Mx%h|=W$!si(MfvgZlFCeKr*-g}t(F4qy U4P-fkSsz3b7~3}oiiKwY0460HQUCw| From 3ff1fe1cf10c00b96a6a87c09e32e7b67f3fa75d Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Tue, 28 Jul 2015 12:00:47 +0200 Subject: [PATCH 27/61] Commentati metodi di libreria in doxygen assenti --- Biopool/Sources/Atom.h | 19 +++++++++++++++++-- Biopool/Sources/PdbLoader.h | 24 ++++++++++++++++++++---- Biopool/Sources/PdbSaver.h | 5 +++++ Biopool/Sources/Protein.h | 11 +++++++++++ Biopool/Sources/Spacer.h | 15 +++++++++++++++ Mobi/APPS/mobi.cc | 6 +++--- Mobi/APPS/mobi.o | Bin 34992 -> 34960 bytes Mobi/Sources/MobiSaver.cc | 6 +++--- Mobi/Sources/ProteinModels.h | 5 +++++ Mobi/Sources/TmScore.h | 5 +++++ 10 files changed, 84 insertions(+), 12 deletions(-) diff --git a/Biopool/Sources/Atom.h b/Biopool/Sources/Atom.h index 3df6f47..6f20f05 100644 --- a/Biopool/Sources/Atom.h +++ b/Biopool/Sources/Atom.h @@ -45,6 +45,8 @@ namespace Victor { namespace Biopool { virtual ~Atom(); // PREDICATES: + + AtomCode getCode() const; unsigned long getNumber() const; @@ -130,17 +132,30 @@ namespace Victor { namespace Biopool { // -----------------x-------------------x-------------------x----------------- // PREDICATES: - + /** + * Return the code of the Atom + * @param none + * @return AtomCode + */ inline AtomCode Atom::getCode() const { return type; } - + /** + * Return the number of the Atom in the model + * @param none + * @return id, id of atom + */ inline unsigned long Atom::getNumber() const { return id; } + /** + * Return 3D vector with coordinate 3D of the Atom + * @param none + * @return vgVector3 + */ inline vgVector3 Atom::getCoords() { if (!inSync()) diff --git a/Biopool/Sources/PdbLoader.h b/Biopool/Sources/PdbLoader.h index f4c1bc9..f41505f 100644 --- a/Biopool/Sources/PdbLoader.h +++ b/Biopool/Sources/PdbLoader.h @@ -92,19 +92,35 @@ namespace Victor { namespace Biopool { void setNonPermissive() { permissive = false; } - + /** + You can chose if you want verbose output from this class + @param none + @return void + */ void setVerbose() { verbose = true; } - + /** + You can chose if you want not verbose output from this class + @param none + @return void + */ void setNoVerbose() { verbose = false; } - + /** + Set the chain that do you want load + @param char + @return void + */ void setChain(char _ch) { chain = _ch; } - + /** + set the Model that do you want load + @param unsigned int + @return void + */ void setModel(unsigned int _mod) { model = _mod; } diff --git a/Biopool/Sources/PdbSaver.h b/Biopool/Sources/PdbSaver.h index c20220e..c52b8f0 100644 --- a/Biopool/Sources/PdbSaver.h +++ b/Biopool/Sources/PdbSaver.h @@ -56,6 +56,11 @@ namespace Victor { namespace Biopool { // PREDICATES: + /** + close the output file + @param none + @return void + */ void endFile() { output << "END\n"; } diff --git a/Biopool/Sources/Protein.h b/Biopool/Sources/Protein.h index 0cbe782..d058591 100644 --- a/Biopool/Sources/Protein.h +++ b/Biopool/Sources/Protein.h @@ -68,6 +68,17 @@ namespace Victor { namespace Biopool { void deleteComponent(Component* c); void copy(const Protein& orig); + + /** + * load one model by Loader object. Use after command PdbLoader.setModel(i) , PdbLoader.checkModel(); + * @code + * Loader.setModel(i); + Loader.checkModel(); + this->load(Loader); + * @endcode + * @param Loader& , loader object + * @return void + */ virtual void load(Loader& l); // data loader virtual Protein* clone(); diff --git a/Biopool/Sources/Spacer.h b/Biopool/Sources/Spacer.h index 9217341..64ca3aa 100644 --- a/Biopool/Sources/Spacer.h +++ b/Biopool/Sources/Spacer.h @@ -160,6 +160,21 @@ namespace Victor { namespace Biopool { void setStateFromTorsionAngles(); void setDSSP(bool verbose); + + /** + * + * Return a vector of set, each set correspond whit one amino acid. + * Use this command after setDSSP(boool verbose) command. + * Each set contain many information about secondary structure of one amino acid. + * The first letter of the set is the secondary structure. + * @code + * Spacer.setDSSP(false); + * vector > = Spacer.getDSSP(); + * @endcode + * + * @param none + * @return vector > , a vector of set + */ vector< set > getDSSP() { return ss; }; diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 7c05718..064e25a 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -117,10 +117,10 @@ int main(int argc, char* argv[]) { // -------------------------------------------------- do { - cout << "Questo file pdb contiene "; + cout << "This file include: "; cout << pl.getMaxModels() << endl; - cout << "Vuoi caricare tutti i modelli? [y/n]" << endl; + cout << "Do you want load all models? [y/n]" << endl; getline(cin, input); // cin >> input; @@ -172,7 +172,7 @@ int main(int argc, char* argv[]) { prot.addModels(*(traslata->getSpacer(d))); } else - ERROR("Errore nella creazione della proteina traslata", + ERROR("Error in the creation of shift models.", exeption); prot.addModels(*(prot.getSpacer(j))); diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index d644061f8ec2450c826cffac9a0d29526a45eab9..ac7b32dac49162020a68fafdaee9a03736448bfc 100644 GIT binary patch delta 433 zcmXZW&r2Io5C?E)A&__wG_<9a{f6^&mI)x)mm( z8AgE!+Z)kVBdFj_Zdo7YW~`UbW6_Pb#J1l~MHKrD;YX2pA2)(1kz%d;r2TH_u3mIH zafk0k+6u%*C-BoSZi~1nl2+JE?=PnHbpB+RintkT(PO<*oGj{3rLz%opq~CGN2{5h zMT;<(0=P80Z1*`|-Mt95z{zdB0-SyfUQhW!QmnH+4g`^Z=U!}eh> z3{-3p8O!qpY5m*8BiE%vC|A-YGByvxI6Ibd<1VtJn(g1OVKNm_@h zN$Xn)qos%F*Bt)A@Hh|KFFFjc1|BT)f-t1xc`qjUb|Cyo_XEvm18jkPVoN zm1Qn`jb#c88zEt;!AAcB8;RH`K?Ez)t_1XL9?Xy7@y$1*-C%z=7&U48;M&Dn{r*7b zHWklJti{IaGto~IYjmQqT)XG?YOUbOgF$LUUuA}m7It8*5k{=1t2&NNC>|9zlE-5_ zce5fbF>6`>mMySd3zYp3jFMlMv!ty@8H=tknKg9#;f)V+C$0rr-^waC5heQ>vJ-Mc!M5N#VNj3px6`G!klm1uQLs&Tb`~Z36*8L>(|llb%U`5Z1%de=6vsUi;fWG mm+2=S<~#HUzw<*n?>^adoKD=$mor4aV73 Scale_distance) { * @param vector , vector Scaled Distance * @param vector , angle phi * @param vector , angle psi - * @param vector , secondary structures + * @param vector , secondary structures * * @return void */ diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index 6c3ecb4..24e8fef 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -54,6 +54,11 @@ class ProteinModels: public Protein { // MODIFIERS: + /** + You can chose if you want verbose output from this class + @param none + @return void + */ void setVerbose() { verbose = true; } diff --git a/Mobi/Sources/TmScore.h b/Mobi/Sources/TmScore.h index 01886fb..e3e0277 100644 --- a/Mobi/Sources/TmScore.h +++ b/Mobi/Sources/TmScore.h @@ -51,6 +51,11 @@ class TmScore { Protein* TmImpose(string modelFile, string nativeFile); // MODIFIERS: + /** + You can chose if you want verbose output from this class + @param none + @return void + */ void setVerbose(bool v) { verbose = v; } From 3ac3a7f1a1d81e7b25aeb9dc388450f08d709c20 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Tue, 28 Jul 2015 13:53:54 +0200 Subject: [PATCH 28/61] =?UTF-8?q?Possibilit=C3=A0=20di=20modificare=20i=20?= =?UTF-8?q?parametri=20di=20default=20inserita,=20miglirata=20verbosit?= =?UTF-8?q?=C3=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Mobi/APPS/mobi.cc | 14 +++++++++++- Mobi/APPS/mobi.o | Bin 34960 -> 36256 bytes Mobi/Sources/MobiSaver.cc | 34 ++++++++++++++--------------- Mobi/Sources/MobiSaver.h | 3 ++- Mobi/Sources/SecondaryStructure.cc | 2 -- Mobi/Sources/StandardDeviation.cc | 28 ++++++++++++++++++++++-- 6 files changed, 58 insertions(+), 23 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 064e25a..d6d590a 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -68,6 +68,12 @@ void sShowHelp() { cout << "\t -v verbose output. \n" << endl; cout << "\t -o [FILE OUTPUT] Output to file (default stdout)\n" << endl; + + cout << "\t -s arg Set bound everage scale distance mobility (default is 0.85)\n" << endl; + cout << "\t -d arg Set bound standard deviation mobility (default is 0.09)\n" << endl; + cout << "\t -y arg Set bound angle Phi mobility (default is 20)\n" << endl; + cout << "\t -x arg Set bound angle Psi mobility (default is 20)\n" << endl; + cout << "\t -h help" << endl; exit(EXIT_SUCCESS); @@ -77,6 +83,7 @@ void sShowHelp() { int main(int argc, char* argv[]) { bool v; + double ScalD, StandD, anglePHI, anglePSI; string inputFile, outputFile, input; //guide with -h option @@ -100,6 +107,11 @@ int main(int argc, char* argv[]) { ERROR("Error opening input .pdb file.", exception); getArg("o", outputFile, argc, argv, "!"); + getArg("s", ScalD ,argc, argv, 0.85); + getArg("d", StandD ,argc, argv, 0.09); + getArg("y", anglePHI ,argc, argv, 20); + getArg("x", anglePSI ,argc, argv, 20); + v = getArg("v", argc, argv); PdbLoader pl(inFile); // creates the PdbLoader object @@ -255,7 +267,7 @@ int main(int argc, char* argv[]) { // 6. MobiSaver object save mobility in output file // -------------------------------------------------- - MobiSaver* saver = new MobiSaver(prot, outputFile, v); + MobiSaver* saver = new MobiSaver(prot, outputFile, v, ScalD, StandD , anglePHI, anglePSI); saver->allMobility(ever, SD, ANGLE_PHI, ANGLE_PSI, MOB); delete saver; diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index ac7b32dac49162020a68fafdaee9a03736448bfc..d91dd45ea226866bc7ec56a58be5e0864ef29e0d 100644 GIT binary patch literal 36256 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 MpCobEc^0GpAN~Y?1ONa4 diff --git a/Mobi/Sources/MobiSaver.cc b/Mobi/Sources/MobiSaver.cc index 92a2192..31a5096 100644 --- a/Mobi/Sources/MobiSaver.cc +++ b/Mobi/Sources/MobiSaver.cc @@ -35,9 +35,13 @@ const string OUT = "ResultMobi.fasta"; * @param ProteinModels& , object PreteinModels * @param string output, path file output * @param bool verbose , verbose + * @param double boundSD, default = 0.85 + * @param double boundStandD, default = 0.09 + * @param double anglePHI, default = 20 + * @param double anglePSI, default = 20 */ -MobiSaver::MobiSaver(ProteinModels prot, string output, bool verbose) : - Saver(), verbose(verbose) { +MobiSaver::MobiSaver(ProteinModels prot, string output, bool verbose, double boundSD, double boundStandD, double anglePHI, double anglePSI) : + Saver(), verbose(verbose), ScalD (boundSD), StandD (boundStandD), angPHI(anglePHI), angPSI(anglePSI) { // TODO Auto-generated constructor stub //if file does not exist then create and insert aminoacid sequence in head otherwise don't create file @@ -98,7 +102,7 @@ void MobiSaver::mob_eveScalD(vector everageDistance) { if (verbose) cout - << "\n ### Salvataggio sul file della mobilità data la distanza media ###" + << "\n ### Save mobility from average distance ###" << endl; fout << endl; @@ -106,7 +110,7 @@ void MobiSaver::mob_eveScalD(vector everageDistance) { for (vector::iterator walk = everageDistance.begin(); walk != everageDistance.end(); walk++) { - if (*(walk) < 0.85) + if (*(walk) < ScalD) fout << "M"; else fout << "."; @@ -143,7 +147,7 @@ void MobiSaver::mob_stanD(vector Scale_distance) { for (vector::iterator walk = Scale_distance.begin(); walk != Scale_distance.end(); walk++) { - if (*(walk) > 0.09) + if (*(walk) > StandD) fout << "M"; else fout << "."; @@ -179,7 +183,7 @@ void MobiSaver::mob_aPHI(vector angle_PHI) { for (vector::iterator walk = angle_PHI.begin(); walk != angle_PHI.end(); walk++) { - if (*(walk) > 20) + if (*(walk) > angPHI) fout << "M"; else fout << "."; @@ -215,7 +219,7 @@ void MobiSaver::mob_aPSI(vector angle_PSI) { for (vector::iterator walk = angle_PSI.begin(); walk != angle_PSI.end(); walk++) { - if (*(walk) > 20) + if (*(walk) > angPSI) fout << "M"; else fout << "."; @@ -293,7 +297,7 @@ void MobiSaver::mob_eveScalD_filtSecS(vector everageDistance, //altrimenti diventa fisso while (everage != everageDistance.end() || secStruct != mobSecS.end()) { - if (*(everage) < 0.85 && *(secStruct) != '.') + if (*(everage) < ScalD && *(secStruct) != '.') fout << "M"; else fout << "."; @@ -347,7 +351,7 @@ void MobiSaver::mob_eveScalD_filteredByPHI_PSI_standD( for (vector::iterator walk = everageDistance.begin(); walk != everageDistance.end(); walk++) { - if (*(walk) < 0.85) + if (*(walk) < ScalD) vettoreSupporto.push_back("M"); else vettoreSupporto.push_back("."); @@ -380,13 +384,13 @@ void MobiSaver::mob_eveScalD_filteredByPHI_PSI_standD( test = test + (*(j)); if (test.compare(filter1) == 0) { - if (*(h) > 20 && *(s) > 20 && *(d) > 0.09 && (*(s - 1) > 20)) + if (*(h) > angPHI && *(s) > angPSI && *(d) > StandD && (*(s - 1) > angPSI)) flag = false; } else if (test.compare(filter2) == 0) { - if (*(h - 2) > 20 && *(s - 2) > 20 && *(d - 2) > 0.09 - && (*(h - 1) > 20)) + if (*(h - 2) > angPHI && *(s - 2) > angPSI && *(d - 2) > StandD + && (*(h - 1) > angPHI)) flag = false; } @@ -464,7 +468,7 @@ void MobiSaver::mob_stanD_withMask(vector Scale_distance) { for (vector::iterator walk = Scale_distance.begin(); walk != Scale_distance.end(); walk++) { - if (*(walk) > 0.09) + if (*(walk) > StandD) vettoreSupporto.push_back("M"); else vettoreSupporto.push_back("."); @@ -489,12 +493,8 @@ void MobiSaver::mob_stanD_withMask(vector Scale_distance) { while (j != vettoreSupporto.end() && i < 6 && flag) { test = test + (*(j)); - if (verbose) - cout << test << endl; iter = map.find(test); if (iter != map.end()) { - if (verbose) - cout << "Trovato" << test << endl; test = iter->second; flag = false; } diff --git a/Mobi/Sources/MobiSaver.h b/Mobi/Sources/MobiSaver.h index e10d72b..b5f41ee 100644 --- a/Mobi/Sources/MobiSaver.h +++ b/Mobi/Sources/MobiSaver.h @@ -49,7 +49,7 @@ class MobiSaver : public Saver{ public: // CONSTRUCTORS/DESTRUCTOR: - MobiSaver(ProteinModels __protein,string __output, bool __verbose = false); + MobiSaver(ProteinModels __protein,string __output, bool __verbose = false, double __boundSD = 0.85, double __boundStandD = 0.09, double __anglePHI = 20, double __anglePSI = 20); virtual ~MobiSaver(); // PREDICATES: @@ -69,6 +69,7 @@ class MobiSaver : public Saver{ private: bool verbose; string out; + double ScalD, StandD, angPHI, angPSI; }; } } diff --git a/Mobi/Sources/SecondaryStructure.cc b/Mobi/Sources/SecondaryStructure.cc index ee2dbbe..1cd61ab 100644 --- a/Mobi/Sources/SecondaryStructure.cc +++ b/Mobi/Sources/SecondaryStructure.cc @@ -72,8 +72,6 @@ vector SecondaryStructure::getMobilitySecondaryStructure() { //per ogni modello for (unsigned int i = 0; i < models.size(); i++) { - if (verbose) - cout << "Models number: " << i << endl; models[i].setDSSP(false); vettore_di_supporto = models[i].getDSSP(); //cout << "support vector size: " << vettore_di_supporto.size() << endl; diff --git a/Mobi/Sources/StandardDeviation.cc b/Mobi/Sources/StandardDeviation.cc index e3a44d9..c20e41a 100644 --- a/Mobi/Sources/StandardDeviation.cc +++ b/Mobi/Sources/StandardDeviation.cc @@ -80,6 +80,8 @@ void StandardDeviation::getCaAtom(Spacer* s, bool flag) { */ vector StandardDeviation::get_everage_distance() { + if (verbose) + cout << "### Start average distance standard deviation ###" << endl; /** vector average Scale Distance*/ dist_everage.clear(); @@ -98,7 +100,7 @@ vector StandardDeviation::get_everage_distance() { if (verbose) { cout << "Number of models: " << models.size() << endl; - cout << "Number of atoms in each models: " << num_atomi << endl; + cout << "Number of CA atoms in each models: " << num_atomi << endl; } //for any models create atom's vector @@ -152,6 +154,9 @@ vector StandardDeviation::get_everage_distance() { */ vector StandardDeviation::get_standard_deviation() { + if (verbose) + cout << "### Start calculate standard deviation ###" << endl; + dist_everage.clear(); ScD.clear(); @@ -170,7 +175,7 @@ vector StandardDeviation::get_standard_deviation() { if (verbose) { cout << "Number of models: " << models.size() << endl; - cout << "Number of atoms in each models: " << num_atomi << endl; + cout << "Number of CA atoms in each models: " << num_atomi << endl; } //scorro i modelli e per ognuno creo il vettore di atomi unsigned int u = 0; @@ -246,6 +251,9 @@ vector StandardDeviation::get_standard_deviation() { */ vector StandardDeviation::get_StandarDev_angle_PHI() { + if (verbose) + cout << "### Start calculate standard deviation from angle PHI ###" << endl; + double num_amino = 0; double sum = 0; @@ -254,6 +262,13 @@ vector StandardDeviation::get_StandarDev_angle_PHI() { else num_amino = original_models[0].sizeAmino(); + if (verbose) { + cout << "Number of models: " << original_models.size() << endl; + cout << "Number of amino in each models: " << num_amino << endl; + } + + + angle_PHI.clear(); vector > misure_PHI(num_amino, vector(original_models.size())); @@ -300,6 +315,9 @@ vector StandardDeviation::get_StandarDev_angle_PHI() { */ vector StandardDeviation::get_StandarDev_angle_PSI() { + if (verbose) + cout << "### Start calculate standard deviation from angle PSI ###" << endl; + double num_amino = 0; double sum = 0; @@ -308,6 +326,12 @@ vector StandardDeviation::get_StandarDev_angle_PSI() { else num_amino = original_models[0].sizeAmino(); + if (verbose) { + cout << "Number of models: " << original_models.size() << endl; + cout << "Number of amino in each models: " << num_amino << endl; + } + + angle_PSI.clear(); vector > misure_PSI(num_amino, vector(original_models.size())); From 0dd63d258824bc15a5a333584fd7d7a613331193 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Tue, 28 Jul 2015 15:24:20 +0200 Subject: [PATCH 29/61] modificata interfaccia --- Mobi/APPS/mobi.cc | 42 +++++++++++++++++++++++------------------- Mobi/APPS/mobi.o | Bin 36256 -> 35264 bytes 2 files changed, 23 insertions(+), 19 deletions(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index d6d590a..0ffbf7a 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -68,6 +68,7 @@ void sShowHelp() { cout << "\t -v verbose output. \n" << endl; cout << "\t -o [FILE OUTPUT] Output to file (default stdout)\n" << endl; + cout << "\t -m load any models \n" << endl; cout << "\t -s arg Set bound everage scale distance mobility (default is 0.85)\n" << endl; cout << "\t -d arg Set bound standard deviation mobility (default is 0.09)\n" << endl; @@ -82,7 +83,7 @@ void sShowHelp() { int main(int argc, char* argv[]) { - bool v; + bool v, models; double ScalD, StandD, anglePHI, anglePSI; string inputFile, outputFile, input; @@ -96,6 +97,16 @@ int main(int argc, char* argv[]) { return 1; } + getArg("o", outputFile, argc, argv, "!"); + getArg("s", ScalD ,argc, argv, 0.85); + getArg("d", StandD ,argc, argv, 0.09); + getArg("y", anglePHI ,argc, argv, 20); + getArg("x", anglePSI ,argc, argv, 20); + + models = getArg("m",argc, argv); + v = getArg("v", argc, argv); + + cout << "Welcome to Mobi!" << endl; //loan pdb file from input @@ -106,14 +117,6 @@ int main(int argc, char* argv[]) { if (!inFile) ERROR("Error opening input .pdb file.", exception); - getArg("o", outputFile, argc, argv, "!"); - getArg("s", ScalD ,argc, argv, 0.85); - getArg("d", StandD ,argc, argv, 0.09); - getArg("y", anglePHI ,argc, argv, 20); - getArg("x", anglePSI ,argc, argv, 20); - - v = getArg("v", argc, argv); - PdbLoader pl(inFile); // creates the PdbLoader object ProteinModels prot; @@ -128,21 +131,22 @@ int main(int argc, char* argv[]) { // 1. ask how much models load in protein // -------------------------------------------------- - do { - cout << "This file include: "; - cout << pl.getMaxModels() << endl; - - cout << "Do you want load all models? [y/n]" << endl; - getline(cin, input); - // cin >> input; +// do { +// cout << "This file include: "; +// cout << pl.getMaxModels() << endl; +// +// cout << "Do you want load all models? [y/n]" << endl; +// getline(cin, input); +// // cin >> input; +// +// } while ((strcmp(input.c_str(), "y")) != 0 +// && (strcmp(input.c_str(), "n")) != 0); - } while ((strcmp(input.c_str(), "y")) != 0 - && (strcmp(input.c_str(), "n")) != 0); //(!cin.fail() && input != 'y' && input != 'n'); if (!v) cout << "\nLOAD..." << endl; - if ((strcmp(input.c_str(), "y")) == 0) { + if (!models) { prot.load(pl); } else { prot.loadSameModels(pl); diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index d91dd45ea226866bc7ec56a58be5e0864ef29e0d..7d6267ff8e14f04438a095ec8a795f0c8a092238 100644 GIT binary patch literal 35264 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 DznL#= literal 36256 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 Date: Tue, 28 Jul 2015 15:53:29 +0200 Subject: [PATCH 30/61] deleted trash file --- Mobi/APPS/mobi.cc | 3 +++ Mobi/APPS/mobi.o | Bin 35264 -> 35936 bytes 2 files changed, 3 insertions(+) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 0ffbf7a..de61d47 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -277,6 +277,9 @@ int main(int argc, char* argv[]) { delete saver; prot.remove(outputFile); + //remove trash file + outputFile = outputFile + "TMScore.pdb_atm"; + remove(outputFile.c_str()); return 0; } diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index 7d6267ff8e14f04438a095ec8a795f0c8a092238..b931b125677d305863644c8ee75bee819ee34e74 100644 GIT binary patch delta 8132 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 Date: Tue, 28 Jul 2015 23:00:57 +0200 Subject: [PATCH 31/61] =?UTF-8?q?Aggiunta=20funzionalit=C3=A0=20per=20stam?= =?UTF-8?q?pare=20su=20.pdb=20file=20B-factor=20e=20standard=20deviation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Biopool/Sources/PdbSaver.h | 2 - Mobi/APPS/mobi.cc | 12 +++- Mobi/APPS/mobi.o | Bin 35936 -> 37912 bytes Mobi/Sources/MobiSaver.cc | 108 ++++++++++++++++++++++++++++-- Mobi/Sources/MobiSaver.h | 9 +-- Mobi/Sources/ProteinModels.cc | 3 +- Mobi/Sources/ProteinModels.h | 8 ++- Mobi/Sources/ProteinModels.o | Bin 71752 -> 71752 bytes Mobi/Sources/StandardDeviation.cc | 2 +- 9 files changed, 127 insertions(+), 17 deletions(-) diff --git a/Biopool/Sources/PdbSaver.h b/Biopool/Sources/PdbSaver.h index c52b8f0..dc059a6 100644 --- a/Biopool/Sources/PdbSaver.h +++ b/Biopool/Sources/PdbSaver.h @@ -108,8 +108,6 @@ namespace Victor { namespace Biopool { protected: - private: - // HELPERS: void writeSeqRes(Spacer& sp); // writes SEQRES entry void writeSecondary(Spacer& sp); diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index de61d47..1b76958 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -47,6 +47,8 @@ using namespace Victor; using namespace Victor::Biopool; using namespace Victor::Mobi; +const string OUTPDB = "ResultMobi.pdb"; + void sShowHelp() { cout << "NAME" << endl; @@ -271,15 +273,21 @@ int main(int argc, char* argv[]) { // 6. MobiSaver object save mobility in output file // -------------------------------------------------- - MobiSaver* saver = new MobiSaver(prot, outputFile, v, ScalD, StandD , anglePHI, anglePSI); + string out_pdb = outputFile + OUTPDB; + ofstream ofstream(out_pdb.c_str(), ofstream::app); + + MobiSaver* saver = new MobiSaver(prot, outputFile, ofstream, v, ScalD, StandD , anglePHI, anglePSI); saver->allMobility(ever, SD, ANGLE_PHI, ANGLE_PSI, MOB); - delete saver; prot.remove(outputFile); //remove trash file outputFile = outputFile + "TMScore.pdb_atm"; remove(outputFile.c_str()); + saver-> saveProtein(prot, ever, SD); + + delete saver; + return 0; } diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index b931b125677d305863644c8ee75bee819ee34e74..ce5d0721ae156b135a972a5b611f0aa5f845e2d7 100644 GIT binary patch literal 37912 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 a(ers%Xfueg8F3kZBMC>n6ATjZ_kRG5#zvO_ literal 35936 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 F{{dsd05Sjo diff --git a/Mobi/Sources/MobiSaver.cc b/Mobi/Sources/MobiSaver.cc index 31a5096..3d0ad9c 100644 --- a/Mobi/Sources/MobiSaver.cc +++ b/Mobi/Sources/MobiSaver.cc @@ -40,8 +40,11 @@ const string OUT = "ResultMobi.fasta"; * @param double anglePHI, default = 20 * @param double anglePSI, default = 20 */ -MobiSaver::MobiSaver(ProteinModels prot, string output, bool verbose, double boundSD, double boundStandD, double anglePHI, double anglePSI) : - Saver(), verbose(verbose), ScalD (boundSD), StandD (boundStandD), angPHI(anglePHI), angPSI(anglePSI) { +MobiSaver::MobiSaver(ProteinModels prot, string output, ofstream& stream, + bool verbose, double boundSD, double boundStandD, double anglePHI, + double anglePSI) : + PdbSaver(stream), verbose(verbose), ScalD(boundSD), StandD(boundStandD), angPHI( + anglePHI), angPSI(anglePSI) { // TODO Auto-generated constructor stub //if file does not exist then create and insert aminoacid sequence in head otherwise don't create file @@ -101,9 +104,7 @@ void MobiSaver::mob_eveScalD(vector everageDistance) { ERROR("Could not open file for writing.", error); if (verbose) - cout - << "\n ### Save mobility from average distance ###" - << endl; + cout << "\n ### Save mobility from average distance ###" << endl; fout << endl; fout << "> Average scale distance 0" << endl; @@ -384,7 +385,8 @@ void MobiSaver::mob_eveScalD_filteredByPHI_PSI_standD( test = test + (*(j)); if (test.compare(filter1) == 0) { - if (*(h) > angPHI && *(s) > angPSI && *(d) > StandD && (*(s - 1) > angPSI)) + if (*(h) > angPHI && *(s) > angPSI && *(d) > StandD + && (*(s - 1) > angPSI)) flag = false; } else if (test.compare(filter2) == 0) { @@ -545,3 +547,97 @@ void MobiSaver::allMobility(vector everageDistance, mob_SecS(Mob_SecStructure); } + +/** + * Method that shadow save Protein of PdbSaver, this method save in .pdb format + * all original models in ProteinModels with column standard deviation modified + * and column B factor modified with average scaled distance. + * @param ProteinModels , object ProteinModels + * @param vector , vector average scaled distance + * @param vector , vector standard deviation + * @return void + */ + +void MobiSaver::saveProtein(ProteinModels prot, + vector everageDistance, vector Scale_distance) { + + if (everageDistance.size() == 0 || Scale_distance.size() == 0) + ERROR("One vector is empty!", exception); + + vector::iterator walk; + vector::iterator walk2; + + if (verbose) + cout << "\n ### Save Pdb file with column b factor modify ###" << endl; + + output << "REMARK 1 template_A_NMRMOV.pdb" << "\n" + << "REMARK 2 B-factors changed to averaged Scaled Distance x 100 \n" + << "REMARK 3 after TMScore super imposition with d0 = 4.0; Occupancy changed to SD \n"; + + int g; + for (unsigned int i = 0; i < prot.original_models.size(); i++) { + if (prot.original_models[i].size() > 0) { + + aminoOffset = 1; + g = i + 1; + output << "MODEL " << g << endl; + //method of class Component. It checks how deep is the spacer + + walk = everageDistance.begin(); + walk2 = Scale_distance.begin(); + //saving is one ammino at a time + for (unsigned int j = 0; j < prot.original_models[i].sizeAmino(); + j++) { + AminoAcid gr = prot.original_models[i].getAmino(j); + gr.sync(); + + for (unsigned int y = 0; y < gr.size(); y++) { + string atName = gr[y].getType(); + + if (atName == "OXT") // cosmetics: OXT has to be output after + continue; // the sidechain and therefore goes in saveSpacer + + // Added variable for correcting atom type H (last column in PDBs) + char atomOneLetter; + if (!isdigit(atName[0])) { + atomOneLetter = atName[0]; + } else { + atomOneLetter = atName[1]; + } + + // Added control for size by Damiano Piovesan + // example HG12 + if (!isdigit(atName[0]) && (atName.size() < 4)) + atName = ' ' + atName; + while (atName.size() < 4) + atName += ' '; + + output << "ATOM" << setw(7) << gr[y].getNumber() << " " + << atName << " " << gr.getType() << " " << chain + << setw(4) << aminoOffset << " " << setw(8) + << setprecision(3) << gr[y].getCoords().x << setw(8) + << setprecision(3) << gr[y].getCoords().y << setw(8) + << setprecision(3) << gr[y].getCoords().z << " " + << fixed << setprecision(2)<< *(walk2) + << setw(6) << fixed << setprecision(2) + << (*(walk) * 100) << " " << atomOneLetter << "\n"; + + atomOffset = gr[y].getNumber() + 1; + + } + walk++; + walk2++; + aminoOffset++; + } + + output << "ENDMODL\n"; + } + + } + + endFile(); + + if (verbose) + cout << "Pdb file saved!" << endl; + +} diff --git a/Mobi/Sources/MobiSaver.h b/Mobi/Sources/MobiSaver.h index b5f41ee..5a872e3 100644 --- a/Mobi/Sources/MobiSaver.h +++ b/Mobi/Sources/MobiSaver.h @@ -26,7 +26,7 @@ #define MOBI_SOURCES_MOBISAVER_H_ //Includes: -#include +#include #include #include #include @@ -40,16 +40,16 @@ namespace Victor { namespace Mobi { /**@brief Implements a MobiSaver. - * This class inherit Saver class. This class allow to Saver in output file all type of vector generated from + * This class inherit PdbSaver class. This class allow to Saver in output file all type of vector generated from * Standard Deviation and SecondaryStructure classes to have the mobility. * You can save Mobility also filtered by same type of mask. */ -class MobiSaver : public Saver{ +class MobiSaver : public PdbSaver{ public: // CONSTRUCTORS/DESTRUCTOR: - MobiSaver(ProteinModels __protein,string __output, bool __verbose = false, double __boundSD = 0.85, double __boundStandD = 0.09, double __anglePHI = 20, double __anglePSI = 20); + MobiSaver(ProteinModels __protein,string __output, ofstream& __stream, bool __verbose = false, double __boundSD = 0.85, double __boundStandD = 0.09, double __anglePHI = 20, double __anglePSI = 20); virtual ~MobiSaver(); // PREDICATES: @@ -65,6 +65,7 @@ class MobiSaver : public Saver{ void allMobility(vector __everageDistance, vector __Scale_distance, vector __angle_PHI, vector __angle_PSI, vector __Mob_SecStructure); + virtual void saveProtein(ProteinModels __protein, vector __everageDistance, vector __StandardDeviation); private: bool verbose; diff --git a/Mobi/Sources/ProteinModels.cc b/Mobi/Sources/ProteinModels.cc index 1ebc9fb..ba1b622 100644 --- a/Mobi/Sources/ProteinModels.cc +++ b/Mobi/Sources/ProteinModels.cc @@ -92,7 +92,8 @@ void ProteinModels::load(PdbLoader& pl) { } /** - Chose how much models do you want load + Internal method + Chose how much models do you want loa @param (PdbLoader&) , object PdbLoader @return unsigned int */ diff --git a/Mobi/Sources/ProteinModels.h b/Mobi/Sources/ProteinModels.h index 24e8fef..05664d0 100644 --- a/Mobi/Sources/ProteinModels.h +++ b/Mobi/Sources/ProteinModels.h @@ -48,10 +48,14 @@ class ProteinModels: public Protein { virtual void load(PdbLoader& pl); - unsigned int selectModels(PdbLoader& pl); void loadSameModels(PdbLoader& pl); + +private: + unsigned int selectModels(PdbLoader& pl); + +public: // MODIFIERS: /** @@ -71,8 +75,10 @@ class ProteinModels: public Protein { void printModels(string outputFile); + // MODIFIERS: private: + bool verbose; public: diff --git a/Mobi/Sources/ProteinModels.o b/Mobi/Sources/ProteinModels.o index 7d831416773c7e34753c197cd85684cee5ff6be9..323c73dc384cd2af358bca3174a2868b3072b818 100644 GIT binary patch delta 38 scmX@Hf#t*omJJWM8MkbH$bF29@$Te@+{&9zi>+W|`~zlAm)-aa0AcqMD*ylh delta 38 scmX@Hf#t*omJJWM88>f!$bF29@y_Ij+{&9zi>+W|{0(MKm)-aa0AaimC;$Ke diff --git a/Mobi/Sources/StandardDeviation.cc b/Mobi/Sources/StandardDeviation.cc index c20e41a..3253b18 100644 --- a/Mobi/Sources/StandardDeviation.cc +++ b/Mobi/Sources/StandardDeviation.cc @@ -81,7 +81,7 @@ void StandardDeviation::getCaAtom(Spacer* s, bool flag) { vector StandardDeviation::get_everage_distance() { if (verbose) - cout << "### Start average distance standard deviation ###" << endl; + cout << "### Start average distance scale distance ###" << endl; /** vector average Scale Distance*/ dist_everage.clear(); From b02de281bc4491b2d01a84d03f1b162256792fec Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Wed, 29 Jul 2015 13:31:38 +0200 Subject: [PATCH 32/61] Create readme --- Mobi/readme | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 Mobi/readme diff --git a/Mobi/readme b/Mobi/readme new file mode 100644 index 0000000..1329cf1 --- /dev/null +++ b/Mobi/readme @@ -0,0 +1,23 @@ + + MOBI + + +Mobi è un software che permette di caricare un file pdb creato con tecnologia NMR e di calcolare la mobilità delle catene amino acidiche all'interno della proteina. +Il file pdb può essere caricato in toto o in parte caricando solo alcuni modelli. Le parti mobili della proteina sono calcolate con diverse metriche fra cui l'everage scale distance, la standard deviation scale distance, gli angoli phi, psi, e varie maschere logiche. + +Mobi è una directory di Victor, al suo interno si trova la directory APP la quale contiene il file mobi.cc che contiene il main. +Una volta compilato il progetto l'eseguibile si troverà in /Victor/bin/ con il nome di mobi. +Per eseguire mobi lanciamolo con l'option senza opzioni o con l'option -h. Apparirà il menù di aiuto che spiega come utilizzarlo. I file in output si troveranno nella cartella /Victor/Mobi/data. Si ricorda che i file in output debbono essere cancellati se si vuole rieseguire il programma, se così non fosse l'output poterebbe essere aggiunto in append al file. + +Requisiti: NMR pdb file. +Esecuzione: ./mobi pathpdbfile (in aggiunta le opzioni) +Opzioni: -o nomefile di otput per personalizzare il nome file in output di default è “stdout” + -v per settare la verbosità di tutti gli oggetti presenti + -m per caricare un numero limitato di modelli e non tutti quelli presenti nel file + -s modifica il valore di mobilità dell'everage scaled distance + -d modifica il valore di mobilità a standard deviation della scaled distance + -y modifica il valore di mobilità per l'angolo PHI + -x modifica il valore di mobilità per l'angolo PSI + -h help + +Output: L'output saranno 2 file, il primo sarà un file fasta con le diverse misurazioni di mobilità mente il secondo sarà un file pdb con i modelli salvati e le ultime colonne modificaate con la standard deviation e l'average scaled distance * 100. (Necessario controllare la correttezza del calcolo della mobilità DSSP). From 86cda7937edbd8355d4826c63c2beeafe2ef80c0 Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Wed, 29 Jul 2015 13:32:21 +0200 Subject: [PATCH 33/61] Update readme --- Mobi/readme | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mobi/readme b/Mobi/readme index 1329cf1..27b8e46 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -1,5 +1,5 @@ - MOBI + MOBI Mobi è un software che permette di caricare un file pdb creato con tecnologia NMR e di calcolare la mobilità delle catene amino acidiche all'interno della proteina. From 543a244cd266d133a4afb1827ddc4b0d1802a200 Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Wed, 29 Jul 2015 13:33:43 +0200 Subject: [PATCH 34/61] Update readme --- Mobi/readme | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Mobi/readme b/Mobi/readme index 27b8e46..3e95cfa 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -3,11 +3,14 @@ Mobi è un software che permette di caricare un file pdb creato con tecnologia NMR e di calcolare la mobilità delle catene amino acidiche all'interno della proteina. -Il file pdb può essere caricato in toto o in parte caricando solo alcuni modelli. Le parti mobili della proteina sono calcolate con diverse metriche fra cui l'everage scale distance, la standard deviation scale distance, gli angoli phi, psi, e varie maschere logiche. +Il file pdb può essere caricato in toto o in parte caricando solo alcuni modelli. +Le parti mobili della proteina sono calcolate con diverse metriche fra cui l'everage scale distance, la standard deviation scale distance, gli angoli phi, psi, e varie maschere logiche. Mobi è una directory di Victor, al suo interno si trova la directory APP la quale contiene il file mobi.cc che contiene il main. Una volta compilato il progetto l'eseguibile si troverà in /Victor/bin/ con il nome di mobi. -Per eseguire mobi lanciamolo con l'option senza opzioni o con l'option -h. Apparirà il menù di aiuto che spiega come utilizzarlo. I file in output si troveranno nella cartella /Victor/Mobi/data. Si ricorda che i file in output debbono essere cancellati se si vuole rieseguire il programma, se così non fosse l'output poterebbe essere aggiunto in append al file. +Per eseguire mobi lanciamolo con l'option senza opzioni o con l'option -h. +Apparirà il menù di aiuto che spiega come utilizzarlo. I file in output si troveranno nella cartella /Victor/Mobi/data. +Si ricorda che i file in output debbono essere cancellati se si vuole rieseguire il programma, se così non fosse l'output poterebbe essere aggiunto in append al file. Requisiti: NMR pdb file. Esecuzione: ./mobi pathpdbfile (in aggiunta le opzioni) @@ -20,4 +23,5 @@ Opzioni: -o nomefile di otput per personalizzare il nome file in output di defau -x modifica il valore di mobilità per l'angolo PSI -h help -Output: L'output saranno 2 file, il primo sarà un file fasta con le diverse misurazioni di mobilità mente il secondo sarà un file pdb con i modelli salvati e le ultime colonne modificaate con la standard deviation e l'average scaled distance * 100. (Necessario controllare la correttezza del calcolo della mobilità DSSP). +Output: L'output saranno 2 file, il primo sarà un file fasta con le diverse misurazioni di mobilità, +il secondo sarà un file pdb con i modelli salvati e le ultime colonne modificaate con la standard deviation e l'average scaled distance * 100. (Necessario controllare la correttezza del calcolo della mobilità DSSP). From 150e89a4a885122cab51108cf1aa536363f5093a Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Wed, 29 Jul 2015 13:35:57 +0200 Subject: [PATCH 35/61] Update readme --- Mobi/readme | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/Mobi/readme b/Mobi/readme index 3e95cfa..3ddd370 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -2,21 +2,26 @@ MOBI -Mobi è un software che permette di caricare un file pdb creato con tecnologia NMR e di calcolare la mobilità delle catene amino acidiche all'interno della proteina. +Mobi è un software che permette di caricare un file pdb creato con tecnologia NMR +e di calcolare la mobilità delle catene amino acidiche all'interno della proteina. Il file pdb può essere caricato in toto o in parte caricando solo alcuni modelli. -Le parti mobili della proteina sono calcolate con diverse metriche fra cui l'everage scale distance, la standard deviation scale distance, gli angoli phi, psi, e varie maschere logiche. +Le parti mobili della proteina sono calcolate con diverse metriche fra cui l'everage scale distance, +la standard deviation scale distance, gli angoli phi, psi, e varie maschere logiche. -Mobi è una directory di Victor, al suo interno si trova la directory APP la quale contiene il file mobi.cc che contiene il main. +Mobi è una directory di Victor, al suo interno si trova la directory APP la quale contiene il file mobi.cc +che contiene il main. Una volta compilato il progetto l'eseguibile si troverà in /Victor/bin/ con il nome di mobi. Per eseguire mobi lanciamolo con l'option senza opzioni o con l'option -h. -Apparirà il menù di aiuto che spiega come utilizzarlo. I file in output si troveranno nella cartella /Victor/Mobi/data. -Si ricorda che i file in output debbono essere cancellati se si vuole rieseguire il programma, se così non fosse l'output poterebbe essere aggiunto in append al file. +Apparirà il menù di aiuto che spiega come utilizzarlo. +I file in output si troveranno nella cartella /Victor/Mobi/data. +Si ricorda che i file in output debbono essere cancellati se si vuole rieseguire il programma, +se così non fosse l'output poterebbe essere aggiunto in append al file. Requisiti: NMR pdb file. Esecuzione: ./mobi pathpdbfile (in aggiunta le opzioni) -Opzioni: -o nomefile di otput per personalizzare il nome file in output di default è “stdout” +Opzioni: -o nomefile di otput per personalizzare il nome file in output di default è “stdout” -v per settare la verbosità di tutti gli oggetti presenti - -m per caricare un numero limitato di modelli e non tutti quelli presenti nel file + -m per caricare un numero limitato di modelli e non tutti quelli presenti nel file -s modifica il valore di mobilità dell'everage scaled distance -d modifica il valore di mobilità a standard deviation della scaled distance -y modifica il valore di mobilità per l'angolo PHI @@ -24,4 +29,5 @@ Opzioni: -o nomefile di otput per personalizzare il nome file in output di defau -h help Output: L'output saranno 2 file, il primo sarà un file fasta con le diverse misurazioni di mobilità, -il secondo sarà un file pdb con i modelli salvati e le ultime colonne modificaate con la standard deviation e l'average scaled distance * 100. (Necessario controllare la correttezza del calcolo della mobilità DSSP). +il secondo sarà un file pdb con i modelli salvati e le ultime colonne modificaate con la standard deviation e +l'average scaled distance * 100. (Necessario controllare la correttezza del calcolo della mobilità DSSP). From 75c48d789d66594340466d8766dfc8ad50c03a49 Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Mon, 10 Aug 2015 11:56:24 +0200 Subject: [PATCH 36/61] Update readme --- Mobi/readme | 50 +++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/Mobi/readme b/Mobi/readme index 3ddd370..bc32aa5 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -2,32 +2,32 @@ MOBI -Mobi è un software che permette di caricare un file pdb creato con tecnologia NMR -e di calcolare la mobilità delle catene amino acidiche all'interno della proteina. -Il file pdb può essere caricato in toto o in parte caricando solo alcuni modelli. -Le parti mobili della proteina sono calcolate con diverse metriche fra cui l'everage scale distance, -la standard deviation scale distance, gli angoli phi, psi, e varie maschere logiche. +Software Mobi load file pdb. The pdb file must be created with NMR technology. Mobi can calculate +amino acid's residue mobility inside protein. +The software can load the pdb file in its entirety (all models of protein), or in any models. +Different metrics evaluate mobility part of the protein for exemple the everage scale distance, +standard deviation, scale distance, the evaluation of angle phi, psi, and various logic mask. -Mobi è una directory di Victor, al suo interno si trova la directory APP la quale contiene il file mobi.cc -che contiene il main. -Una volta compilato il progetto l'eseguibile si troverà in /Victor/bin/ con il nome di mobi. -Per eseguire mobi lanciamolo con l'option senza opzioni o con l'option -h. -Apparirà il menù di aiuto che spiega come utilizzarlo. -I file in output si troveranno nella cartella /Victor/Mobi/data. -Si ricorda che i file in output debbono essere cancellati se si vuole rieseguire il programma, -se così non fosse l'output poterebbe essere aggiunto in append al file. +Mobi is a Victor directory, inside are located directory APP which include mobi.cc file that +include main. +After compiling the project the exeguible file are located in /Victor/bin/ with mobi's name. +For execute Mobi launch with no option or with option -h. +A help menù will appear that show how to use the program. +The output file will locate in directory /Victor/Mobi/data. +Remind that the output file must be deleted if you want re execute the program, +if this were not the case, the output file could be added in append to the file. -Requisiti: NMR pdb file. -Esecuzione: ./mobi pathpdbfile (in aggiunta le opzioni) -Opzioni: -o nomefile di otput per personalizzare il nome file in output di default è “stdout” - -v per settare la verbosità di tutti gli oggetti presenti - -m per caricare un numero limitato di modelli e non tutti quelli presenti nel file - -s modifica il valore di mobilità dell'everage scaled distance - -d modifica il valore di mobilità a standard deviation della scaled distance - -y modifica il valore di mobilità per l'angolo PHI - -x modifica il valore di mobilità per l'angolo PSI +Requirement: NMR pdb file. +Execution: ./mobi pathpdbfile (opzion addition) +Option: -o nomefile for output to personalize the name of the output file, default is “stdout” + -v set verbose of all object + -m to load a restricted numbers of models and not all present models in the file + -s modify value of mobility of everage scaled distance + -d modify value of mobility of standard deviation of scaled distance + -y modify value of mobility of angle PHI + -x modify value of mobility of angle PSI -h help -Output: L'output saranno 2 file, il primo sarà un file fasta con le diverse misurazioni di mobilità, -il secondo sarà un file pdb con i modelli salvati e le ultime colonne modificaate con la standard deviation e -l'average scaled distance * 100. (Necessario controllare la correttezza del calcolo della mobilità DSSP). +Output: The output will be 2 file, the first will be a fasta file with different metrics to estimate the mobility, +the second will be a pdb file with save model and the last columns changed whith standard deviation misure and +the average scaled distance * 100. From f2e954be957b4f18b3a095e02c8a8a465938625b Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Mon, 10 Aug 2015 17:35:54 +0200 Subject: [PATCH 37/61] Update readme --- Mobi/readme | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/Mobi/readme b/Mobi/readme index bc32aa5..40fc7e2 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -8,26 +8,24 @@ The software can load the pdb file in its entirety (all models of protein), or i Different metrics evaluate mobility part of the protein for exemple the everage scale distance, standard deviation, scale distance, the evaluation of angle phi, psi, and various logic mask. -Mobi is a Victor directory, inside are located directory APP which include mobi.cc file that +Mobi is a Victor folder, inside are located subfolder APP which include mobi.cc file that include main. -After compiling the project the exeguible file are located in /Victor/bin/ with mobi's name. +After compiling project the exeguible file are located in /Victor/bin/ with mobi's name. For execute Mobi launch with no option or with option -h. A help menù will appear that show how to use the program. The output file will locate in directory /Victor/Mobi/data. -Remind that the output file must be deleted if you want re execute the program, +Remind that the output file must be deleted if you want rerun the program, if this were not the case, the output file could be added in append to the file. +==Usage== Requirement: NMR pdb file. Execution: ./mobi pathpdbfile (opzion addition) Option: -o nomefile for output to personalize the name of the output file, default is “stdout” -v set verbose of all object -m to load a restricted numbers of models and not all present models in the file - -s modify value of mobility of everage scaled distance + -s modify value of mobility of average scaled distance -d modify value of mobility of standard deviation of scaled distance -y modify value of mobility of angle PHI -x modify value of mobility of angle PSI -h help -Output: The output will be 2 file, the first will be a fasta file with different metrics to estimate the mobility, -the second will be a pdb file with save model and the last columns changed whith standard deviation misure and -the average scaled distance * 100. From 52141a2cb1c4f00437b5c17d1323a94c7948a5bb Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Mon, 10 Aug 2015 17:57:06 +0200 Subject: [PATCH 38/61] Update readme --- Mobi/readme | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mobi/readme b/Mobi/readme index 40fc7e2..759af3d 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -20,7 +20,7 @@ if this were not the case, the output file could be added in append to the file. ==Usage== Requirement: NMR pdb file. Execution: ./mobi pathpdbfile (opzion addition) -Option: -o nomefile for output to personalize the name of the output file, default is “stdout” +Option: -o namefile for output to personalize the name of the output file, default is “stdout” -v set verbose of all object -m to load a restricted numbers of models and not all present models in the file -s modify value of mobility of average scaled distance From d4f01631fc7b8239b9028bd98aad1f24ce5037d3 Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Mon, 10 Aug 2015 22:03:01 +0200 Subject: [PATCH 39/61] Update readme --- Mobi/readme | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Mobi/readme b/Mobi/readme index 759af3d..0ddd071 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -20,8 +20,9 @@ if this were not the case, the output file could be added in append to the file. ==Usage== Requirement: NMR pdb file. Execution: ./mobi pathpdbfile (opzion addition) -Option: -o namefile for output to personalize the name of the output file, default is “stdout” +Option: -o namefile for output to personalize the name of the output file, default is “stdout” -v set verbose of all object + -c set chain of protein to read (default is first chain) -m to load a restricted numbers of models and not all present models in the file -s modify value of mobility of average scaled distance -d modify value of mobility of standard deviation of scaled distance From b7327f8216faa0fa44c587b58df64f9d5ac72d0f Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Tue, 11 Aug 2015 12:24:43 +0200 Subject: [PATCH 40/61] Update readme --- Mobi/readme | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Mobi/readme b/Mobi/readme index 0ddd071..f5ec048 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -4,7 +4,8 @@ Software Mobi load file pdb. The pdb file must be created with NMR technology. Mobi can calculate amino acid's residue mobility inside protein. -The software can load the pdb file in its entirety (all models of protein), or in any models. +The software can load the pdb file in its entirety (all models of protein), or in any models. +The user can choose the chain to load, the default is firdt chain of pdb file. Different metrics evaluate mobility part of the protein for exemple the everage scale distance, standard deviation, scale distance, the evaluation of angle phi, psi, and various logic mask. From 2664752f61d928c78badc88c17c2c50d8a173d6c Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Tue, 11 Aug 2015 12:53:07 +0200 Subject: [PATCH 41/61] Update readme --- Mobi/readme | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Mobi/readme b/Mobi/readme index f5ec048..aa884f6 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -19,8 +19,11 @@ Remind that the output file must be deleted if you want rerun the program, if this were not the case, the output file could be added in append to the file. ==Usage== -Requirement: NMR pdb file. +Requirement: +Input: NMR pdb file. + Execution: ./mobi pathpdbfile (opzion addition) + Option: -o namefile for output to personalize the name of the output file, default is “stdout” -v set verbose of all object -c set chain of protein to read (default is first chain) @@ -31,3 +34,5 @@ Option: -o namefile for output to personalize the name of the output file, defa -x modify value of mobility of angle PSI -h help +Output: Output is two file, the first will be fasta file with different mobility metrics, the second will be + pdb file with save models and the last column changed with standard deviation and average scaled distance * 100. From 11a21ab0279a7a0f14fd21788d773c06f99a09d8 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Tue, 11 Aug 2015 18:39:41 +0200 Subject: [PATCH 42/61] created folder test --- Makefile.global | 8 +- Mobi/Tests/Makefile | 57 +++++++++++++ Mobi/Tests/TestMobi.cc | 141 +++++++++++++++++++++++++++++++++ Mobi/Tests/TestProteinModels.h | 74 +++++++++++++++++ 4 files changed, 278 insertions(+), 2 deletions(-) create mode 100644 Mobi/Tests/Makefile create mode 100644 Mobi/Tests/TestMobi.cc create mode 100644 Mobi/Tests/TestProteinModels.h diff --git a/Makefile.global b/Makefile.global index d571ae4..781398e 100644 --- a/Makefile.global +++ b/Makefile.global @@ -77,7 +77,7 @@ ifeq ($(verbose), 3) USERFLAGS += -DVERBOSE=3 endif -CFLAGS = $(USERFLAGS) +CFLAGS = $(USERFLAGS) # # Tools @@ -106,8 +106,10 @@ SUBDIRS += _dummy_ LIB_PATH += -L$(UPDIR)/lib -INC_PATH += -I$(UPDIR)/tools -I$(UPDIR)/Energy/Sources -I$(UPDIR)/Biopool/Sources -I$(UPDIR)/Energy/Sources/TorsionPotential -I$(UPDIR)/Lobo/Sources -I$(UPDIR)/Align2/Sources -I$(UPDIR)/Mobi/Sources -I$(UPDIR)/Biopool/APPS -I$(UPDIR)/Energy/APPS -I$(UPDIR)/Align2/APPS -I$(UPDIR)/Lobo/APPS -I$(UPDIR)/Mobi/APPS +### MODIFIED BY MOBI - ***LUCA DEMO*** +INC_PATH += -I$(UPDIR)/tools -I$(UPDIR)/Energy/Sources -I$(UPDIR)/Biopool/Sources -I$(UPDIR)/Energy/Sources/TorsionPotential -I$(UPDIR)/Lobo/Sources -I$(UPDIR)/Align2/Sources -I$(UPDIR)/Mobi/Sources -I$(UPDIR)/Biopool/APPS -I$(UPDIR)/Energy/APPS -I$(UPDIR)/Align2/APPS -I$(UPDIR)/Lobo/APPS -I$(UPDIR)/Mobi/APPS +### MODIFIED BY MOBI - ***LUCA DEMO*** ifdef test INC_PATH += -I$(UPDIR)/Biopool/Tests -I$(UPDIR)/Energy/Tests -I$(UPDIR)/Align2/Tests -I$(UPDIR)/Lobo/Tests -I$(UPDIR)/Mobi/Tests SUBDIRS = Biopool/Tests Energy/Tests Align2/Tests Lobo/Tests Mobi/Tests @@ -175,6 +177,8 @@ subclean: $(RM) -fr ./Energy/data $(RM) -fr ./Lobo/data $(RM) -fr ./Biopool/data + $(RM) -fr ./Mobi/data + $(RM) -fr ./Mobi/data/* diff --git a/Mobi/Tests/Makefile b/Mobi/Tests/Makefile new file mode 100644 index 0000000..dc4fd52 --- /dev/null +++ b/Mobi/Tests/Makefile @@ -0,0 +1,57 @@ +#--*- makefile -*-------------------------------------------------------------- +# +# Standard makefile +# +#------------------------------------------------------------------------------ + +# Path to project directory. +UPDIR = ../.. +# Path to subdirectories. +SUBDIR= +# Path to directory for binaries: +BINPATH = ../../bin + + +# +# Libraries and paths (which are not defined globally). +# + +LIBS = -lMobi -lBiopool -ltools -L/usr/lib/ -lm -ldl -lcppunit + +LIB_PATH = -L. + +INC_PATH = -I. -I../../tools/ -I../../Biopool/Sources -I../../Mobi/Sources + +# +# Objects and headers +# + +SOURCES = TestMobi.cc TestProteinModels.h + +OBJECTS = $(SOURCES:.cpp=.o) + +TARGETS = TestMobi + +EXECS = TestMobi + +LIBRARY = TESTlibMobi.a + + + +# +# Install rule +# + +compile: all + +all: install + +install: $(LIBRARY) $(TARGETS) + mv $(EXECS) $(UPDIR)/bin + mv $(LIBRARY) $(UPDIR)/lib + +# +# Call global Makefile to do the job. +# + +include ../../Makefile.global \ No newline at end of file diff --git a/Mobi/Tests/TestMobi.cc b/Mobi/Tests/TestMobi.cc new file mode 100644 index 0000000..af1f9d5 --- /dev/null +++ b/Mobi/Tests/TestMobi.cc @@ -0,0 +1,141 @@ +/* + @file TestMobi.cc + @author Riccardo Zanella, riccardozanella89@gmail.com + @version 1.0 + */ + +/* This file is part of Victor. + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + +#include +#include +#include + +#include + +using namespace Victor::Mobi; +using namespace Victor::Biopool; +using namespace std; + +int main() { + CppUnit::TextUi::TestRunner runner; + + cout << "Creating Test Suites:" << endl; + runner.addTest(TestProteinModels::suite()); + +// runner.addTest(TestMobiProtein::suite()); +// runner.addTest(TestTM::suite()); +// runner.addTest(TestMobiMethods::suite()); + + cout << "Running the unit tests. " << endl; + runner.run(); + return 0; +} + + + + +/** + test object protein models. if i == 0 (load and save) + if i == 1 (load same models and save) + if i == 2 (load same models and save and impose and save vector of models) + @param (string output) , name of output file + @param int i , select type of test + @return void + */ +/* +void TestMobi::TestProteinModels(string output, int i) { + + // -------------------------------------------------- + // 1. Initialization + // -------------------------------------------------- + ifstream inputFile(output.c_str()); + ProteinModels* protein_models = new ProteinModels(); + protein_models->setVerbose(); + PdbLoader pl(inputFile); + pl.setVerbose(); + + if (i == 0) { + // -------------------------------------------------- + // 2. Load + // -------------------------------------------------- + protein_models->load(pl); + + // -------------------------------------------------- + // 3. Save + // -------------------------------------------------- + protein_models->save(output); + } + if (i == 1) { + // -------------------------------------------------- + // 2. Load + // -------------------------------------------------- + protein_models->loadSameModels(pl); + + // -------------------------------------------------- + // 3. Save + // -------------------------------------------------- + protein_models->save(output); + + } + + + if (i == 2) { + // -------------------------------------------------- + // 2. Load + // -------------------------------------------------- + protein_models->loadSameModels(pl); + + // -------------------------------------------------- + // 3. Save + // -------------------------------------------------- + protein_models->save(output); + + + //SUPER IMPOSITION + unsigned int d = 0; + + // ------------------------------------------------------ + // 4. TmScore object make super imposition of each models + // ------------------------------------------------------ + + TmScore tm("./Mobi/data/TMscore", output, true); + + Protein* traslata = new Protein(); + + for (unsigned int i = 0; i < protein_models->size() - 1; i++) + for (unsigned int j = i + 1; j < protein_models->size(); j++) { + traslata = tm.TmImpose(output + (itosDEF(i)), + output + (itosDEF(j))); + if (traslata != NULL) { + + protein_models->addModels(*(traslata->getSpacer(d))); + } else + ERROR("Error in the creation of shift models.", + exeption); + + protein_models->addModels(*(protein_models->getSpacer(j))); + + } + + // ------------------------------------------------------ + // 5. save model vector that contain couple of models, + // the first rototraslate, the second is the model + // ------------------------------------------------------ + + protein_models->printModels(output); + + } + +} +*/ diff --git a/Mobi/Tests/TestProteinModels.h b/Mobi/Tests/TestProteinModels.h new file mode 100644 index 0000000..e7d8533 --- /dev/null +++ b/Mobi/Tests/TestProteinModels.h @@ -0,0 +1,74 @@ +/* + @file TestProteinModels.h + @author Riccardo Zanella, riccardozanella89@gmail.com + @version 1.0 + */ + +/* This file is part of Victor. + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + +#ifndef MOBI_TESTS_TESTPROTEINMODELS_H_ +#define MOBI_TESTS_TESTPROTEINMODELS_H_ + +#include +#include +#include +#include +#include +#include + +#include "ProteinModels.h" + +using namespace std; +using namespace Victor::Mobi; + + +class TestProteinModels : public CppUnit::TestFixture { +public: + TestProteinModels(){} + virtual ~TestProteinModels(){} + + + static CppUnit::Test *suite() { + CppUnit::TestSuite *suiteOfTests = new CppUnit::TestSuite( + "TestProteinModels"); + + suiteOfTests->addTest( + new CppUnit::TestCaller( + "Test1 - Populate the ProteinModels", + &TestProteinModels::testPopulation)); + + return suiteOfTests; + } + + /** @brief Setup method. */ + void setUp() { + } + /** @brief Teardown method. */ + void tearDown() { + } + +protected: + /** @brief Test for parse/write. */ + void testPopulation() { + + cout << "Prima prova" << endl; + TestProteinModels* test = new ProteinModels(); + delete test; + } + + //void TestProteinModels(string __output, int __i); + +}; + +#endif /* MOBI_TESTS_TESTPROTEINMODELS_H_ */ From 1a5184fd3095fd9f81dc8983b9c6546ba2d4f4a7 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Tue, 11 Aug 2015 18:56:23 +0200 Subject: [PATCH 43/61] creato test folder --- Mobi/APPS/mobi.cc | 23 +++- Mobi/APPS/mobi.o | Bin 37912 -> 40112 bytes Mobi/Tests/TESTlibMobi.a | 223 +++++++++++++++++++++++++++++++++++++++ Mobi/Tests/TestMobi.o | Bin 0 -> 13856 bytes Mobi/Tests/libMobi.a | Bin 0 -> 27800 bytes Mobi/Tests/test.cc | 31 ++++++ Mobi/Tests/test.o | Bin 0 -> 4536 bytes 7 files changed, 276 insertions(+), 1 deletion(-) create mode 100644 Mobi/Tests/TESTlibMobi.a create mode 100644 Mobi/Tests/TestMobi.o create mode 100644 Mobi/Tests/libMobi.a create mode 100644 Mobi/Tests/test.cc create mode 100644 Mobi/Tests/test.o diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index 1b76958..6251984 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -72,6 +72,7 @@ void sShowHelp() { cout << "\t -o [FILE OUTPUT] Output to file (default stdout)\n" << endl; cout << "\t -m load any models \n" << endl; + cout << "\t -c arg Chain identifier to read (default is first chain)\n" << endl; cout << "\t -s arg Set bound everage scale distance mobility (default is 0.85)\n" << endl; cout << "\t -d arg Set bound standard deviation mobility (default is 0.09)\n" << endl; cout << "\t -y arg Set bound angle Phi mobility (default is 20)\n" << endl; @@ -87,7 +88,7 @@ int main(int argc, char* argv[]) { bool v, models; double ScalD, StandD, anglePHI, anglePSI; - string inputFile, outputFile, input; + string inputFile, outputFile, input, chainID; //guide with -h option if (getArg("h", argc, argv)) { @@ -100,6 +101,7 @@ int main(int argc, char* argv[]) { } getArg("o", outputFile, argc, argv, "!"); + getArg("c", chainID, argc, argv, "!"); getArg("s", ScalD ,argc, argv, 0.85); getArg("d", StandD ,argc, argv, 0.09); getArg("y", anglePHI ,argc, argv, 20); @@ -145,6 +147,25 @@ int main(int argc, char* argv[]) { // && (strcmp(input.c_str(), "n")) != 0); + // User selected chain + if (chainID != "!") { + if (chainID.size() > 1) + ERROR("You can choose only 1 chain", error); + pl.setChain(chainID[0]); + pl.checkAndSetChain(); + if (v) + cout << "Selected chain: " << chainID[0] << endl; + } // First chain + else { + if (pl.getAllChains().size() > 0) { + pl.setChain(pl.getAllChains()[0]); + if (v) + cout << "Selected chain: " << pl.getAllChains()[0] << endl; + chainID = pl.getAllChains()[0]; + } else if (v) + ERROR("No chains found. Quit...", exception); + } + if (!v) cout << "\nLOAD..." << endl; diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o index ce5d0721ae156b135a972a5b611f0aa5f845e2d7..57c4c239050e26e93138c340c44ae811f0822a8e 100644 GIT binary patch literal 40112 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 literal 37912 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 a(ers%Xfueg8F3kZBMC>n6ATjZ_kRG5#zvO_ diff --git a/Mobi/Tests/TESTlibMobi.a b/Mobi/Tests/TESTlibMobi.a new file mode 100644 index 0000000..ea039a5 --- /dev/null +++ b/Mobi/Tests/TESTlibMobi.a @@ -0,0 +1,223 @@ +! +// 22 ` +TestProteinModels.h/ + +TestMobi.cc/ 1439304912 1000 1000 100664 4005 ` +/* + @file TestMobi.cc + @author Riccardo Zanella, riccardozanella89@gmail.com + @version 1.0 + */ + +/* This file is part of Victor. + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + +#include +#include +#include + +#include + +using namespace Victor::Mobi; +using namespace Victor::Biopool; +using namespace std; + +int main() { + CppUnit::TextUi::TestRunner runner; + + cout << "Creating Test Suites:" << endl; + runner.addTest(TestProteinModels::suite()); + +// runner.addTest(TestMobiProtein::suite()); +// runner.addTest(TestTM::suite()); +// runner.addTest(TestMobiMethods::suite()); + + cout << "Running the unit tests. " << endl; + runner.run(); + return 0; +} + + + + +/** + test object protein models. if i == 0 (load and save) + if i == 1 (load same models and save) + if i == 2 (load same models and save and impose and save vector of models) + @param (string output) , name of output file + @param int i , select type of test + @return void + */ +/* +void TestMobi::TestProteinModels(string output, int i) { + + // -------------------------------------------------- + // 1. Initialization + // -------------------------------------------------- + ifstream inputFile(output.c_str()); + ProteinModels* protein_models = new ProteinModels(); + protein_models->setVerbose(); + PdbLoader pl(inputFile); + pl.setVerbose(); + + if (i == 0) { + // -------------------------------------------------- + // 2. Load + // -------------------------------------------------- + protein_models->load(pl); + + // -------------------------------------------------- + // 3. Save + // -------------------------------------------------- + protein_models->save(output); + } + if (i == 1) { + // -------------------------------------------------- + // 2. Load + // -------------------------------------------------- + protein_models->loadSameModels(pl); + + // -------------------------------------------------- + // 3. Save + // -------------------------------------------------- + protein_models->save(output); + + } + + + if (i == 2) { + // -------------------------------------------------- + // 2. Load + // -------------------------------------------------- + protein_models->loadSameModels(pl); + + // -------------------------------------------------- + // 3. Save + // -------------------------------------------------- + protein_models->save(output); + + + //SUPER IMPOSITION + unsigned int d = 0; + + // ------------------------------------------------------ + // 4. TmScore object make super imposition of each models + // ------------------------------------------------------ + + TmScore tm("./Mobi/data/TMscore", output, true); + + Protein* traslata = new Protein(); + + for (unsigned int i = 0; i < protein_models->size() - 1; i++) + for (unsigned int j = i + 1; j < protein_models->size(); j++) { + traslata = tm.TmImpose(output + (itosDEF(i)), + output + (itosDEF(j))); + if (traslata != NULL) { + + protein_models->addModels(*(traslata->getSpacer(d))); + } else + ERROR("Error in the creation of shift models.", + exeption); + + protein_models->addModels(*(protein_models->getSpacer(j))); + + } + + // ------------------------------------------------------ + // 5. save model vector that contain couple of models, + // the first rototraslate, the second is the model + // ------------------------------------------------------ + + protein_models->printModels(output); + + } + +} +*/ + +/0 1439307208 1000 1000 100664 1901 ` +/* + @file TestProteinModels.h + @author Riccardo Zanella, riccardozanella89@gmail.com + @version 1.0 + */ + +/* This file is part of Victor. + Victor is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + Victor is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with Victor. If not, see . + */ + +#ifndef MOBI_TESTS_TESTPROTEINMODELS_H_ +#define MOBI_TESTS_TESTPROTEINMODELS_H_ + +#include +#include +#include +#include +#include +#include + +#include "ProteinModels.h" + +using namespace std; +using namespace Victor::Mobi; + + +class TestProteinModels : public CppUnit::TestFixture { +public: + TestProteinModels(){} + virtual ~TestProteinModels(){} + + + static CppUnit::Test *suite() { + CppUnit::TestSuite *suiteOfTests = new CppUnit::TestSuite( + "TestProteinModels"); + + suiteOfTests->addTest( + new CppUnit::TestCaller( + "Test1 - Populate the ProteinModels", + &TestProteinModels::testPopulation)); + + return suiteOfTests; + } + + /** @brief Setup method. */ + void setUp() { + } + /** @brief Teardown method. */ + void tearDown() { + } + +protected: + /** @brief Test for parse/write. */ + void testPopulation() { + + cout << "Prima prova" << endl; + TestProteinModels* test = new ProteinModels(); + delete test; + } + + //void TestProteinModels(string __output, int __i); + +}; + +#endif /* MOBI_TESTS_TESTPROTEINMODELS_H_ */ + diff --git a/Mobi/Tests/TestMobi.o b/Mobi/Tests/TestMobi.o new file mode 100644 index 0000000000000000000000000000000000000000..825ae04e56b3b94e16f29aa0dc404ba11aacf51f GIT binary patch literal 13856 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 G%KroCs*(5r literal 0 HcmV?d00001 diff --git a/Mobi/Tests/libMobi.a b/Mobi/Tests/libMobi.a new file mode 100644 index 0000000000000000000000000000000000000000..e2db5bafca0eac06b6d27141f592aafaeccb1d8b GIT binary patch literal 27800 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 + +using namespace Victor; +using namespace Victor::Mobi; + +int main(int argc, char* argv[]) { + + if (argc!=3) + ERROR("Give me me output path! and the integer to test. (see signature test)", error); + + + string output = argv[1]; + int i =atoi(argv[2]); + + //TestMobi* test = new TestMobi; + + //test->TestProteinModels(output,i); + + + + return 0; +} diff --git a/Mobi/Tests/test.o b/Mobi/Tests/test.o new file mode 100644 index 0000000000000000000000000000000000000000..bfe37a0c1161d8233f982625547e4c55a7b07754 GIT binary patch literal 4536 zcmbtXUuYaf7@x~kbG9|T*496*wOa|Af?e*?YfbZ@Nt0{#XiRG^k&>$8W^dbDdv|;8 z&c#$k!Fw@=g5a|t6va2e7o|umwBU<~K8Y_%U!;NvBJ@eE-?uwoGnv~hR6jDiGr#$L zf99LH*)MOEr;qk!GK?g{o?>ewLK$mk*ZN~ocZ_XkTiFR~wcpAvUtfLI=zg2Ijx!5a zgc}Oeao8vuHCQjtE_&dO~;n!Jo5MlQDO8Do%+oDx1v zDdAh)tGQnhT9c;jwO}_UCPs~+shRnGM#&s84;aIRVySSrSTu%a-I`(9BF6VWi8)8v z9=}-TwON)~&S!RQ?$5mkks$uCoZEr#@qv7GAjb^omT(NR86yU~+c!B-=sU7;AU`pX z8{fnp1o$KpKpw-#-tYb`aRNEHKmYn@zU`9$UU}O-R~)&~eU6 z4Y$ru2X@nqqyFE|U0?yzb+=||OdHb>&z&lJVSxI|&pDbNi=Mp?UH@^Q;0~neqit1m z{US`>F8=6@Cxo`KR}B ziRt?9NWG()KKUnoN9ybQ_np)`L_|5xYxZ7*ankyS0s{yj+nkrJEZ>p z6n(PuzSP%f?1&zaB#<8QKau)6-I73?i1JPAC-?$%lJeJ<`LiSu^S1>W=~MoYrtcl9 zd?EdRh66?P_;IYqj`X&4MCa!|z~~I&Jo&!|`bqvj+=MK~8k%w4f6VHAB5wox<7V#+ z`b)NwOvXV zE-m`L0Vbejl=#(^XQN*f5H!gu_SLCu^h;NfxSx$qRuX=157-4nzk`s3HN`e%z0o%u zu&dCL_&=oJKc(P*r{MjNkROp?um}9n~e1QUo zFD#U>wksEhIX^l-Gci{=KEpZVQ`5(fj8AhOb{2VsN97;7njYcY^Re6k)tRa|96RuQ zaG4OpL8sx`K^bO-dBqR030t^K+MB6{6U8!wGkdIRL(B|IHNO#=4oiI2Z5Ipt8D8_k zwja7>VqqX92mWmUBA7nJX@T5pg>E1cLrF--9G@#dLJmPfst0)N);|mmrI`jM(Vv5C z{I?`WdL_42Yus@}k?O(IjZRpMi2z?`=Js3EP^0d z8>qMFa}gTj56C{gPRTyn!EX@Rp?aF^(0B4>$wyqZ<4at(b1sGdrow*+`s8<2;bZ*h z2L Date: Tue, 11 Aug 2015 21:10:34 +0200 Subject: [PATCH 44/61] elimiti file superflui --- Mobi/Tests/TESTlibMobi.a | 223 --------------------------------------- Mobi/Tests/TestMobi.o | Bin 13856 -> 0 bytes Mobi/Tests/libMobi.a | Bin 27800 -> 0 bytes Mobi/Tests/test.cc | 31 ------ Mobi/Tests/test.o | Bin 4536 -> 0 bytes 5 files changed, 254 deletions(-) delete mode 100644 Mobi/Tests/TESTlibMobi.a delete mode 100644 Mobi/Tests/TestMobi.o delete mode 100644 Mobi/Tests/libMobi.a delete mode 100644 Mobi/Tests/test.cc delete mode 100644 Mobi/Tests/test.o diff --git a/Mobi/Tests/TESTlibMobi.a b/Mobi/Tests/TESTlibMobi.a deleted file mode 100644 index ea039a5..0000000 --- a/Mobi/Tests/TESTlibMobi.a +++ /dev/null @@ -1,223 +0,0 @@ -! -// 22 ` -TestProteinModels.h/ - -TestMobi.cc/ 1439304912 1000 1000 100664 4005 ` -/* - @file TestMobi.cc - @author Riccardo Zanella, riccardozanella89@gmail.com - @version 1.0 - */ - -/* This file is part of Victor. - Victor is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - Victor is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - You should have received a copy of the GNU General Public License - along with Victor. If not, see . - */ - -#include -#include -#include - -#include - -using namespace Victor::Mobi; -using namespace Victor::Biopool; -using namespace std; - -int main() { - CppUnit::TextUi::TestRunner runner; - - cout << "Creating Test Suites:" << endl; - runner.addTest(TestProteinModels::suite()); - -// runner.addTest(TestMobiProtein::suite()); -// runner.addTest(TestTM::suite()); -// runner.addTest(TestMobiMethods::suite()); - - cout << "Running the unit tests. " << endl; - runner.run(); - return 0; -} - - - - -/** - test object protein models. if i == 0 (load and save) - if i == 1 (load same models and save) - if i == 2 (load same models and save and impose and save vector of models) - @param (string output) , name of output file - @param int i , select type of test - @return void - */ -/* -void TestMobi::TestProteinModels(string output, int i) { - - // -------------------------------------------------- - // 1. Initialization - // -------------------------------------------------- - ifstream inputFile(output.c_str()); - ProteinModels* protein_models = new ProteinModels(); - protein_models->setVerbose(); - PdbLoader pl(inputFile); - pl.setVerbose(); - - if (i == 0) { - // -------------------------------------------------- - // 2. Load - // -------------------------------------------------- - protein_models->load(pl); - - // -------------------------------------------------- - // 3. Save - // -------------------------------------------------- - protein_models->save(output); - } - if (i == 1) { - // -------------------------------------------------- - // 2. Load - // -------------------------------------------------- - protein_models->loadSameModels(pl); - - // -------------------------------------------------- - // 3. Save - // -------------------------------------------------- - protein_models->save(output); - - } - - - if (i == 2) { - // -------------------------------------------------- - // 2. Load - // -------------------------------------------------- - protein_models->loadSameModels(pl); - - // -------------------------------------------------- - // 3. Save - // -------------------------------------------------- - protein_models->save(output); - - - //SUPER IMPOSITION - unsigned int d = 0; - - // ------------------------------------------------------ - // 4. TmScore object make super imposition of each models - // ------------------------------------------------------ - - TmScore tm("./Mobi/data/TMscore", output, true); - - Protein* traslata = new Protein(); - - for (unsigned int i = 0; i < protein_models->size() - 1; i++) - for (unsigned int j = i + 1; j < protein_models->size(); j++) { - traslata = tm.TmImpose(output + (itosDEF(i)), - output + (itosDEF(j))); - if (traslata != NULL) { - - protein_models->addModels(*(traslata->getSpacer(d))); - } else - ERROR("Error in the creation of shift models.", - exeption); - - protein_models->addModels(*(protein_models->getSpacer(j))); - - } - - // ------------------------------------------------------ - // 5. save model vector that contain couple of models, - // the first rototraslate, the second is the model - // ------------------------------------------------------ - - protein_models->printModels(output); - - } - -} -*/ - -/0 1439307208 1000 1000 100664 1901 ` -/* - @file TestProteinModels.h - @author Riccardo Zanella, riccardozanella89@gmail.com - @version 1.0 - */ - -/* This file is part of Victor. - Victor is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - Victor is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - You should have received a copy of the GNU General Public License - along with Victor. If not, see . - */ - -#ifndef MOBI_TESTS_TESTPROTEINMODELS_H_ -#define MOBI_TESTS_TESTPROTEINMODELS_H_ - -#include -#include -#include -#include -#include -#include - -#include "ProteinModels.h" - -using namespace std; -using namespace Victor::Mobi; - - -class TestProteinModels : public CppUnit::TestFixture { -public: - TestProteinModels(){} - virtual ~TestProteinModels(){} - - - static CppUnit::Test *suite() { - CppUnit::TestSuite *suiteOfTests = new CppUnit::TestSuite( - "TestProteinModels"); - - suiteOfTests->addTest( - new CppUnit::TestCaller( - "Test1 - Populate the ProteinModels", - &TestProteinModels::testPopulation)); - - return suiteOfTests; - } - - /** @brief Setup method. */ - void setUp() { - } - /** @brief Teardown method. */ - void tearDown() { - } - -protected: - /** @brief Test for parse/write. */ - void testPopulation() { - - cout << "Prima prova" << endl; - TestProteinModels* test = new ProteinModels(); - delete test; - } - - //void TestProteinModels(string __output, int __i); - -}; - -#endif /* MOBI_TESTS_TESTPROTEINMODELS_H_ */ - diff --git a/Mobi/Tests/TestMobi.o b/Mobi/Tests/TestMobi.o deleted file mode 100644 index 825ae04e56b3b94e16f29aa0dc404ba11aacf51f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13856 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 G%KroCs*(5r diff --git a/Mobi/Tests/libMobi.a b/Mobi/Tests/libMobi.a deleted file mode 100644 index e2db5bafca0eac06b6d27141f592aafaeccb1d8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27800 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 - -using namespace Victor; -using namespace Victor::Mobi; - -int main(int argc, char* argv[]) { - - if (argc!=3) - ERROR("Give me me output path! and the integer to test. (see signature test)", error); - - - string output = argv[1]; - int i =atoi(argv[2]); - - //TestMobi* test = new TestMobi; - - //test->TestProteinModels(output,i); - - - - return 0; -} diff --git a/Mobi/Tests/test.o b/Mobi/Tests/test.o deleted file mode 100644 index bfe37a0c1161d8233f982625547e4c55a7b07754..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4536 zcmbtXUuYaf7@x~kbG9|T*496*wOa|Af?e*?YfbZ@Nt0{#XiRG^k&>$8W^dbDdv|;8 z&c#$k!Fw@=g5a|t6va2e7o|umwBU<~K8Y_%U!;NvBJ@eE-?uwoGnv~hR6jDiGr#$L zf99LH*)MOEr;qk!GK?g{o?>ewLK$mk*ZN~ocZ_XkTiFR~wcpAvUtfLI=zg2Ijx!5a zgc}Oeao8vuHCQjtE_&dO~;n!Jo5MlQDO8Do%+oDx1v zDdAh)tGQnhT9c;jwO}_UCPs~+shRnGM#&s84;aIRVySSrSTu%a-I`(9BF6VWi8)8v z9=}-TwON)~&S!RQ?$5mkks$uCoZEr#@qv7GAjb^omT(NR86yU~+c!B-=sU7;AU`pX z8{fnp1o$KpKpw-#-tYb`aRNEHKmYn@zU`9$UU}O-R~)&~eU6 z4Y$ru2X@nqqyFE|U0?yzb+=||OdHb>&z&lJVSxI|&pDbNi=Mp?UH@^Q;0~neqit1m z{US`>F8=6@Cxo`KR}B ziRt?9NWG()KKUnoN9ybQ_np)`L_|5xYxZ7*ankyS0s{yj+nkrJEZ>p z6n(PuzSP%f?1&zaB#<8QKau)6-I73?i1JPAC-?$%lJeJ<`LiSu^S1>W=~MoYrtcl9 zd?EdRh66?P_;IYqj`X&4MCa!|z~~I&Jo&!|`bqvj+=MK~8k%w4f6VHAB5wox<7V#+ z`b)NwOvXV zE-m`L0Vbejl=#(^XQN*f5H!gu_SLCu^h;NfxSx$qRuX=157-4nzk`s3HN`e%z0o%u zu&dCL_&=oJKc(P*r{MjNkROp?um}9n~e1QUo zFD#U>wksEhIX^l-Gci{=KEpZVQ`5(fj8AhOb{2VsN97;7njYcY^Re6k)tRa|96RuQ zaG4OpL8sx`K^bO-dBqR030t^K+MB6{6U8!wGkdIRL(B|IHNO#=4oiI2Z5Ipt8D8_k zwja7>VqqX92mWmUBA7nJX@T5pg>E1cLrF--9G@#dLJmPfst0)N);|mmrI`jM(Vv5C z{I?`WdL_42Yus@}k?O(IjZRpMi2z?`=Js3EP^0d z8>qMFa}gTj56C{gPRTyn!EX@Rp?aF^(0B4>$wyqZ<4at(b1sGdrow*+`s8<2;bZ*h z2L Date: Tue, 11 Aug 2015 21:20:02 +0200 Subject: [PATCH 45/61] test correctly setted! --- .cproject | 2 +- Mobi/Tests/TestProteinModels.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.cproject b/.cproject index 63da05e..7381f00 100644 --- a/.cproject +++ b/.cproject @@ -20,7 +20,7 @@ 5?@mO-CMa*wsp^L)$l z#}PfxlcxMBhWu=zKi49EzCnK`(U)21Lk4{=(J!;mr_p`Pr|frJ&xrpNKHNUpeuDtJ z2RjBG)`3b-WL%xobPAR8I;8Mgq|@sodV`=4!3KHubD&7SSwP=7D}7j2*XJBa`6_PP3B)Shd< zq4vrB;{TWaF4tMOW@rDul;+iBh~;`}lE5WBuAwj>{m1ZOId>ok0r5}Z!}yyBLO@)~ z;rBR9ITNWqO+1fqUI%q4sj#LK^ti@ny{U8`=~Ljt`!INo0p;(957YY*gn;+|q*D4H zuOCf0M-mOg4tbP7`cD~zSk|M=CzD|Im=`hDi}`sUK3uL@coTw&-=<-OAAmH|<60F1(o6ht zg=+k-kY@U!WGAGT?Mk*2nV*XUy~OXZ;2#KFw$E9p5CTRA;lue^Ch)%r{2GBv`s)NP z<^NFNQqGSAF6C?zxTJqp;Gc{9>=L-_*DniP(!VZnsrR73Wxc?U&#Qp9rTiR$OZj;M zm-4j~N4cXY>xAPq!u=Ji2k}EPG@h=bD18Ru!wvjw!UG0gN;vmNmOq#_eliXEoD(&W zZQ!R9o@?MI5bhfIQH1lp1?xSG@OcJ(f5I0S_>F`wG4KfCH3ohS;mZxYp6~_(|LOz{ ztTyn!5Z-3sKPEYA47`Kr*BW@k2o0<=@F^tc5d*(@lm<2$_~j>SpxwZ4B7CQTKTP;; z1OFA_uNnANG%&wy;6I}c&OHWxC*k`I{AR)r8h8ugsv*NYZVxL6AAo?sml2+B;6BRd za0CAv(FY8CAK|=S!Q0rs-X}cMpkGROwt<%uo@?NTQhrMV}(*`94DZ1uo_DGXj(=>A#Nvh2a#Vh&2pC z9H2DfEtJNHimmc_oxn3Gjr6So&ldRg0?!rr4+QQCyiMT60{@}F=L!4=oo>^ahRV`qI@|HbKVe_X!bX7~Pief> zE^uB8BfeAMHzGh`x4^$(5aIx(ac)edG)Chnjd(vwW8_jA@&1&?=psrZK7i5~)leF7 zey0K<9zzfxhyaB(6eG^h1QFskkN98&D6~_I_@R`>=oLyMoDNf=T{Sn!e0?`$n{tF9)XV(^1l@L$pTOJ=?lDls=)cYXv9YgJX_Fb z3S6EGJx1UQ1U>gbyd4(!1VO)A;MoGdL*SUFOsdz72F~r{6$8(t^1n$q*2^Rze{hPv zKr;L+pzFgaW_qq)zR&dO)cGn6diK>e81e(uc%L-r*#|mk(6>`#97cm0>OEU$S^fVG z;hfLOWS?R|k39QH&U}M@2GKW}^v7x?tp@!fw!fgy)uihGmjcfd_%IrLF)sxI{|@1t b{|1s@A?T6EIZiXJGw=ZIKkPK{2EzXz*c=AZ From 2f9a4cf864738c77eed67e3df554982ba4f7d296 Mon Sep 17 00:00:00 2001 From: ozymandias89 Date: Thu, 13 Aug 2015 16:13:58 +0200 Subject: [PATCH 56/61] remove object file --- Mobi/Sources/TmScore.o | Bin 32424 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Mobi/Sources/TmScore.o diff --git a/Mobi/Sources/TmScore.o b/Mobi/Sources/TmScore.o deleted file mode 100644 index 5b7495f22a54511689221f8bd124a5aae28bf8d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32424 zcmd6Q4}4VBmH!LFKt#v{Z4v+B0BMc3qzQk6wKX9LynzHF6BMa9nM@`mnq+1t69~GL zAc-mnaXXebC zcO~g=KfmAod|vK--+TVubMHO(zW46H_PYAz6AB6}P6gIyt?V76mepLEEmx^xl@+j- zE86qn9(gXL{36OPrhFFVmr(Afd^Y8CD4$FDrIcSr`6no!M|nBr3n*Vi`DZAMBjemR*t6Z_ftnl4#}Gz?`dnx+E;yT^)=P&s+$6-SJ&C8KY+RK9-4?Y>^Qj# za%i|xI(XPOFdh2X9(uZ@AFESuXqOE=P_hT^6_GvkxT-t|08sp#z(-4Pbl9mk*=hBu zD~8kOT9)sUTFVNguPjjxQ-*+>2LJJc(NR0S%{qirB7^Qa z2c7rlC4Pl4yz3%>eS>!ZWg6;ymuLnkm*lYT`s#E=QE~`flHp!Rr~*)DeY&Br;;?;W zVhNCeZBt9Czl$Y1eXgDQfcXaZ6ndP=w_Y)zQOPKEDIer4{{qcIYvoV zE)SN#&@+lA{eYrX7S*S5_FFFulr*9pV1k{VhKP-W$%7@!syK~zHWEMr+N-e`NH0Hu z_=p>6GoqCSnm5SwbF z5#T}LmUbMOkhEK>$V#9MU@?$hq1@6atY0t6&7#~+<@(gq)P1`rD#M`lg`_3m*{#HBeHFAt7CL0_KDlf}^UjQGfReV@N1KhBUw_8M2%0uB(^GEA+rEbbC6h@N*Z(K+U3BC zbM3Ez$4)B|Fh)5>22#)4Y1JKp^aB%5Ah&6O^xr+sruBv zXdN6nVXz-80v4%W^e+gsu%#&Q+Kj-Dl0fifF$m3(IQ%+9Q1(}*z0FSnvutm(RM=F~ zoYUS%LH^+3-mAyl)`c0$#d~|``jWUZ>M5Mj6|e9*r>x-{JKcm- zBG`Rd8RQ%M{U3037-I+gB{1m@SeS1VFKp<-gXkOS4?_psUC07I0PC@pZXMveqzcB_ zwswv-L(02);TKA1>E~4+r^FsG1CyP4wB$a>A*SqA_d~aoLir&m7eM|s#2|l|^1r0~ z>y&?k@_mpa{eH?HA^e+=`$65KkpBxb1V|1*u^RHnATQ9vY3LT1D0)Yt0f?IYP>qJZ z2stJ!AJs)weqEH0iLw#^_i8=@56%%xw4L(}{snXp^gbDDk#QIb6zlhpL0geJ0@FqII`0aiE_kC z)*BTCtbbrJ5?N?Dih=SO1FRHu68(S?8yGo2QX4=8nxR)`jG-9*IjGYLK(%s#016E2 zYFX0NAGX>^gO%P7Ta1wyH4RfEj#c9u> zDWDeaM;ptBAO0PNyjpdyh~e=-*1vj&`ZfOvqG5xO-s0c+(nPK9$L|@{J%QxzmW)7^ zj%7n@;3?#^Z(uKU=|Kp9_$)Gg@D<-3-~JEahM9!}HC0bomBX58`Fxmgdr!CJDkln`~8o3ur!+!;9d9J4iot}P& zhEKLTe-4ObO19>7&6YfdsFR^8hoK~o;T%Au_mhqxa-XOid0OrLc+J4Qjr6hbJ47>H zm|*Z_x@I`7hUfFT4_*qSujLR49uk52Be8LGe-`nwlZtqiOd561unQB)BBPRXttct zxi3p-mX87Co#ywj>x4kPKqS{31j{pv!{w*6Yq8zAi$gKiU@z*YTJ*nmP9{$4y^!e3 zk-tVNboZDVyfN24enOFNfQF}lt>Y59ehfmNz;HMoORpJ&(B|<9y?P8n&sIX8R&&`- z{i_-TdiG_;sD6}JFY#0jzXcjo7vQTb9W zH+{2gr#{}b?#z2#F7*BYcQ-yYdPkng(VNjnZA))&l+RhvIPug~0}qhdw$HNDHKh`m zPmXZ$fp~SFV~bpulH%3<6T;v}q`|qb?uEa`Z~w=g_FuvFn|&(U@vJcM2~#^DUS}Nt zkhvXKSXcP1rmkQlmWY-`B34}@5ldX*4|n^cSn|grk={hKwai-A9d7B2`jat#TP$&t zKhoaO+3JrcVv%T1k5%0gOC&qGH^htYU}F#lq#(1rZo+IFtTo~Rkymfp|;+#R>%C|2x>-q zEWf{{qdT0~Iy)Cuw(;P@U<%=2SjA4 zHQmnV3t`toAH6c~-_m9E={9%}{I_HizlXQ+yIGDTG|FMoaZ>)=$ldCFQeNm8u7H(z zPku-m`PS%YLGgL;wqTC8#`=^uWNm;lU{j|mtirPOec^&xA#1ZP@0hRx3fFs|z1WI* zQx{t|dmp*n`gTEZ=yGe1=WoHhA5HYWU1Hti1*&~s?>%#^A5HS^nQNVz5ug$(xd^8KX8iYT#xu8(w$%9GEK|xG=kVHgyHM z;<276nPbdWFTSQDl8hymEbEBHW3kS~^|5ekG*M?{_)}M`sHwTaU%F!Ty370v%PPwj z_~(~bEG%DIQQ11M{mGaQyC%sZeJM zE2lEOWm6cu=2A&wxXZ>Qu}%%;VEr!G-7eUE7wl;l>?mPVDaZD`MdgoTUR_iiEGo48 zQ2agKLu$uAfbX2JqR8JlrKq^NsIdBMOVRkj7ntJshiQ_zG_^#d1{u>#Xv`4#fwi4z zUXXGotk2L?0=}DQN-$qmR6I0cS<%ehp6Vk1Z4;}DN_To!6qQf7b4pQZZIQpaXeLlB zD=G|}o$057n;Yv@FHTnbIS=>cl_0JJ^+MVV*F-ER`E@8Cq>=npMO9G{4+=Bl*$<`E zkzYh!ZX*!0uRaOzF06yp0GHAMbhk~YEt$ZB{nb zVw+bMRc&`P8Et9=p7)U%(n{!9=D!1d_65(fBLC3DWksdCy|qQ!!)}UapV!}!oESSoAwss}MEs!S@I&bGvBH9@) zOGf*WR#|H}8Mew=U^7#eLCZoL3{j$Xe%)qEahhqCc0xc|k%;xi>(;IgmWLMU@|oBw z79d}+qcvL79`5MYyi2q9W8<&x>gbMDM><-GKYM>h{&J;19*#gTRE94O>YK4~)^}_Q zcaz%1baO^d)n-i`j3&wE?EM+}E70b~L@XI)k1gT5Gx9D(-qpR4&S)$NUf0Si$^|mE zAyJM)B0F|^yE{8>igs?57>uW2vSLw7xThl$fJKm@>wNP9RDN+!Y`$(}%@ zE*OSCb$Xa(WsaNQVN?EiUfS5&QV;EqCR}tmR!Bjs<;HN*;IyhJtH^C;XV2PTZ0)Lw z1;JQvA`-2SMZ&PuT4kFekx;ZR5{)NAFcmwaxm>|yywmKAU`wDW)Kng7stDDsT@_p$ zYFrgu5c*>!C}t%FB#4GoN`XDea3a|oC#a*lBN+-O5@GC9#X=RtAKK6qFvN>G=74a~ z6#Nh(3`kjV*O)0Iv97LYHv}$tu8Nkyu3;V+8@Y)rinfQ^65%fJ?R zbNtl;zuWk0r14iyj5z=1!sQ%)3D(aFC_hR1)jJANhqlVpWzgU6GX6gXj86Txv3|&9 zDy9k2EchxoDmxPChIzhKbcPx|A;&zV#Ivj+X8NzJjJ7*RjI;BxAp z1cA$~|4)&A^$v$*VCK|c0Q_$Kf0Xo}B3{&wzjJZwpKs8A0D~2z7j%~S>(oEbp#N~M zW+|irgZk&e<7Sp`pbMKX(D{1~oW~#MT?YH(xG+Id@2+%F{dL;kZm|DFd@%*- zfUv(D?w$7UCjE}#Yu!!j-eNXXNz;8zMU_2lu>a`AnhM`t$>g;EL4*B$eVU6hwf-ys z$Z7vS8}$2UX?}bcCX-YDF@ye7qp|`>b)5=L+-S{0{GqL&wX1pQ>EztN`P4ZOp+M@W;~q^ZpcYhm*`uj=St^&twI0M zn>7dPLH}I=7xOc|4*1bT=lHWpzjOb?e$&z|tA+U;0-A~6=`ZK~MuYt)$o_Itg!X?1 zE~ovs8}!FXKZPMSH?RL5Gw|;v{^ks)F8Ceyj~eWsNdsTTuPWem+W%wH&+W{J_v;eI zJek=4od2BoB@LG6`JITqXFjg|Ew`Tm%FF$_Q0f?%Y(JB~ZD_y$&o#v^8W-4qwQw;% zkH6`FIaDad^>bBb;RjKfoc80rW9TXJy*Su0!H>5v*>HUpE~kDR-){Q%2A~4cb<=dt zf1Uancjibp(RydpiQ~OTJ;~(Pcr4m9IjTIFr=8pikL4WQy56IH>6%N6cb?3bmE1ay zMT?&6 z2Is;KC`=GIuXFbUUI62b=ZPHe9<_q7glz5+db23{0V8&P@>o~pgMfIfDg$0)z%ioa zrbpDRv|866Q5k*}%T2#mw~k3pBpz#7E^!9WmycB**GPo8TZBOzf~QOJSdO4aG@iV- zEV{yDO?Huj^0^mtt38$+9oagMg}?a7PaZ4ZZ%E~_oKKgU*JGLdi94PAjc`Wl62cXRw)+^X<$lA3+q+-8tJV8CB7 z;3I&aBla8gSZbXO4?J%6`wjR!z^99S2+xZp2Ks;jZ#Upu0C%(VON956hrUSpw+;A@ z0G}h)(*~lS1R>I`y)yxyBi31dUR`6L4*`yL`eD9e!m}Ef1`YJP4fwqV{3Qc^7C79^ z{yGD`(txiq;Oh+d1_Rz~z@rAd(|~U`;D2SnUpC+~U`ccH&oToZH{g#O@L>Z!3zkeb zy`M7RpEcl(20UcI69)YA27I>x|EdB1p#eW?z~46DrLc8y^UtRZc$)#g&wzj1fWKxr_20U%R_ZaZ~h{GD}Oivi-|G|L2VZh%4e74w!a~lg_i^gTC`%=JX zi~Tu2Vb%ifmxNpvr{qH$g2~RFK>o3vy0w5U(C2$%a4;qs?g~VjLUqAKa9Sl&7Kh^` za8xF=A#<*5VMDB?V+o0_7I-|HVo~t_pXZ8f0Iuy4wdvEr5h50OZ9f(%6sSDK$L{Lu;e)`Q@QtDB2ZIZVe@(aX7yhON2K?>+)s7tT!C%Lt;1rxVRGz z#C1k%X@m#0{EG5WL#QRr(`VVl4r>#Pz%> z41>H?JTrI{>!P;K-k$bx4?HX05szB<13D|xiN8^4?Tyd3@Mm(J))qMVYbByxvCXQ} zgULz=h#?4#Q5bhBa5aHd3n^B%@#X?B$I)S&h#2I~5LST-BGDO$7UGVgt`U@EBW5PL z!8u$~HCD4gA@7dx7l5W93A2cnhOtmDjKSQhgRzLh)e5l&fUa08`mqU}R;ir^E`tNt zX2*W9G>GG)U$nO}*&cC7E{j;;-MC}%?$=;`U$1V{QaVSwUAmm2?oE`ejcut|(! za}-Z(0sO+Mj>>w}k#8{80F_uLjKQ~}JklPG+|&Rr=~Ud^TjYe}UqJDZd3L{9-WfIx zV(e!2e`D);)#fpc5!e-A)Z}pjTV>tJIIdvbD(_dy*`3TqA%Lg21uN(F}PjN9wUTNbyDc^fq7kd0_xrq&qIu z+7k=4!*4L)c)gnAnLwh5wB}HxFATrT%}DAYgFfU0yV}LW9tBwY!Yv(}D=L;ixf8~8 z2ptSQZHuXZU_Rd-3dOpF=q}2|1r59OdAvJJ!d)XG8jSLEr13KMr-6wh8%daL;z)Zw)b_ z9NAxA5qLAyG5vlazY}myj}wl5Lp$L$u1bdm?k5bhSB3obaL@ApQOHL*{LGKv8!(}r zU2rk|u)wS?`ww{$~PzOyCKDe^1~&0)Neb9~ZckGXcJfU}AqZ>RW3X;mC$Z z_Snvq0`C=gP~iA2faz}#xE!~5z6}%WZPB+D|I2ZxcN1JJ=T;#{`uQHhaXhak8JImO z=%wDn2E8u|da3tk0^b61*`8ksybo~roTJjeJ8*bSrcwbBpq+Sxi{}gf1H0H>JetJv z`vpCIJK%T?{}!xDCb!S<35{`24hz!elNZ?Zb-wJ%2pnqB5s|5ZQ;Z8rlE9j+v zekbtHgB#7! zkOTjul44nJ5RP_khl~5=xC6&nkLfoKyh@>#^?|_gj0BH|Rq&k&6Z)qgF7C$=;i$I( zE~eisa2)?^&n-fZZ0~@9exIP4e*HxbVE+zoY@;(}hv-zRV>|8E2?<-a0u z>4%>Y&Uzo#YOP-gdg+IE2zUBn8ho$99 zpFp9It`YRN!#&d{2uDAxgNx_mX+eL3pr4F_A)%cTZz0_2&z*vP7x1v&A%Uj^exJbq zLf{VzJT36=5bm`9SwX*2(Encpeq6|r>+h%mpMeS?VRjWqnJ=W?yu<9x>d-L?Y&*l?*@9d=Wc=T5%}W<{8a;fTHvdM9M3ek zfrNHS`Lhi8V#0BH$mi3jpqJ05JqG#*4fOjB^gl7s4-5QGu!;RPDscH6G`R?fAYps& zf{W>W0>@`|#?KRYi@;|KTgMg_f$15=0q{UhVRQo^0>`mCUr?OHByY0p}L z-y!@ECfqq5b_;shU-ug5pE1xMG0^|oK)-Z47zYXcAp50}aP)&*Pp>!7Zx%R?A6`fH z3H(mLdHfs}xYYZm0e_!xr{CtD141F8{a3@q@)rvH9)T|txa{{N;m&^FD(Gdu-z9Kq z|NR1&@e z3jAJyUrV@iT-_?@<+$1>aM_Q4BXHS|KM?X|KfXq|vmbvUa6kC~v)>5$vLD|Q@?}4c z3VP|c$uu!>JV?JyC7j1YkaW)yxU~Or!kzXn7Py~eV77vA=Qykv@}>Pvf?nExy}+gY zVIk)N&{s;jdju}+-%hyG{MF{xKm3pRstJ zUg4mBp6IU<^lgH^UeHVbtS8**pH_kUNj7GELcW||+k|{9a-19#^wK{=0+;>!kig}8 zhDQW0>Ayud`;+70lY(CAJtS}`=LLbwc=(3EWgPpp0e@fMGJg7IXeZ)$kaDUFc-Vk@ zw3xi-cN5P0Q`EZ>E*?L$-BaUpl?#sJp#d)LN1khluZD}$rBpzC4O~qBNy1TYBV4SP zf8mDxC7-|633|DXu$_M@dlm}4(m%MD!{oGcqlWYLQD`3~%&{%(2R>)(^gsK}i7!SW zkWh~F^9qIL@v`Q!$4mq@av$=IrZ)8kr(32|vBek;U;cne%i&(BHNFB9S7^#kuQA^n%&VtS6x zSbrZ}oM>C5#*dV9J`o`OmzfxH_5;elA1;<(N;F81eZ=Enp1?y?#%w;7QO@mfu^hSX zNIQ9+qI@Zb`xo)Az{QF87fw65z5ojRE}1dR5&vIs@w&i%MVw8i7{|yjI{<0UKMx|l`%UZaGp~NLdQTtInz~1|KWeX2yuF)p(<=aPmi_= z?-V%CO{|dTnrO?Z=zl`==mXyKV8uxx2X%A8|8EZy(sQiC`%e-PW_b0(g^B-{U&MF} uBYqvxvmCaypK#1Lh9G^)L0^I(q{D(9i+-~22M&53_aE^nHf5unzyAdm0 Date: Thu, 13 Aug 2015 16:14:29 +0200 Subject: [PATCH 57/61] delete object main --- Mobi/APPS/mobi.o | Bin 40112 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Mobi/APPS/mobi.o diff --git a/Mobi/APPS/mobi.o b/Mobi/APPS/mobi.o deleted file mode 100644 index cc0e2ed3f4e58870ba9e6caa2dbdff9b2088a000..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40112 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 Date: Thu, 13 Aug 2015 16:16:04 +0200 Subject: [PATCH 58/61] finish project --- Mobi/readme | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Mobi/readme b/Mobi/readme index c95f0d2..4e7b213 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -36,4 +36,5 @@ Option: -h help Output: Output is two files, the first will be a fasta file with different mobility metrics, the second will be - a pdb file with save models and the last column changed with standard deviation and average scaled distance * 100. + a pdb file with save models and the last column changed with standard deviation and average scaled + distance * 100. From 464836d30e119429630aa07c8af33ee9964523b7 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Thu, 13 Aug 2015 16:34:40 +0200 Subject: [PATCH 59/61] finish --- Mobi/readme | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mobi/readme b/Mobi/readme index 4e7b213..7b5930f 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -37,4 +37,4 @@ Option: Output: Output is two files, the first will be a fasta file with different mobility metrics, the second will be a pdb file with save models and the last column changed with standard deviation and average scaled - distance * 100. + distance x 100. From 052eaa7608b153ad9d381d3e4eb307139e189205 Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Thu, 13 Aug 2015 17:09:37 +0200 Subject: [PATCH 60/61] final release --- Mobi/readme | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mobi/readme b/Mobi/readme index 7b5930f..ada832e 100644 --- a/Mobi/readme +++ b/Mobi/readme @@ -36,5 +36,5 @@ Option: -h help Output: Output is two files, the first will be a fasta file with different mobility metrics, the second will be - a pdb file with save models and the last column changed with standard deviation and average scaled + a pdb file with save models and the last columns changed with standard deviation and average scaled distance x 100. From e53d4f5b4401d63a3ea6b7457b4f6f9c2e38402a Mon Sep 17 00:00:00 2001 From: riccardo zanella Date: Fri, 14 Aug 2015 12:32:06 +0200 Subject: [PATCH 61/61] ok --- Mobi/APPS/mobi.cc | 2 +- Mobi/Sources/SecondaryStructure.cc | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Mobi/APPS/mobi.cc b/Mobi/APPS/mobi.cc index ca0c269..3380b93 100644 --- a/Mobi/APPS/mobi.cc +++ b/Mobi/APPS/mobi.cc @@ -229,7 +229,7 @@ int main(int argc, char* argv[]) { ever = std.get_everage_distance(); //print vector -// cout << "EVERAGE" << endl; +// cout << "AVERAGE" << endl; // for (vector::iterator everage = ever.begin(); everage != ever.end(); // everage++) { // cout << *everage << endl; diff --git a/Mobi/Sources/SecondaryStructure.cc b/Mobi/Sources/SecondaryStructure.cc index ae4ee70..97149b4 100644 --- a/Mobi/Sources/SecondaryStructure.cc +++ b/Mobi/Sources/SecondaryStructure.cc @@ -45,6 +45,13 @@ SecondaryStructure::SecondaryStructure(const ProteinModels& modelli, SecondaryStructure::~SecondaryStructure() { } +/** + * get the secondary structure. Return is a vector of vector of char where vector[i][j] + * 'i' is a specific amino acid + * 'j' is a specific model + * and char is a letter of secondary structure of amino acid 'i' and models 'j' + * @return vector< vector > , return vector of vector of char. + */ vector< vector > SecondaryStructure::getSecStructFromModels(){ unsigned int num_amino = 0;