From 6d95b988460298e78589b8f1dff7904ac756f0bb Mon Sep 17 00:00:00 2001 From: rautenberg Date: Fri, 20 Jan 2017 14:48:49 +0100 Subject: add nano-lazar 1.1.0 DOI --- references.bib | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/references.bib b/references.bib index 30d32b0..16f2c70 100644 --- a/references.bib +++ b/references.bib @@ -1,3 +1,13 @@ +@misc{gebele_denis_2017_250818, + author = {Gebele, Denis and + Rautenberg, Micha and + Helma, Christoph}, + title = {nano-lazar}, + month = jan, + year = 2017, + doi = {10.5281/zenodo.250818}, + url = {https://doi.org/10.5281/zenodo.250818} +} @misc{rautenberg_micha_2016_187328, author = {Rautenberg, Micha and Gebele, Denis and -- cgit v1.2.3 From c0318a95e290a722c861a6124e5037ff4420aac6 Mon Sep 17 00:00:00 2001 From: rautenberg Date: Fri, 20 Jan 2017 18:45:04 +0100 Subject: change footer, add Grant No, IST address, refine lazar-rest poster --- beamerthemeIST.sty | 25 +- images/rest_integration.pdf | 1506 ++++++++++++++++++++++++++++++++++ markdown_blocks/rest_integration.md | 4 + markdown_blocks/rest_interaction.md | 3 - markdown_blocks/rest_qmrf.md | 4 + markdown_blocks/rest_screenshot.md | 1 + markdown_blocks/rest_screenshot_1.md | 8 - markdown_blocks/rest_swagger_ui.md | 1 + nmsa-ist-rest.tex | 21 +- 9 files changed, 1549 insertions(+), 24 deletions(-) create mode 100644 images/rest_integration.pdf create mode 100644 markdown_blocks/rest_integration.md delete mode 100644 markdown_blocks/rest_interaction.md create mode 100644 markdown_blocks/rest_qmrf.md create mode 100644 markdown_blocks/rest_screenshot.md delete mode 100644 markdown_blocks/rest_screenshot_1.md create mode 100644 markdown_blocks/rest_swagger_ui.md diff --git a/beamerthemeIST.sty b/beamerthemeIST.sty index 51205f4..72563d1 100644 --- a/beamerthemeIST.sty +++ b/beamerthemeIST.sty @@ -143,15 +143,30 @@ \begin{columns}[t] \begin{column}{.01\paperwidth} \end{column} - \begin{column}{.68\paperwidth} - \vskip2.2ex + \begin{column}{.42\paperwidth} + \vskip4.4ex + \small {\insertfooter} \end{column} - \begin{column}{.30\paperwidth} + \begin{column}{.22\paperwidth} + \begin{center} + \small + \justifying + \texttt{http://enanomapper.net} + This project has received funding from + the European Union's Seventh + Framework Programme for research, + technological development and + demonstration under grant agreement + no 604134. + \end{center} + \end{column} + \begin{column}{.32\paperwidth} \begin{center} \hfill - \includegraphics[width=0.32\linewidth]{./images/eNM-logo.eps}\hspace*{1ex}\vspace*{1ex} - \includegraphics[width=0.6\linewidth]{./images/logo-ce-horizontal-en-quadri.eps} + \includegraphics[width=0.30\linewidth]{./images/eNM-logo.eps}\hspace*{1ex}\vspace*{1ex} + \hskip4ex + \includegraphics[width=0.52\linewidth]{./images/logo-ce-horizontal-en-quadri.eps} \vskip2ex \end{center} \end{column} diff --git a/images/rest_integration.pdf b/images/rest_integration.pdf new file mode 100644 index 0000000..f196a9a --- /dev/null +++ b/images/rest_integration.pdf @@ -0,0 +1,1506 @@ +%PDF-1.4 +%âăĎÓ +1 0 obj + << + /Title () + /Author () + /Subject () + /Keywords () + /Creator (yExport 1.5) + /Producer (org.freehep.graphicsio.pdf.YPDFGraphics2D 1.5) + /CreationDate (D:20170120160949+01'00') + /ModDate (D:20170120160949+01'00') + /Trapped /False + >> +endobj +2 0 obj + << + /Type /Catalog + /Pages 3 0 R + /ViewerPreferences 4 0 R + /OpenAction [5 0 R /Fit] + >> +endobj +4 0 obj + << + /FitWindow true + /CenterWindow false + >> +endobj +5 0 obj + << + /Parent 3 0 R + /Type /Page + /Contents 6 0 R + >> +endobj +6 0 obj + << + /Length 7 0 R + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"07bDrG[Or_&nVskK.Dr*.j5mnOR!$b03/[Q95h44U0C8Riakj??1NZ#t-pSdH$Wbh?;P`,/n5PahY +1`D?CUG9K@X`FF/J,B0DIeh=[ +m@XC499Jr2^])^.J,b#tpM]S7^]3rHe`&gk:TWlI2QqOYV9LOX7%<(l_S<)7^R"\Be_brcR/8(@Ht85+ +TKiC'&_+u"DM=d2mJZn?dsjnOW'C!p.m>'Qo'IP!V[`1bQMI?n^Ng+a)'b[#qj/tMO2O/c^R%dR@]8a0 +E7"TF+9*&3rkncJVSkp*^\beGo=t4H5Q'+t]mX/crqeohf)5Jrs7lKsq^K8X[uWberq+7Gs,Z(&C>g"J +H+p35f5T=55(Fkt%.!Yu;-]NekPb0f\7O[GDjJ!c\!?#FoiU&]%f.9]Kt%)'dB1pKhuE"\iIQKn?Ms?J +Zb.CZIHgM#NZRTc=C3FPJ/qc,G`X/:pY#DtW:)IdGZ*";DaGT2,"/FZGHTq+hYc52s%lKsh(8$"0t"Che7o"6Qic.b +@nKG%J)qGX4fbC4JT;&^YpH'+VqTW=;emFf;s]'KYl3r3p9fkG36h2Tp5_)3l<>1q1QW)``0GQ*5BYe$-10db^K]$=!Pk+7SPFH!ho@.^FZ$2@cc4T]ottg71F):7tLc>/cV12+9&sl?ck(X<*VkB]Y53 +7!#7Y?42BmMD&aV/L;2L%@t6RQe!(_7R]j(1Y[o +38#iengJY+_S18@iAE[,*P>FOJW]X'N]0DVr`=L?YcXW8""jM3'ahgp0h03cY%\`'b2S/0;W(69Ma]hD +[B`sL7,RpN:t(qdXDtVW[5R,(4?N0*b;I_CluH1X"2+*1U9Q6!>-t)+l#5EbTp9gR]PHMPl4QlQmk7bO +_mmipit'gP[4Z1Aj)376em?8F)uJ'0C?9=o=KP%=CQVK`6/R_jnMLM.@&6t4U\BMtI*YH-/2Yu&?!:?` +`!]g-5/&U2"370gXk#6d-+@[s"S*TnY4#p.A,gSO0Q$5uqg7btX_NPH(M,QIP/5uWQdBMi9%Xc&NFWN1 +J%>?(Ol2J9et5n,6!?F\]?G?e0; +CQ);,-TN-@%j\,,Sc^V+UY..qe)UiiehR95(8lk&FOr9RRC@@:#"dFP( +67kjQ/B,HPb$13_/j"3\^KOT/!QpT3%*lMjE#uroA1SE_3K1A@Q%eP-j%["iesZ.F0,6otZi%"O/JO,5 +`-I1sbd,I()mkEt/jLgDs*"+/ro[&UkYV$i2-TTO(j$5_XO.F%\oD)9RoIh9Ca$5A3F161Lhst2>j7ca +7O3bu-QdoG5dnOGd&;CQhE>,>RW3_off7+F^Z%_bji/T&)[HW3<]I`JBe?8#%88&/*K:/gUta/8"c=h$ +cj/:PF*.>jZ&]mIcK0Uef^$[(:5p7VZoAS'qC5V4kU26f/6Xhp^E?T%-Nd(N@HOK3khXn/P0A,Lg +q(a!nhe%s6S>iEh&Xr%7jENp\0K$L]pNLZ=.j[*)g]?4Eh`Se-Ve8t=!*MiBiC0].18"2jSX#L$SHKsTQ*P>EMa]i9iI*e2o?gD'm#(]M0UA11' +GrkqH]P"S4J&OML05HW\>11`u!D\!+@p&?+3BmMOGdmo:GNU9F<1V>T3DBtfO8>4&?SC$AgM7PmH]'^6 +]Y-LE@TY5,-ZuP6j*\Cj7(UR\g3dWeYRg(93V)kNHZ/PQpJg5q3iH)WP$6o\]]o<5;;>dnnk8RlbeF;U +FFJb*.::j34Ibq?$k5*Cj"j3'#K#Its&/d\jZ7U4Xl=bIOlhA,G?gmfH[o"\i,7`$[5GV>SSO5PF3iA_ +/*l!^f[-5OL.qm)QekZ+Hg%,+SP!XZ;t-Y;.3991Z0uri0gB=hRbb(R5`Maam)_MgrR6n#&L,Dt&Mc#SIg;_rBaE=7mqQaVa&,])bG[Bh'F&fcNF\sL9 +2fDQhhWaEeVM0>7:?p=9*9*gt-oK3e-]5rJhjf:Tg5=?.OpH/Z@il%OX>m\Uu&qri$SBV\^f3((^44>_EI +.)qfti#7KYPQ>W?RNhm\>%_$Q#"EUTt +Z@TA`C!DSC478;9359"gNiBbIre?_Vi83;<*E.;\gX6P\02&ca[raG#[WJjOig+JT<0*jpXm":eh*>[i +P%]>`f8@-8>5Ln1`=F6;O23dgQ/2#[3iA)ZUJ*)7!i-$.jfRP +><&BF%;tD7NGQ;%V;#]49=JtuX],i1+kNo\B/oUQK/o\le)?U1TN[DQ)`U?sF9?5A(Q@?*+%nPsFDdqX +Q"dh+S"*T@V;(f&)il9A&sdEUpgj\T[\%UdkBC(#+YeF^S@K\j&k`^"ro7Nd/]gS_Qo7IVKQBYl%-&;5 +pr*#Z;mL]A0Y9_Ml<;;b^(c_n.HP/eUM>L+O^4CloPc#oqi/.H!3nJ(7[9H&=sI/+6L)?;!7\Oh,g6N6 +2TRj4PrE/hLAa7+1_7VU8$_-iMOH(V/rLgPYN%TK8[QX&C5"0QQ*t(6c"ZDkL6m!a;\16Lb)24Aa.Wso +D3OBJEV5#Z%31A;D4tcq^?4qM?(33!R&%Nkac]$PgJuPGS=&b_@f[+B2-FrFG+r5Q72>P'CQJ$XgpM<& +3_YRhP&AXQ(2>lN/5H41)&eFQj4H@q +CFa5>G)jk5[TXWW_GcWUG`(Zlll5.o33$00_+dTDig83i_=X>iV@+Z5BKD57m\;K[+k;,=B6Oej*kD^EVGXE2/"1C$e +kZ#OKa1&KflG9)#fD!o<".bT-'_Q=Vg@;`Dg;B6HAgQEWA#3?lL-E=S3t.n/Co(S/Th9Y)pZ$17?@$jD +r%D6fpr!"5IST4ds5d&V1?@;&s+XmEHOXk*VcON_AH._9nkR.G:IsWmG^5VTQp4?qV=-=$sGN] +7q9S?CVWPPpsUtBR?:e]bl+=\L._!*\+a\'#JVk>Cdu@80]OfRRo7]r6 +*4/*4&k+gu:2;NA'dope_GU,M@EXFH[nKaXNmo8(8a-;1M\OhkD,P9sjNWobSr*UaPpB=/92XQ!h&];E +-oYo-'/gdK;7/^HNL(LAQY%;!6sX&]WjQ97EHBCCWR21bW,q;UF?;jZdY9t>$jW:AVke=L_%rP%\jj10 +NT>1b5;1f\BY%0h$(YD8]SL8m>^!#c-\3pl+KA-$d:irOp7P%nHFrfH[%T=N6?@@8,VcrBD;si3&]g1n +8L8#HjueJ)duo\HB**&#*.mhs3dob)'/FIn-af/tW2100H*@kDs$>L8Ck(U&,c@BU0tfaG(_Wl-C;+@k +Kse-Cb#-'K)iO!saZ6uOPPuDb"3ng26n +/\!FP(5cNnZ%F=@*(u/HmS[;I_=a[4;QNU?:$nc_fP%'jd +0#c2s[,mP"D+h,TXX'_i;V\'Mf+)jpZ(=[!;i6E1?&Cf?Qr7bIH=]896*(Y+FnK/3oDuWIW+fSF5YVnQ +a-<&K:t7$O1/Y37OE]>lTN#$I<6HDA*-JcZ+`D#MRI[!hW +g'iXe#Y%cD]'uV-8ojW-q-W[;^Ik;Sbf(fj@_m>#dWY(AK!W@a7rVdZG\$Y%,o95bl/@c`r5@)>9s0RJ +k[JZ(a;E-:4@4tek)k;7,EAdteKQ3@-_3`,U0kXtko9OrJ1"^rj8cdMa/f;=2*3Ik\&d9[qADAj._+ +p6tYXd:`&6%9%P066i-p+9iT8UX^OhN#42!BY>]./tDK=ETc1+oR'J#ZSc2/qo)2kZD>Ead@ik">j?ShG2)mq +XrJ23L_dtI6^9G&E#?kD:F[?2ojoEY")E`sfB6HVMc+1fMqZpLJ%1MHm'pDjZ&k_#f/Q=?7Yr9pDC,PF +VJ9AO4\%FLCR*j^N?7.r-&6%VS^bM[#$oKpM9J&&YgH%rF4A<2>@iQ!h$ +Zj6.[hacaPUT$./hc6mTgCdoUAt/7`Mlgu`n1C"aj"+d=e!\,;*GeTERNr@#VGA*g3Rh1Nik)bN9sg7" +I?YsCVW0Vs29[6?,]9p!XrX +U8cor7*Fo.\g/2_oA`ZX=q@Y)5hGj0,?'Ne@7>%;[3RhPffkT`hrnjb[3cp*7'qO[Nfl3IBPR5eEajQ8 +#3Xt!j$m5F*"QBUig6/S!OjYrE40BUgrN`Gn$sSjanF=26eT(lVqUub1t;@S*M64Qp^VgqTui`QSiuXu +2eCnPeSnOlh;QDoY(niYhW1lmGPn'4"`qoY'B?Mt%%7E3Gb?I&V=Y!fbu\,BHM@\77,8IG7]cl,ak58< +/!bTnpuCbtEXTct;(k=LRkm(;D/:t2LZq!*A#4i[YCqHH:a& +`U$q?;BiT'G-X"*g7-OTlV6Vchj"+Heq=?3Y3ZBI^Flr&j#dGG'B^G.NVc]O66a\$#99[^ERV-t+gs$5 +=h4E]Z<-sLIOMkHA7^0Bh65D/SV"N.KU2BD]-$nGV-Esh2m`O65d`iUftMp]NVE:^aIIBSd8L3mp\Y87 +Y^QJuToZhX;'4>"DWnaE[-$#k6\D9tqdER(YHQYMI8m](+2(>:8%kq?Xj8H(*$El!HAd#Xla`.?L=7Jdi;V(,t^-EK("-iJudDDMu.i9R',M(f/%@mO#=]CRNA!\$6:u4(LC)<`4&I.p#r,4S/'ui%j.YT/s2ua-_cs^l&+\!*' +6Pn73,@,8S-5'2,JAiQVk6=nbZJtWoD4\CL()&@f09elp:m*&D(Np[f$A21:QUREH8Z19bZ"!*eQqAD+ +r":U@b.]WBDst_>qrofe7@'dgo29PW%;j"ThnXPr0el19I+!rNf3^5&,qV>D%6$bCTV.;m53Zh./)KCf +Jq+1?>8;'2]Zt7Q3T.s[%`F2^Ai76o*pN/=MdPtV0k:79^0pM-;YaT\%d=WRAb,946=Fl8UYpEO_0:gD +pa,1O()N]MnG49NZWqh(Fh6ZLq!prDJ[O+Va%QHbA)&EF`jF[$r5E6J]F["7ABWo\Mj4XUY1(d;Td33,jOt41Tc7E:NC]mAhO9-I3SK]ZG\!+u02lCQ +<\Ac7W3fd2QmaZ;WC9p%erIW$Mj8p!AEusQEuB/TBAEhohCn4s>OXMGX\!;;ko:rSsT27S@-2f[Vm7'Lj*]Kk=sm'QI!?89Y/5pagp0qUQ`j..udEWo(#is=Kb7HU&==Oh\%^G]`Lf56J`5p$I00m7:Ih\?d$ +DLR[J!Y9n)2KeM%OCp#W0LL=7:657^+ +EF*b)3nSE<,G0Hjl%pD=aRuqt*L/5lW_'MT5Yupp>&>e8WTmWEl-"*FiSDCT8H0kUp;sA$+5c:I_,MgK +b0tM4=W5>RK[A,d)j'qM@ +#(.jB`ei=g/+=oMJRqL?5<#>OBFr4&R]Hotk]$kIos))/%L;fUP$;/.?JN3-#4Bhk=ZjdC*OR'hGS_EKK(]ch1P:0e7PAAku&ItTMf$0 +4*%t,^e99nNgTdP4^?ib6p*r!odb7rY.#BRa1%oIq>Xi(43E"Vri_oY]8Su?l[5!Cj +]%"_*91hilA,Ji9WJrXudH*.]8gLI#e*0WHG,)Rs"qB0AQ37XhuPE-TG#U``@Y)V(' +j4_)u>\C3"_D["f[9@q:o8Y +i?Yg;p*-(Cf.1u7gLAg!VS"PSE.XR290JdpfB,uWO\1XTU?V&iG,X%U.*a9*d^*4aR?/?+CXB5ji* +e,9uAe=2=)A5WqJ5GH=YqGssJopdWeoa[;;1Mfs-lAiDH4cXJG;NJ9gP"RrsfuPet<\&DFbGF&H0<(X& +Q[5=`Le$_^S7FR1e3i/_gg',qVBI%\kLcUP7\E5;HLQ:.DBDaeiGiTm;U8s,8Ni%(Z.0`J[aYC*B&9LH +%gjr^i)_<'K;9R$J3n:UB:N^7n&`TWF2D_1etX>*U)\geOS/nn-)'7%c=inj,[Ic+o(eO$>*B#`jQT4O +=%59N\1Z!/KDDXUO.Q\%+8c4l4MS!-PD&8DVa"-#XU#l<+TmRTmF39rHG%r,7m7cGl=,_=Z +JSMQlAY%/6\?2et(GN;b'tBmcb!X'!Ml9JjL_`iIDQ'A2e?#qMPB@*Wnk7iJ/`C^?RUoW\kf*j[dHXH/oLRbZo#8[drfr6dLF[,q`l;FlTTpqB\i605LL6dNuPWPhf1=g +[Wfi[bSr4+f5$Ch^H9Ju)s-)J4>c;)\iD=a'u),c_HEA\do^>D;@,\1$egkIm,FMaP>A;*uCes ++!Z-6q_>SpOEEe1+i:>X33F[aI]lR$a1@>_:bR)upG!Tb[dK3#SIETN:H-pCh+,-%bI[^e^HuO# +o$$Nai@Qo2>pd>ECq>tnBU2iB6';5(nr1R&+NgmX`IkgNJ@7r/eJX+Y)@]<'agq5`?m)=X-`'G]Dt"Kp +N06TReah:iFfR;uI)X:rO`T@jnohUOGUhP9:_J`14Bc-N'KRGt!0u=?jZ5gGuDUa,Lh=6;YId'p]H!,CPqVr3Q]I6BG_ +_&0s8jM==nS^Ajf-`,3$#!*XX0nXS0CNUel_C5m1o?OkY(AY2dO8a+GX$r&mM^lGglDa +\AhG*Dou3s'tAf-Zmo%*:/@q-$8AiLl$bnOUEeKqUXKZqYIbbpY.\V;EuY^tlacn$iR`+#gQhIU$4K+>pu +0og&[$X`PH%ce!];VAd6`S't"C^]""n1rXhqX,)Hd'q`B!nVkK6>Glc.I!3PcHj/Q\l0Ja"!pYLG!ZnK +#:7b(+2_%q#:AgE*rJP=/\5UW\?Gh80f2"Im4&O?#UtdNej?A4c8$/Ak+kJd8r=BU\'(-n +-/&2F$;I@I(r.AZ0(^*;P`DJrm2"qF;lT@XlJ3PXWMhGLu=%Rq@O>nQ?XpE((*0%W^ML7_Kg*;mThWmbXlqLNBcGBQ;.$nT0j?oL!3*gXO_f9hKCht(Q +8'JT7OF# +6f<.rj5_'N7=HZr$V9j*!,?Li)Y-3r*;A7X[B$)r$WR#d=kO.7I[L?DW*f69n=cC.EAS"UljVSST(7RJ +LW>Xg:Ru"MAXDrDk7c&=KY*^/3O`hV?0H`bG27kG)h$=D@40_j;Zh6CS"nn"EVAI4Z']miNN<*H>(8$X +p3kPP,O'/plEWu`pSeh_]5A[1.JM)?%?$Isdm(2/g +1%qc^n62(F\d`LnaKY'CnR^Uim\5W\He46\qqcH3md6NW.W#BFUM=ll1-3@bGMP.0%`Nk]ZK\pjW=t&s +:Yj8[i[F6QcQ74=m^b^5[!1>kfB^_b]CKRDn%-=[H^/%N`k>tYgS&<*i[%abFdHffD:`'<1"gd,i8MCo +h*CMaF[+U[B:[M$2Lnri8@pQ10u5s0@_gf&4:i,aR!Wf7_*5>5sJA=@T1&-7"m9pid4) +Q$!7DLN,)^_`1p=%m2!\p(#<2bo5kUS-n%T2o^J]-R>!feaG(kOK/fEDE&fEEp(u^*>0lH?:=MBG[KQs +AB7,I)7GW/\T&^*+gJ?H,Wd8P:)6O'CK)/SgO`a7Rs%=R+*14hD_*0b7fOeYZ#\7"?k8*Z$URpd&6FV\ +'eRW/MQ`+D\S;Z:_.8)6%[rP2DsUU\)'HO&8GafSZ7CJu[/a?F6+[^$rJ_[gL0s55C9<=D2u7YNjn6fX +9!nXRC["@dicXoVC]1nDLFuH,rDba=_h6(lC)8S7Ba1TKm)W?g9#:)P'j(3^5NjB8'jZ?s?nrZ_XhBBh +Cr'X;?V,UN?ntkgVZi7bC)TV=$32HcYT?2pIJ#JHc1bIrc-h5-'tT2)f)clI`hL+5Qe<6M#0i@=).5=V5-H-]n#&&r/9Er.4Jd7Jo::4Ib:HmnSNjW#g&r"9H/Qk%Q?*JG;+gEdB6//q0C?]*q +Sd@Iqg_3m_XB[+T[.o>NDpKpt+gEdBd&t05RBQ'r.Fo=ac)"OC51:gsRU%t@'Pl5$A:[V`8W#No'Pm7@ +0I_bNgoeGA^hj>M"7h*?`As-UTHh\(B0t@5N^j[:#*S?F$\H;XG?&fWRfVI0>P[YOuQXUfj/$L,9Ig>]-R-i7K5iE(: +7rH%=X'M$h'Pm>'3Dp:S&+75^5[aok6f6W5f[')R@]e:ZF\8o>4L@l7fS+?;1!Kif@Mn9VdGF,rV&1W. +:[0(A9o:e=b[aT[DONYkT5gl(Ym2@LMW&]oh4l(1)DPKI"&c?9"PKHF\7tJ!/TVU:GEf_Bpa`!LO@"4@ +gemLYJq>CN_+PL1#Y:X4(%)@]lms4GaE1YH[gV_"B4IQZ4Y#gZ'-F3Tr*Q[`4$m/Y_BI\HOMY6Gg_!B/ +-eo=1BVDM> +TOnW*)]lBI'-k;;?*n5/Njr"NLu:-:KY3/-?Vb6h%"=%g1)\%:LuIEGGs'V#^H8WjYsg\/Lg8m5oLH_A +??'TLQd;6&$cYgfL9[1ZGbM0L6;'G6eMN"g@h12NHJdT:#9N +Hl3I?8\"1Y*gH/+m"H*6=:Z**$cQhQCem\.J1@Mhf:an]@9;:(+&) +H(Cqk?F,Y +[+**Xb>c;DPq6&n_F6i5lD:#F2X[e_-uWJDKAW(CRn63Q*`,nHo`qM/.FYt#CM&*lN( +,`9'W;K_-a?W+SG()pgY:.;$,[1FKW^u:Jj36.Q_F,k@ER?2]!\%5&\es=TOB/h7d;6h'38^argGjoiO +Hi=3n[^%?h+)m)b(`_'<[Q +/)H`9_9bUHFH$]O=e:/TQ(]c%VT17EBn_bMuBR;g7p.tU;I!=R,t;pgsS'B5,D&d-DJkmY)2q08eZK/ +YO6'Qf[aBl%bA4G#D2dca0aI/+cXUp\Y5+(H^u*EHC`Wt;1,dgN$">VG0>=uG]ZiQYE2lLn;LYaf!urr +DHl:YHu3_k)slckk8a@[2rkijleISn@-\dSUUo#:53K<)\P\nVpdReSc[D?'jk\^+R&UnAf"$ojmBsYT +Xe/e[L4#G+SMRY)3QG=d7WQb?I:]qeZd'"L;"Jf>eDEBAp;V8qeDO)fgd53lbm^pM.YP(ACEZ'NT7XF2N/aQE"o3rakfZM:T3\gPr=Vi8ME% +\WM8N5n_;qs]3qo:B;V +oMmuJk6#RgA1']NN;#nj\k^tOJ'LX_o++UM1P:(%N&DQ?Y9,sCjf'5=]=`Va&95YaM:&lk/,%f68b;rV +>08;f[?U:#Y6@l%a);hMNsj).K%2A\-jHXg]5@>.4jNQo^Hk@_,_d"jE_i>r:)U%A!X +rYegpECr`Cg$6VuieluuMr8;s'mA=@g-ClQSSpn.npHs'fDl,DE#HhiV8H6I#6Kool0W%Oki<1s.)jY, +PJhpk%*kcWZ't)&>&a>sLYR.+L1AQ)Kdb55W#=:8nGoA)-B..N:*nePH6@+RcSC2Bf +<2Tq$qjOiJk6In;]!L-Dq!m'DSZ6l]l-a'4!PZV45H)Kur.$8VM?k`K#)gKX:;/j[.;C)';mLY[1J5iF +Vo/3qAXon$F^Yi>>rl6_UNP5O:?:Z5g4m.(&Z2uUr7J]h+$O&DWtRKUfR6\knR\nn!r;rL^55J>dGb"9Vf-gf@lN:b*`URB=*O9=U)CdMbJ&_Cmo;Drk]cJm45?K3]%Vmc90HTK6)]nrq+<;" +_u5T?$_5-!`Xtkqd9FnZ,B.!Zl.cB9D)cW[GdUgAm(V`Mh/ej1;+@s3b,K6IXq/*b.&:s7B*\gSEq+pm +@L(01_Dec-nTU@;Rsn0??[es=K76Xl,Hemqm>/M9UT_?.^E],!#[1m]>X*>cQiUI`*cNa?",$e3pd&8m +(9_g$4eju!"eQ[0&MO?/$)7+X4/9rlFRI&];aJPF6?SAth*6Psk<8\\DX3['<]]"kkQpUaA$:K\[5]su +2luD%GH>^a3gV^[Xh6(bJm2;F3>hemG]UGcj6Pl)C38\ji8+46IjebC2O?3Iiq7(DGPt.fcoR%+.Z#H+ +;i2$,-oMc&DlE*"HDU4IJb(bYD`gXi:&`YFp@#Er?:3[9UfLJV^4u5hBtJIlYLIj%eIHdoVQ4P>!GeJh +!?5i'e@2!OT'rjORB(F,DV+<0[^J?_/sVK6Pc/@apB]6rkKKSf.-k0gX$Lt'Ti13>&p_M +;u3bU$@$f0M4b]g_,h&%@*7-7,]?Dj!Da/)gm--2DQs/G;E*c9-lV-Bl\DFTQK-td>V*Fr +:E4U@cf4AWi;D0+[8,Dm1j/^3_WX[>9VcBtCD2Q0(Jn8%k!I//%,CJ?p.cnYq)!fK#RMNF5ArMNc'CM\ +O?h\29k7YmJ[R@L/@dqKpUi!j@$RN;4K(@DMW^@n!(4-CE71cpfW)+&_MQ]8`#E9gan3hZZfglP_IanX +>$LMqM634bXaZY2R3Q61JSEgR1pHm=-.=>NNQ3lq?%!2O\gI76T(!?oP='Jh#Q#G*+h4t]ol>B]Z1p[U +]HY-b+g=A'*(A=jqoq+teioL0;R#C@X;H2rd#bpk. +fd,(rkP18&)fJi,0@HkLllVB[5e`o)5CU]-]@[t:mu/>V3J;,.`fagQR)KhFc-fX/0cC<5jq&mWdb"4( +,=M>>C8oZKDl&ea?+"/O8oc!&Ul^aQD)_7[g>1)5!r\AcFUR9MX!%-IRH>Fb+mVErYU..MdFg6i:QTsZ +\gR[*'N((Y`hu*1,@-Bo&-_\.(DQlf5$,05em>E\m9$I``>I'p.J)tf\%TOST\gIA_l)D4((6*F(Ars6 +]uRQ'fKs>n*+O;#2F(3=nAAXtV3a)dl(A8dndW%V,l_:ii'e3>CMD4+(eg=^W]49%3?2hDY3_",F#Ys2 +/7I+mA.2IT3Gr%j`2'h;9aOb+jGEqlj)g$r0NYce[Q.$X\2UU7`aINtl2ANFY1^!q +<9&i8[7,`R#">]'@rE8"p"9cJ1]Q=(-DB/:b[g9%'V+WK4fi"1&':@G'NVJ$Iq;Fdc` +`l9kkC6N?ahAEI4ncaHXYod@WDXs5;`]]RSh5D!8mYZ@K9*X&SiV^ROQ9o6RN.ClrH2YN53^6TCAQ]Q7 +6I`H;&Z3>,iEe]R$JA$'Lf%369%E]EkbWbuHCo +:pa_6FYa!Tl@9=c&G47%]FG^(NQiU?qqBrk5^;Mt$m^5K40KBm15_gO\7s;_CoH8/6e]YN@shR!?h39) +q.$HeB2<>.pqF)X7-V>3cF5.(?*!n4pT@OL+e/1r[lU[sJID(G%em)=l"dm(hkfq!_5X!NnY^5UB2?0i +cm!"-ql\F@5J,M7WhO[Eei&jff(L>tXD^26R@(=a7@C4KAkJ6:mY&$W4m9&B;!ZA(oRfB(GUu:Sm`+!Z +,k(6G;Uhbp?7Rf!AG1q&kYuPALgKQj3/YnV=E`k+9 +7qZ5ID=cE,D'&D'gH>*.qmLdCoR(Rs;0tD`%ue[h'h>V?W)(BpCrN]%qT3QCa)I6GlW^#u5;nSI=0d*6 +fo2)*A@'puc"$brS&`T^7$5`(\>@Vj*lDi[Z?ZjJMV:CEaHgt%r6R4*df]83[s8hB*h*Cj'opOK"?S]n +C-R<@!P$D7fbr$c])DNm6iS'9pR.'8_jS@7ad4+C-Ti\*4Bqu2)Vm"?BT_=Na#Ksal!QsqQ2)D+Xg$1Y +pAMlef_j4oD0Q[LR5^&5s:0D8"4E&$sNLs +I>Q-Q\-[n1_]*b6Fl-rS1Nj3nn(AmI4uX[&2/KIi%sKn@;J/+!nm),CQflS!CZY)=[n,_if5Y1d"FWiD +;=efoLKU\fX&`%'j.dB,$JtFR3#'D`)oW[NbqNp"rYVA5KkG-3.Sd\=Ki#;)dN=2b/UU'd3P'N%N,-o# +8:?=.m9[H\Mi+SNnT'h`7tu8%AFG'mN=KmZ.hs;^p6UZ0FNT;c[-_%*a"Ftm65PCgHZ/PQpJg5q3iLV( +-+7Jcn>R +3nn5H/8+&2:@oTQGo(h-jA)?Y$uMqVdn$m9)4*-6,6Fh"L*&T4M%Gp%js;ap;lB3GOUo+".JQ%Kij[jXAU[()ifDKq'ZR]$YO +P\+b#a%QG%4&e+4AiUo/,.H)$1r4d3CE)s4c#A]=bo]c,CYLBu>XH'f['DC/5l13p\fr=qAEUGqR]Mde_AIreI +Ek*7Z>'YS)>@bfdW\@0^E3u8kq;P-Z,:fRS=;h +Mt05.pr-HrLLUslA98"fTLD/t6I(@>W6]:"p).^HKJ]>Ak=tBN.d.YqOU[l5%sD]RPgO6pH,'QN,HoYC +o*pWYG%I5lIPMY[sZj_=0k\U7DU3+[iqcL>EtEp7>JT!mucDg&-)n-/V(M@PSgmfpG@ +\JL6;NB/]OX;ZM(hJNh6AsKPG%t*N$o"SWQY? +]lE"%`g7FW]6OKI7^!8Ch9EO`"b\o"B_Tk-I:fc5pQ51Ai3"JS]>(Q% +qC@%V^&u0OeisYAE;HAge4;g?eRB"/4QWrg#g`!gjW6Dh20W3G_MB36?Sf)!'#NWm$Ydp[)XUMBHjs&@ +\1d;=dOn0kr+b*@!oaTb/ONMabm9&d@\SKYaa*n.6J_feF1k8QEuYshqqq5h7t +lC3b<;lutkV9r_:k.+=f2Sg2)*r6TYWYdN%Q;hjdH">qRdk)J)=sWd>n+F7jFSo=4O,V`MkR +6\fRFM,T8O&t=K#9P2b_]oNDRlo@/8L:gtJ-(cRb/*;(^hC4]fQZGbsF=]ET%'^qGe!u#+fVWRCc?@DV3MX''6fPRD1)LV'>0r`Ah,^)HB`!?N +jD86a4@^@7`K=Hp%p>pG:"2$VS"rR'c"jX/D&K!J#6OkL2VRd]N#NjWqb%hBGI^RpiHMD'K6E0oP.SCq +7dkS"VmHkei$Q.&QKLt\]$YDA;qZEd[li*M93l7(NdVBd-J_bI.s;`kF!_[3%gXqc2/u`Ihk!?8@p%6s +H>(j/H9q0hf,^&p9]Zo'0?m"fX'C^(f-KCF>dCm9o%"W9$'sqD?B]ib`asc%PpaAL&sq,c?eXg,/Pn#UTZ7Tjgp%Njn3HI[DFW9Bs!#QB3_u+87t( +4gA^%h4i&+*D"n:Rc\7nQkbNg%@]$FLTkLRdD(7 +df=#.`-"_4T#?8P][HHc#Z/!V/8s-XHlUtDgZp:@6[FjVTN&j(&YcJNFDXm'D&20'D5=(d1n0U<.NX.\ +iuf-[f?C6Vgg%0r8t4=6cqQ]]B6nrG<);4F=mFQ]P%Y]N`UY6s)Y-adborMOr.BL;;%+4k?]$BtL3_13 +2/1(g9X3o3SrcYRp>kgoWm*GkL+HDOl^_VsM'k1US=&l^M:uaA9c;]`7X"q**A'6u\+epZrN[26^,i7m +ruc3VoBOQQp.cIL&R7ECIc=Ti7T!fsF,pCKA+MQ),-)m^\>=GJKDq"mIJVfg1NQ/iOVC#N;V\PO +#L?BL%"&!oX+-#Dj8J:23i;YT&(eat]PhE94^`sP/m(6EHs,)5il:psTm6l8aeC.0g2bA,KM=g5A+KEJjLC'\ET=7K3P1l3_oV*%R.$2\SnRS9?f951p +,=ZUoh=L$O:AjASQkVJcVlOn!c\#APh+ASM_<'b@>Cs&Gp4Fmq.ioaS=`9.F_0k&!oC3b&a)!^u +@MI4j7nmn*2NNC6W8T,;l)!&dfP@R7n`L;"o1j4IR0;Vqa6a$H]tTbo;>UXh0V;BDSD6k-/S?:37;sde_7sgTjr_oiS*.1_laoS?ArG;oh;2lsd%c)O +*iG>G=7%H9o8O]1j'\68E#)6LDSC`qVn!>Iq>sa_J<7n^P&X=,^&,WGI`D:`G"=9Qjs0Q/>+67t3-Oc, +DJsjcEB66XU8E":U*sAR.D=TpHY?.B!,FH.OutHJdM&h?CCXR=k@guX2]D)k+%6W[*]D_/70Mec=M+s6 +EiZ,[`@EjQ\R2Al>K(>tWG.D5X)rN&>Ci5HKU8_3d"pD;`&ioi5_!::?4Z=ufc3-8WXhZ=\_+-P9%9CA +=Yn7\VRJ_WaFi$ja.^8o_T-or*JJ`2cE<`/*[/QVaZ@>%J&T#(/+45A)ZNYu+*_X]TDkMN"g&Q+XFRBF +;c3-EhW[IIcbA\$?Vaa,9_bgT0##tZX5^h?`,"bj?\oZ?hbe?YK;L:c*n$eqPc*neQ(QO_?\^r\WJ%q['_1D61$O2$06!P!Y_@ +6M)FV\M]j.];"FGA-H=5VtJ@IBb=!\%&_8[r6)*"I(NW7Sh52hH\=ds8(PHtF9'HOI*EJe.k>OLhEju;f[fRB +?RNus/ft@ke:M[3Z7GD'D]$[=OZ$F44n-0aK=)!Q;L4.`/`I%&Z'$c_RU!LFWh*Z&*V'&fH1Oa#W4a@' +_/[oVi:G_&rY74W0l]^ZhT=rMcq_N2STI@e+7.`rIHl1nScO1(NM=qB&ZOhnU.$Rq2sdLt1fu9j)[r*M +@kkPA4VU$k#N9N@NZRS7n.?na_G@:YNt;nOc)ku3B_ZP4o"X1Ts!j/oN`V(UT*NgpFd;HR/O*^ZY,2,\ +B5=1SpY,P\V&+G"&L556ebrq"GLT=@b_SPN9aJ81U"'c[Fr3'YHbjm$t#274[C&sE74n( +bNi9DesFmOG.Ba0@:%JVf>QJhp0b?gb?O,^5P03[d_p%p&)^>Zd\O>Y$amKl9qmJ7;Nd*qa#@tS<8PRr +'@6.r0-4N=+jb28nuaic[%3().lM`0&>(Z>'=ql=P$(^'Oj_uL5XWZ=R&&t[=\1ri63):KP,>5Y#^4"'C$`+L=?Mb"4+$co)W9;OeCZ%AekhOPaV"-]8XFZE[8]L,W'u[g +0B#(7O!BPRlmY,NS:F:*d4nZ@PNo2oi7k&I:b-P!c=B&01sT*B&WXhj3"q_3n^9MmQ]*)qb8jd6GHHML +.D/)q&CB/n[?JGE8!FM_>[YN$2YQ7d7-&BRM[.hrXqdBlgatQXm<.4NnLT*fSpIqB#Hq-,l<@SGJe.^, +g_Ar(rkR-qd,nhtB?#P5VXk+q/:QXG`A:R]itqBIA@>P#K<,:sgBA/cP)jGJEqLLG2lkK9->S`X<7]p. +DkYdjm*nA(`P4fsR!=l(p[>>%`;siF(2`+HGMF`f0kl1h?='e^_.n*BWC9Ru#CZF%H-j`11[:OKNGV_: +5aCXcY0tdBr`;5CRsSRjN%[d&DL.0n9986F4lBchW^m"]F6kra5bM7YPYNiY7W#nBE*VPZbF1,J*m6H +I,/.rH[ebZEB$$YqORlJR6&bkddlgsC!+p#7(MF.m3NXUHBe0]BRg!Ld#5TPhKA_i.Gs#%HF39NfjA55 +jgQM5W#sn6L9*IKo^*t>J.er\F\",bXZsU:1?*U&XN6[(\;e)Nm0bkMlH@Ig&RK@AGMfQ'eF47$hda.I +]Kb=&=uQ@BfOk#eJ!_NEGZub61j]0eD$\I!\8$^$C.&?)RhU^J/OMAMUha;Lg4tjdUrJ+qUHWoO2uF;r +"J[J"nH%%`"1>F/1mt%+38NX:rGB#&8-AK*$D/B?rLYbA@uk%RXLpPkEBahQ`P/7unK5AiS5E9U,_E': +c:(sa#nAQm_HWka!m5;?eu*L49')$G01WqT#hnh8+'80OY:XON;6a=q4ZnT%F`9CB!*B[#4rg];Li8n+ +Ir8NUO3J_YS?$LCUF(qP=SUBF*rLOafNTEVIsb`?\j?g/6ROTp$TI&ofuC[f$;/.0"BS#>W)oohh/M:C2c"QTK^(D[1`Y!=c0C_0Zf]BQ;\_slIf?9YmW6no.gFMpdNT$H) +:6dHs?Od9k5NOA*^Xn@$Wc>MhOgk'moZ"VPSm&[o%T]W-a]`3hI*hWJVE"OiJ)KVocP'a*(E5se6o0Z= +BnPIm7N3B%X%'R!NK(RU)^ihP0,m]k^"d5_%:1ROOJF()e9'Bi.:2`3:sN/m_W/Z7A`87`Vd/"14gcKt +b4HHdj:jPShY&G59pW=9#OO[2Ze?Z4!rCQNi7gl0P1HYBLN$ac1FVL!SY\O\ +@U+i2U[D,4hM$]t?06D&V'Z/)6"@U`(3FK3CDA_>74mfT5IFSV"88X1F,:JA2tiSVXM:skqtnS9U=/r! +a2&0@N0c/`/AE&/\]gXe8^RH%p:?aPXr#:J97$ujb4QS*][j5e(9L$l +_/?H%ZTS+THdl4n_DlQGQCtPH-(`&D_e1[K6g?PD),+_iIKZ$hJ#O^2Kuh4P;l]VZOuQdNb9O2jd`Pc> +8`oD_3="kUCHE:%qg8]sFh5_L"f(NiiN*]9M]@"h%n:L(9C&RB]BN_2)O7Bm7_o=X5Al@JSAS9CVUI+Z +R]WBU_0eqWSG>b'MsELt$,"%bU4=0MPHt#[6qjBqBmT2/BYMIZV[ZND4:"4KOd]@b6Atrte?N+lX*0 +ftmBHBTE9'CisI:.Eao7.!`+#*^.eq700Mg3Ks^hm7JCA?>*L]l/+_aXkFb)6qjA>I4,?DgQhLO5?]2g +]rI?TB-/(>O5[BMIY+PkI\-Hj\=%JJ@uMRI>DNe`3RVW`93^k_-#XRX7]W.n7ktH\/R'9ETH+:YAGGb( +)bH>Y08qu53urL`T_/]/'UDL4F-uh:>"#2sAD0q*c1@TAG%JS's(`Dci_Qf-ch"p2.Vm:M4?h#=#-Y)I +RqFs!B557;:sqrFPG0&E.>cl(1c-+qMDrU`X78'jNKS+Q(GB6>o)LSau[\(P!HU1seNLnB[ +=E0%*F,T:Y1>!`2fT683r(sGEJr0E%3f^N`X:3,F:F;Cs,]*I3IL$mZGAgYSo7.!<^KSAE!-\n0HE +XGTk,$CYbG;c5En!nh-d#TD#D**ndU5'56Lo"\8cAFV"Pm'3G0)4_Tn)_r$:T'AWO;.R?t3"esS<8@TX +&hg0JX.&l@,h\o<>GJAb5Y()gDm]Ig2%+/_bj49]TN$[&@Mf+i+$6ehZ*/OZg*F#Rc)!BKd8+L'`@LC3 +_4"W)aer\#k,Gb@@Ym88,M8LIZl/]53TIj7sCHZag:mqTu]WB`MY_nCser-RtXDm/T\`kA:d__a$K:.'FO*-_:V\"//, +ik1>F#AM?`o,^0g[rSO@7o18@e@/dZ]^V9?UI:Nn;]lGaF-@jS6-a5<,Q)=m)\IIf/-_lefL<^T"C!%ia]Q +5Xp'Tq^:%%@1<.a[m-u1s5D`4!"=@;H2~> +endstream +endobj +7 0 obj + 26926 +endobj +8 0 obj + << + /Length 9 0 R + /Subtype /Image + /SMask 10 0 R + /Width 132 + /Height 82 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;!=]#/!5bE':MgUI'EA+5zzzzzzzcN\jN!!*~> +endstream +endobj +9 0 obj + 42 +endobj +10 0 obj + << + /Length 11 0 R + /Subtype /Image + /Width 132 + /Height 82 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"/gfoi(3'LbqIR06L-#u(YD6u`2=;#sN>Zi9uSl@NVJAk-reQ&mjkh":f:LU5u*K^Sg2"G&f\R?WEQ>]RSC?C^=/8,Atr\5<[G"U'"A!1PBe-81XsL>=Is!4@Tf]gjQCDf)%9$q +nRSY6Zh]TK2P!U_UZ"K*pH#Eg>nTeXJ^3:`)qc&N=J"KpeOI0O$n%LX>T)\DZF73TgH!P#i&K$-[^TIV +@iF[05+@M\hQpH#"d[(_OiS[Kbu^>SFZ`kHS*b*CF?SMGSPDIi5+aJ7i$&HBOmdYbEUVPGZ-oPfSh(To +!mNt3_3n2r2qEtjF7B+Vq%@#;;&$\h]Y9N`J`H&R]UXVHg%5fdD]AtPfiR/bFk)E<&@7&G,m.C$?C +L(>[4M9oNY'cKg65Z\Z;M]P^qMssD?b/?S'+*R-4K.<(9K;=t8mrh7.#L=B#oIg,rmf>I7#Nu..TEB<2 +&Vn."GOnULaQ?cab1_9r_8sQG.ea^6b_355mF"HY:Z-%2p4K3pXb1Z`26ph9cbY+\8-N];5=DmT]H\JoBSZNjT_48f?\aOLsad]fV[d2YR+U +Jp.3X2i->B,^mEP3==PF9-i)lC1!=PKX/8[.TaASk,i=K`K]D*1Y+m=nU"R66dp6G*X> +-g:\>&uBo\e`lcB2/]3:8L"Dc2!s-h.K*SN/_@%gP/&dtJRqeNIFn6rbf.hs/@Q8O<\CQ:Ue4n8nb63> +;h;ObnA$_?s.Q-6KB!:ibKr(gX!]]A-i[oO^8q4P]qbP=P4i7!54Zl$6QcpG"9O->+:ne]o%3@GR+#VD +~> +endstream +endobj +11 0 obj + 1136 +endobj +12 0 obj + << + /Length 13 0 R + /Subtype /Image + /SMask 14 0 R + /Width 32 + /Height 32 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;! +endstream +endobj +13 0 obj + 34 +endobj +14 0 obj + << + /Length 15 0 R + /Subtype /Image + /Width 32 + /Height 32 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0C]*a'2'ECtYm%Hdt=G)fiN_UcmJjU[Qs8UPoYC"XS=Uu\3^C3Z&P`85_N%[La9i#e2q?5/D/sW]e +"8M'(p^e*hSup.i.i/3#cn=Im!mMfNQ21LZ^\ntMF[jC~> +endstream +endobj +15 0 obj + 127 +endobj +16 0 obj + << + /Length 17 0 R + /Subtype /Image + /SMask 18 0 R + /Width 32 + /Height 32 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;! +endstream +endobj +17 0 obj + 34 +endobj +18 0 obj + << + /Length 19 0 R + /Subtype /Image + /Width 32 + /Height 32 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gar8O(^1!J(^U0X!e?a?&17J-#QQX^^l\Wd+99&E_12Re;/h[!~> +endstream +endobj +19 0 obj + 52 +endobj +20 0 obj + << + /Length 21 0 R + /Subtype /Image + /SMask 22 0 R + /Width 32 + /Height 32 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;! +endstream +endobj +21 0 obj + 34 +endobj +22 0 obj + << + /Length 23 0 R + /Subtype /Image + /Width 32 + /Height 32 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gar8O(^1!J(f:9d]f:)%tl,iIeP@%ni#.Siic!<,/SVZ~> +endstream +endobj +23 0 obj + 135 +endobj +24 0 obj + << + /Length 25 0 R + /Subtype /Image + /SMask 26 0 R + /Width 32 + /Height 32 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;! +endstream +endobj +25 0 obj + 34 +endobj +26 0 obj + << + /Length 27 0 R + /Subtype /Image + /Width 32 + /Height 32 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gar8O5Q]/7@VTM8*o9G<@8q\TIT1dKao_XV@Zc3~> +endstream +endobj +27 0 obj + 41 +endobj +28 0 obj + << + /Length 29 0 R + /Subtype /Image + /SMask 30 0 R + /Width 32 + /Height 32 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;! +endstream +endobj +29 0 obj + 34 +endobj +30 0 obj + << + /Length 31 0 R + /Subtype /Image + /Width 32 + /Height 32 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"C!7K>)c#87ga:*p/ji&rPS.R,CICuk[#.%,V~> +endstream +endobj +31 0 obj + 41 +endobj +32 0 obj + << + /Length 33 0 R + /Subtype /Image + /SMask 34 0 R + /Width 32 + /Height 32 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;! +endstream +endobj +33 0 obj + 34 +endobj +34 0 obj + << + /Length 35 0 R + /Subtype /Image + /Width 32 + /Height 32 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gar8O5Q]/7@VTM8*o9G<@8ri4ntlob?:Y&j?<"nrf#8X9TZV<_/*NGV3ZnG;Gp[]`.90Xu'-r)PccF6T +,UKXqM?Hc;RFo%EKg\=k!!AYk(3U0_/gS6JJ?FK\)&]*jNro.Z!9S,jUA~> +endstream +endobj +35 0 obj + 140 +endobj +36 0 obj + << + /Length 37 0 R + /Subtype /Image + /SMask 38 0 R + /Width 32 + /Height 32 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;! +endstream +endobj +37 0 obj + 34 +endobj +38 0 obj + << + /Length 39 0 R + /Subtype /Image + /Width 32 + /Height 32 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"C!*X)WP]EeL]!l0?e0HgEq#lmg(J;XD8-3+lP_12ReDn)5:~> +endstream +endobj +39 0 obj + 52 +endobj +40 0 obj + << + /Length 41 0 R + /Subtype /Image + /SMask 42 0 R + /Width 32 + /Height 32 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;! +endstream +endobj +41 0 obj + 34 +endobj +42 0 obj + << + /Length 43 0 R + /Subtype /Image + /Width 32 + /Height 32 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"C!7K>)c#87ga:*p/ji&rPc;gC#Ai9=ilN%XRZ"PfMa%$cKCjW0G5]oAG?S0/&o]Ep>Ie5;@h@q.om +=%*0?9(J-sS1H)ZU<#SfLl[H/`HVS>AAH='`kmD'SUhX^0VQUKJq4++dI9oF~> +endstream +endobj +43 0 obj + 143 +endobj +44 0 obj + << + /Length 45 0 R + /Subtype /Image + /SMask 46 0 R + /Width 171 + /Height 97 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;!=]#/!5bE':MgUI'EA+5zzzzzzzzzzz^psK_@/p<~> +endstream +endobj +45 0 obj + 47 +endobj +46 0 obj + << + /Length 47 0 R + /Subtype /Image + /Width 171 + /Height 97 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0TBoeuZ!64P0!fPAa%bcF!%("A2-2B1OQH*CIh(0gDd*/dGMCAW +0q43R?:Sm6M]A:CMp5dPOtAPU=*69&D>&]uSM0^0l8Ys4H(GQ;4P+]ra15ODbNW^,\#]=He8$ol4AFlZ +>-g1?1tnt[0Mk&*+Pr/IFW;\/m.h.L/N`+):IkDE>&oGF:\&Tkgb7FU!Wn#%V\] +3SN0FGG,=$F:M6;-Ql9m">arVbk]o6)i!Mjig?c1LEaeG*/Ee"TbbThtt^5Mf1AG+XF+4:Urf +q$#[krSD`5;1CmFq\K60s.+K9mjb%q5;bgto$i&ErrgW/->0Ll/-eMPu>gW/->0 +IjC9oa*T2FM]0.'XpECQ3)`m;kMY*]J`&RCYkMXiK6>/!_<>oPG-J`(_tot]$3sXRdB=9=3)X]9bV]Xs +_tiSKC[8Ien0XLi;;aMP@l]bW'%V2EI&p:EltNMQFh,*J']@"?i9b16k;"0;_SGmcqdaMbXo;kFfpenGI<@[0%q9Rb?hc_P+:NjD\SsSN[L5fH2i810!5OJS9X,pe#%N(dhX6AuFhV,IA/!t4 +C$?JQ[P-g-AKH#aj_UZ7Pt$V,TM"6g+GZ-a^/Pc2DGM9Kou1sbfqq+U_ZV81S)%to=g+-4D)1I%>>i-c +0GN$uap0h_&S-G-9%A5dC3 +endstream +endobj +47 0 obj + 1241 +endobj +48 0 obj + << + /Length 49 0 R + /Subtype /Image + /SMask 50 0 R + /Width 52 + /Height 52 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gaua@LK@\][`7o_]nmEWR;k!BC[=$(m)4`r>]>NM?p!;bKjH&N5kL*#+Gp0H6,!$L:o?o.;;ZS?D+02t +airhZ\SEiMEHU\4^[pi@p=\Wu_$>JC`R&LhWjbW#gOJ$0s3lm9%WZBZ0jCSK]2c&hB[gmIE7]?1'WS#>Lm(bNbI3Fke#jdqhf?,#ce.Ua%X'&!'mqLFk#mA$F8jjI#tn3U6f@c1:[ReRH"2\Pp10 +TCJ4f]fhfq+:VH))[oqupH"9!>+6iE_o%dZO"oFe$T#3LH<$b7]ih)d/f4P!S7U.9;@O4,1td2[EXNH_ +/!@'5F$n'%rkr-p/Z'tHbgg4Vm'(:tHlIJ%7^m*F`OK'M+WG>#M4n1X<,^\&?:EZ!Cbmp&jo9n!%+R7- +;QSSE)YDqSYU?cIVomO;)="CUF]Y'7a_Y=X3/l_[FIVs7/XBtC_mE!WWnLkGeqS&-U\6D>?7uaenU6ss +,m`?Q?`9*@n-JPr]O1L'i0C7u9Y0kQq9rpGUD._)R-S@ZmKc7o09^U\<^Go9QomI3=75I`Xtug>CNWhe +4Biq=Rp3/DY?1lW.X,jO[SeWIbMkLtegt1,Qct^gHg-,nZtDd<9_hb%%1,L*DI0Nq>]8!g:ojDgf2=+/ +1s4t6\qQS%C[G>A'R?`:)\q)/Em;&>[0Frd7^O'mQ/44ab^kkt(Xfm]q\3A&As"O7Dii1C$N+NSMW7[X +ku%[ZYsGtr:P+^X//1U;3_e5k[.d`5LC-J*$:G10RVDAFgpu&iFB4?).OJtCiZR;sf1-7`BN2dl,4q/47.+_!BB!Yn\<, +hgsb99\Ikj/ROda5>(+$Gd'tbKuNTlN2>m%@ZQJQ@oVu,MKjUd+/&kZC^`5j=iEKeO<:JJGjO`8j"LH-S%!RlYAgPp**7ke)3+OI8.?U2eD91!A6ZE=@f5UD+$s"Tmq: +@AYD?qm"?7=e:.klnkF#2!5>c?s.pS:NQ:mn=C'o0JQ;.Nl4T%(:Z_@^"^:*&"h'T#lSo!S*R1O8.#725'Dr/s&'02ZTa*a=bSj4cW4Rn8jds#aYAWV!Plo*TCO +Y6(eMgtj;qN>q%.9a`3icakC+/[LCuAo5&/2uB=BQeJ/39mb`n0,+P'ZF(K"'E5XF/I*"!$'X`GRi2B/ +[f2b(pZf,I'KJBakDPTt%(Um1/<[)HYq>>eGIu?dXIC0Vc]8q[-B&=2k/D&X;Pt\dTarBBP$?F3>1G(h +)LR+t&"1mKqH#h+qPZ9HchOSI>JOUC8L#[TL85UXSp,U?XoWLU6GArV<[5G(YYZ7qrarjTJ@e'JXQL$s +6,cauqc*OqF^S$-#==H"IakS%8?CqfmMr0OPWmfgN@Am4Au]4EoSn57IE_Pn7pe/_L].gRsa23*((UiG-OMjr*LQVheKWM'\.&=Q68]%RQe:OLoIA@ +EE2U8FTP?kd+]i:1*sXO,QKmer\E/!17X'*Y?Bk'Onr:YI\tVe +3P"XP_fE"K[_mQ1dTibLi61FMbMuVDda?T["o6XC1?mW_g"4]hO/&+X:HJ4NbFQNYh.Y/@X4,"n!VKp0 +qAJ#il0nkoJ\9=^Y2i>VC:>p]D5E9G9;YsQBii94]8B*Dej^hKKg*YX,BIJmB!_#4WH>W*BiO-a)i"!s +1)YLLQ9O9??E;#8UP6S6V=H1oC-m[h&Uq)XSAbm8bjf&@f3YUWa$T31M=fO0jnDcTgFXc9I&FrN`="gH +$N)\UFLt-EF0?m*aHjZN(67$]j3HZ+g!XRNA&\s(/%D0#SgSs%RPDL'X\jS:0&CHS)q8LnV.YZ3B`jZa +8[-I:FIBk9MJbB=OupqGe`uCVc#XWbgIsc[Gh?S_q]O2'C'D`Q6"qBQh/8N!MOG +/5,=`-$:,uFr=Z[>Ot@UKqhDcpag8k[Wopu,thn+07(n-e'"*DoI$Tsh0+Z.H-p7rm4hJXS?RTBB1e6\ +"ASTsgQL'#Iai7-RpLP!kYLVhT[W?[eX(%#E8n?FVo,?7_jOEu2s!F=53M\qOI,#!$&uMXc$FbDW`FV< +/,1BJpB=Qeg1/5C[c_TL\K#8]k\T51/7iY+BO\D8\8n9rj=.>0L6d;#_*J?Uh(^/^o/dGS:l`fAg'(8H;S#h4lH%.10qb#sc[OmJU +b8@U]0;QAdnHJ^d8t?.mq2:tSGZEhDZ;Ns"A;3E>oYJV9Q[Z#]\1UCQ*Cl`m7iXB:*]F$,NfL9`:0/\mI1 +8?G/M\AOQ`Bh@Zs53fF#Z0Y%5a3t&jlECdr"Pp;c"@+juPW7U7e7^!a3/7jZ-jG\J8Zjq?$Ug,1M#;PaN;L]7u;X95?;Yf +__YjR$pU`Gp/D!-b.oS!H.l@CPs,#74o;&,JVo&d6UeUghTq&b=ROWYdBT_LG4T"VlcNJKo3^$eD:U`H%u#rEP?]9j*tVlZ3#d*!,Q%eS0aNc@r]>)9O/V +7Ui!ZbUn2%K'i.r0tKV?#kEWq*@ci'WQ!@Q%qlR3pl#[C5`PgR^7\'$f5!,28Zb73_;_"EQmMsgja'(c +3*7;L`gOHnj,+$s5CUl2T?TGq,_N+P$Afc=p/[PEG<5)`^"I/?NcK'.:GMCe"Zh5:kRj>!PDd`kgn5t\ +E1rYhe/,/cnOT#';Oo2$+\eO^S2B.iqLTF"rjTcO4M6.KgYNA<=64283Hg>\bST7"#fu$pdcVir7>d)r +8o^"7?I]_\e'!@qEg8,pXR4!:M`gkQ8&5iZ!b,$W+8<b+"+S\MLZpadEUN(F_c%[')k)WA*"@rPZ +0%:QGmEH@3Ah-pqM=F-!S.+GFJ0=bH8+\)pN=>WEjc1ZW#mj2!8ik?KAkhR3*!"t-pV3NIci>X0)fT.N +'^TG4D$SV*/4,F?>&8KD[G>6OKa$cLdi,tTm<_L908"V[8rFDUGeeBb.`J?KWsMO1b"1H`=-H8WIb0BQ +TE/4?FA_E-m!=R)<1%YNec$s3H$"\dTu$3&@DRXW4,sA56IO%)99`P_dV"/e.?]>%Hm&P(p3j&,K,Zp> +!##QWK_OHh:QPk,DRDQ^Kna;)OSb&=nHV["n=K7OZKQUYZbs$M0BQiYn.8%bEcNUW-?PtMq'co;6qi&4 +W^8$uP:[jHP8n!dEH\U0Zd&LD*$Or: +6BtF0)\=:OE;t$6-:\omEdtBZ=BTel]sSa;m.ZQ908lURdGu6nIYTLekGn0q3A2bHNt;[U+&D:I''tNO +F4c%KdGk6Lpn&&B*QZu\i"g7pW'J!bB_!O20$3_DI*pZ'kqheK_]JMK^DHkN#$nc.Sl[%'?Z!5<7\lSn +C(,H<>Gtm\I>U"KIfI7B4._Gkd:=2g'teJ+U`D*h4s+-"qpa!sjFM-`.ZqP.SGTVqmsf:P)QuuC:*/Qt +8MFDJ3Q\N+nj0JV&'+[1>S6*"q4Edsn_+MU[Qao,hW>qR9u`f+/H-i'%tfIdY.$KsToPE"`9A7AHFcEN +I8JhF%U/Z9D>*#.$I7^Gg%kMmhW(Gj4#1mlE1L]":3* +2qH-dp-K5[[g`8-FDcJt6%HeX4!G?c^*e?kDeV#>bF\a+CN%qNLF?3PB/4'cc\CU(p3NC[s1DS-s4=H[ +kl2+8rjr,ds"@6T2Y@~> +endstream +endobj +49 0 obj + 5528 +endobj +50 0 obj + << + /Length 51 0 R + /Subtype /Image + /Width 52 + /Height 52 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gat&M].ZNK*!bshF>+O?*=Ua@6jt7D&OV>.-6?SM8f06!%/g9s(aK`V=@e)N+s)A,)?`WeeuK2^+V@[9 +PDY[,*kclKcKTK;p2TOa^[HKo-g,K!kF>2$:9$VqH;3(V?f$#e5@cFT#kfokYD2!hT=t>=NZ#(40-Djp +@[B5RYCG6L`HsX:KZ7O$c>:BU"l\bp.q+9f^0fSLa;V^];E_m;,#M.iNW`bV_*G6;HXS^aX@(m)0`d)i +_OuY5_m3fB!9>/(r,;"q?HieGT"L=6'lYNe!8aYK200jKKWW@mRTlO]:'o`XN@[]S5\c:8'7^/'\1qSa +0c?6mPab&AQ!ak_"#iA&1WmrHcM4mUS+kB$@LKL##XBOd2IrfnBu-6=19ucpT)"'rX?#e`(Y4OIL`L9t +KG7ih-2XP@[tcl+(TA3`,.r)FEFt[ZjcD'sp3X((WS;cE.o45j]DH*!HkB2S7` +TUJL*&L5>(9g0!%n@8h8$n%rB8.@*U>`A575M+$$6@[@@r!^J"d:SI-7ZC!hY?YrEYq3lSL:\7J9,iS_ +mRideh_+a/f@:al`A)Y7K4FSi,?,G=j2MB$a$RYef3SF&g^;g"q6s)+fU4?E,' +IK<>1W!*~> +endstream +endobj +51 0 obj + 658 +endobj +52 0 obj + << + /Length 53 0 R + /Subtype /Image + /SMask 54 0 R + /Width 81 + /Height 95 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;0`_7S!5bE%:MgL^TE"rlzzzz!!!#/)-STl!<~> +endstream +endobj +53 0 obj + 43 +endobj +54 0 obj + << + /Length 55 0 R + /Subtype /Image + /Width 81 + /Height 95 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0SCK%5u(r1-8\L]2&dOC&]nt]phQ8V=k$:.emrZCAi2CCWp4M+O1CB&4?q8nZ$bjJL]U)t(9(e_hV +N"Oj/AG'c3: +c3g';O1ghg&hu,3mUWj8=1O$!_9sG'#)S_sh8*nBdj-l@?!G'-_aI0:hJaOa%F&aR7A8`<*@?Ja89Z7k +e6m6Z6n])`%T8Z""*\2_&QqA\a93giOU6\sE:E7_//K2?Efh(f'q)i?+L6OuOV',\=i!uJpb$KogQ2AG +?^1R,q*:B5;t,CLg7KN;WK\cJ2kmRloKZqV_Jq.FiM.cX8RN0fL-_q]4:g*c;Q4 +M&$Np(B'oB7!D +endstream +endobj +55 0 obj + 637 +endobj +56 0 obj + << + /Length 57 0 R + /Subtype /Image + /SMask 58 0 R + /Width 81 + /Height 95 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;0`_7S!5bE%:MgL^TE"rlzzzz!!!#/)-STl!<~> +endstream +endobj +57 0 obj + 43 +endobj +58 0 obj + << + /Length 59 0 R + /Subtype /Image + /Width 81 + /Height 95 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0SCK%5u(r1-8\L]2&dOC&]nt]phQ8V=k$:.emrZCAi2CCWp4M+O1CB&4?q8nZ$bjJL]U)t(9(e_hV +N"Oj/AG'c3: +c3g';O1ghg&hu,3mUWj8=1O$!_9sG'#)S_sh8*nBdj-l@?!G'-_aI0:hJaOa%F&aR7A8`<*@?Ja89Z7k +e6m6Z6n])`%T8Z""*\2_&QqA\a93giOU6\sE:E7_//K2?Efh(f'q)i?+L6OuOV',\=i!uJpb$KogQ2AG +?^1R,q*:B5;t,CLg7KN;WK\cJ2kmRloKZqV_Jq.FiM.cX8RN0fL-_q]4:g*c;Q4 +M&$Np(B'oB7!D +endstream +endobj +59 0 obj + 637 +endobj +60 0 obj + << + /Length 61 0 R + /Subtype /Image + /SMask 62 0 R + /Width 81 + /Height 82 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;0`_7S!5bE%:Mg>TTE"rlzzzzp^KsK!!*~> +endstream +endobj +61 0 obj + 39 +endobj +62 0 obj + << + /Length 63 0 R + /Subtype /Image + /Width 81 + /Height 82 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"/f=c]"J!(KIiQd(LY"@h\eg2R-*7[-oDrr<#I$YWb7[PL\4UeNgE?;+*HiT5Ft%g<.:0Vt"S8gP]D +A:NC48ehm?__?Zb.#MIOi"nA*V\#*XhkNnN&<*8!:(UEgUaV[?=LOO3Z4'*!'M2=3!ln+?L(`fjD&!=B +EIt!R>.rVKGX3%u;Fd%<$sE!hD,D!lY19W*(lBSX'EQWh3(mfg_5\2RDt.:,H0k2/_pN]aeT?3tc^,(rI+&93=drK;mk/O^8[d?'#!69*GmFJR$VJ3,u:NLA.lp&X% +X%)&=jgD?%@8oTnqIBJ!9]$%/*SL.I#OgSn@eeG2OCbDb1##1*Qoi_I$tq]lNIkS!QUPa"73fB"eKM5oc?mPjdQVj +c0ig0LGi( +@-]S#jFp]1rVRXb9R%&e/6DP2XFSE]s]Rb5kC*3?]f+L8pZE%lttQR?8@=A7$f*T^-o%f]1?j,^*7SgB-!*d3ObO6C01*1OoZcT[Dh`*RL+J%N#7t:.G@1 +!,MY]JPV#mO:"Zfd8eLH,W +endstream +endobj +63 0 obj + 1069 +endobj +64 0 obj + << + /Length 65 0 R + /Subtype /Image + /SMask 66 0 R + /Width 87 + /Height 82 + /ColorSpace /DeviceRGB + /BitsPerComponent 8 + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"0;! +endstream +endobj +65 0 obj + 40 +endobj +66 0 obj + << + /Length 67 0 R + /Subtype /Image + /Width 87 + /Height 82 + /BitsPerComponent 8 + /ColorSpace /DeviceGray + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb"/f=c]:Z!(P_+`9j;Ie#T,c<^6>0b;%s_kO%7>BY?o>GR2laLN'sI_W.tNngdA@WA`;(g95:AkSNThqI(@+ +YMDsC&%$Gh\+G^UR_Wluf4!iR#D;4!c#(r`?D(&-IjQNGbY +[m^WqY_#fHKSDOo2P(G[/l&u^d(NN:+qO0ci1N"Llcj/!^``%OPE +#_UO\fZ&=^_m5i8lZkRR\0LWCOZ%H$2\\jABbL<9o&K7*;Cl/hbH_2h6`8])_t>_5FYFn,s"&pH +S.:N^<@S<#Nm?Tsp/0i,`#1OW82tb_Kq],s*>rZ60QnSjSHFXB+j[JO71u4&SbkRf)$PfKI@8mkUPtnG +q^Td<@?nO@mE6]-6P;#n)tsO39jtmd]]VN$;GpCj;GpCj;Z8HN!9mBm,6~> +endstream +endobj +67 0 obj + 1112 +endobj +68 0 obj + << + /Type /Pattern + /PatternType 2 + /Matrix [1.0000 0.0000 0.0000 -1.0000 -5.0000 270.00] + /Shading + << + /ShadingType 2 + /ColorSpace /DeviceRGB + /Coords [523.84 76.876 537.02 106.86] + /Domain [0.0000 1.0000] + /Function 69 0 R + /Extend [true true] + >> + >> +endobj +69 0 obj + << + /FunctionType 2 + /Domain [0.0000 1.0000] + /Range [0.0000 1.0000 0.0000 1.0000 0.0000 1.0000] + /C0 [1.0000 1.0000 1.0000] + /C1 [1.0000 1.0000 1.0000] + /N 1 + >> +endobj +70 0 obj + << + /Type /Pattern + /PatternType 2 + /Matrix [1.0000 0.0000 0.0000 -1.0000 -5.0000 270.00] + /Shading + << + /ShadingType 2 + /ColorSpace /DeviceRGB + /Coords [304.00 76.876 317.18 106.86] + /Domain [0.0000 1.0000] + /Function 71 0 R + /Extend [true true] + >> + >> +endobj +71 0 obj + << + /FunctionType 2 + /Domain [0.0000 1.0000] + /Range [0.0000 1.0000 0.0000 1.0000 0.0000 1.0000] + /C0 [1.0000 1.0000 1.0000] + /C1 [1.0000 1.0000 1.0000] + /N 1 + >> +endobj +72 0 obj + << + /FunctionType 2 + /Domain [0.0000 1.0000] + /Range [0.0000 1.0000 0.0000 1.0000 0.0000 1.0000] + /C0 [.80000 1.0000 1.0000] + /C1 [.60000 .80000 1.0000] + /N 1 + >> +endobj +73 0 obj + << + /Type /Pattern + /PatternType 2 + /Matrix [1.0000 0.0000 0.0000 -1.0000 -5.0000 270.00] + /Shading + << + /ShadingType 2 + /ColorSpace /DeviceRGB + /Coords [9.9579 -37.028 189.96 82.972] + /Domain [0.0000 1.0000] + /Function + << + /FunctionType 3 + /Domain [0.0000 1.0000] + /Range [0.0000 1.0000 0.0000 1.0000 0.0000 1.0000] + /Bounds [.33333 .66667] + /Encode [1.0000 0.0000 0.0000 1.0000 1.0000 0.0000] + /Functions [72 0 R 72 0 R 72 0 R] + >> + >> + >> +endobj +74 0 obj + << + /Type /Pattern + /PatternType 2 + /Matrix [1.0000 0.0000 0.0000 -1.0000 -5.0000 270.00] + /Shading + << + /ShadingType 2 + /ColorSpace /DeviceRGB + /Coords [19.110 -133.15 199.11 31.851] + /Domain [0.0000 1.0000] + /Function + << + /FunctionType 3 + /Domain [0.0000 1.0000] + /Range [0.0000 1.0000 0.0000 1.0000 0.0000 1.0000] + /Bounds [.33333 .66667] + /Encode [1.0000 0.0000 0.0000 1.0000 1.0000 0.0000] + /Functions [72 0 R 72 0 R 72 0 R] + >> + >> + >> +endobj +75 0 obj + << + /FunctionType 2 + /Domain [0.0000 1.0000] + /Range [0.0000 1.0000 0.0000 1.0000 0.0000 1.0000] + /C0 [1.0000 1.0000 .60000] + /C1 [.93725 .93725 .93725] + /N 1 + >> +endobj +76 0 obj + << + /Type /Pattern + /PatternType 2 + /Matrix [1.0000 0.0000 0.0000 -1.0000 -5.0000 270.00] + /Shading + << + /ShadingType 2 + /ColorSpace /DeviceRGB + /Coords [9.9424 74.962 189.94 194.96] + /Domain [0.0000 1.0000] + /Function + << + /FunctionType 3 + /Domain [0.0000 1.0000] + /Range [0.0000 1.0000 0.0000 1.0000 0.0000 1.0000] + /Bounds [.33333 .66667] + /Encode [1.0000 0.0000 0.0000 1.0000 1.0000 0.0000] + /Functions [75 0 R 75 0 R 75 0 R] + >> + >> + >> +endobj +77 0 obj + << + /Type /Pattern + /PatternType 2 + /Matrix [1.0000 0.0000 0.0000 -1.0000 -5.0000 270.00] + /Shading + << + /ShadingType 2 + /ColorSpace /DeviceRGB + /Coords [9.8763 138.92 189.88 258.92] + /Domain [0.0000 1.0000] + /Function + << + /FunctionType 3 + /Domain [0.0000 1.0000] + /Range [0.0000 1.0000 0.0000 1.0000 0.0000 1.0000] + /Bounds [.33333 .66667] + /Encode [1.0000 0.0000 0.0000 1.0000 1.0000 0.0000] + /Functions [75 0 R 75 0 R 75 0 R] + >> + >> + >> +endobj +3 0 obj + << + /Parent null + /Type /Pages + /MediaBox [0.0000 0.0000 791.00 318.00] + /Resources 78 0 R + /Kids [5 0 R] + /Count 1 + >> +endobj +79 0 obj + [/PDF /Text /ImageC] +endobj +80 0 obj + << + /Img0 8 0 R + /Img0Mask 10 0 R + /Img1 12 0 R + /Img1Mask 14 0 R + /Img2 16 0 R + /Img2Mask 18 0 R + /Img3 20 0 R + /Img3Mask 22 0 R + /Img4 24 0 R + /Img4Mask 26 0 R + /Img5 28 0 R + /Img5Mask 30 0 R + /Img6 32 0 R + /Img6Mask 34 0 R + /Img7 36 0 R + /Img7Mask 38 0 R + /Img8 40 0 R + /Img8Mask 42 0 R + /Img9 44 0 R + /Img9Mask 46 0 R + /Img10 48 0 R + /Img10Mask 50 0 R + /Img11 52 0 R + /Img11Mask 54 0 R + /Img12 56 0 R + /Img12Mask 58 0 R + /Img13 60 0 R + /Img13Mask 62 0 R + /Img14 64 0 R + /Img14Mask 66 0 R + >> +endobj +81 0 obj + << + /Paint8 68 0 R + /Paint9 70 0 R + /CyclePattern1 73 0 R + /CyclePattern2 74 0 R + /CyclePattern3 76 0 R + /CyclePattern4 77 0 R + >> +endobj +82 0 obj + << + /S /Transparency + /CS /DeviceRGB + /I true + /K false + >> +endobj +83 0 obj + << + /ShadingType 2 + /ColorSpace /DeviceGray + /Coords [523.84 76.876 537.02 106.86] + /Function + << + /FunctionType 2 + /Domain [0.0000 1.0000] + /C0 [.86275] + /C1 [.12549] + /N 1 + >> + /Extend [true true] + >> +endobj +84 0 obj + << + /Length 85 0 R + /Type /XObject + /Subtype /Form + /BBox [524 77 596 113] + /Group 82 0 R + /Resources + << + /Shading + << + /AlphaPattern1Shading 83 0 R + >> + >> + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb!6,bULV($qMou8M/(@%*hC;aimCZ.*g`P!-Us?kP~> +endstream +endobj +85 0 obj + 44 +endobj +86 0 obj + << + /ShadingType 2 + /ColorSpace /DeviceGray + /Coords [304.00 76.876 317.18 106.86] + /Function + << + /FunctionType 2 + /Domain [0.0000 1.0000] + /C0 [.86275] + /C1 [.12549] + /N 1 + >> + /Extend [true true] + >> +endobj +87 0 obj + << + /Length 88 0 R + /Type /XObject + /Subtype /Form + /BBox [304 77 377 113] + /Group 82 0 R + /Resources + << + /Shading + << + /AlphaPattern2Shading 86 0 R + >> + >> + /Filter [/ASCII85Decode /FlateDecode] + >> +stream +Gb!6,bULV($qMou8M/(@$I219aimCZ.*g`P!-VBKkl~> +endstream +endobj +88 0 obj + 44 +endobj +89 0 obj + << + /Alpha1 + << + /ca 1.0000 + /CA 1.0000 + /BM /Normal + /AIS false + >> + /Alpha2 + << + /ca .90196 + /CA .90196 + /BM /Normal + /AIS false + >> + /AlphaPattern1 + << + /SMask + << + /Type /Mask + /S /Luminosity + /G 84 0 R + >> + >> + /AlphaPattern2 + << + /SMask + << + /Type /Mask + /S /Luminosity + /G 87 0 R + >> + >> + >> +endobj +78 0 obj + << + /ProcSet 79 0 R + /XObject 80 0 R + /Pattern 81 0 R + /ExtGState 89 0 R + >> +endobj +xref +0 90 +0000000000 65535 f +0000000015 00000 n +0000000315 00000 n +0000052643 00000 n +0000000445 00000 n +0000000521 00000 n +0000000609 00000 n +0000027645 00000 n +0000027669 00000 n +0000027952 00000 n +0000027973 00000 n +0000029333 00000 n +0000029357 00000 n +0000029633 00000 n +0000029655 00000 n +0000030005 00000 n +0000030028 00000 n +0000030304 00000 n +0000030326 00000 n +0000030601 00000 n +0000030623 00000 n +0000030899 00000 n +0000030921 00000 n +0000031279 00000 n +0000031302 00000 n +0000031578 00000 n +0000031600 00000 n +0000031864 00000 n +0000031886 00000 n +0000032162 00000 n +0000032184 00000 n +0000032448 00000 n +0000032470 00000 n +0000032746 00000 n +0000032768 00000 n +0000033131 00000 n +0000033154 00000 n +0000033430 00000 n +0000033452 00000 n +0000033727 00000 n +0000033749 00000 n +0000034025 00000 n +0000034047 00000 n +0000034413 00000 n +0000034436 00000 n +0000034726 00000 n +0000034748 00000 n +0000036213 00000 n +0000036237 00000 n +0000042007 00000 n +0000042031 00000 n +0000042912 00000 n +0000042935 00000 n +0000043220 00000 n +0000043242 00000 n +0000044102 00000 n +0000044125 00000 n +0000044410 00000 n +0000044432 00000 n +0000045292 00000 n +0000045315 00000 n +0000045596 00000 n +0000045618 00000 n +0000046910 00000 n +0000046934 00000 n +0000047216 00000 n +0000047238 00000 n +0000048573 00000 n +0000048597 00000 n +0000048953 00000 n +0000049168 00000 n +0000049524 00000 n +0000049739 00000 n +0000049954 00000 n +0000050573 00000 n +0000051192 00000 n +0000051407 00000 n +0000052025 00000 n +0000055752 00000 n +0000052814 00000 n +0000052854 00000 n +0000053522 00000 n +0000053705 00000 n +0000053807 00000 n +0000054108 00000 n +0000054475 00000 n +0000054497 00000 n +0000054798 00000 n +0000055165 00000 n +0000055187 00000 n +trailer +<< + /Size 90 + /Root 2 0 R + /Info 1 0 R +>> +startxref +55871 +%%EOF diff --git a/markdown_blocks/rest_integration.md b/markdown_blocks/rest_integration.md new file mode 100644 index 0000000..3884fd7 --- /dev/null +++ b/markdown_blocks/rest_integration.md @@ -0,0 +1,4 @@ +lazar-rest provides a RESTful webservice to connect the internet with the lazar & nano-lazar framework. +The lazar framework integrate internal libraries, eNanoMapper resources as the Data Warehouse and Ontologies and external resources like UniProt and BioPortal. + +![nano-lazar Swagger UI](./images/rest_integration.pdf "nano-lazar Swagger UI") \ No newline at end of file diff --git a/markdown_blocks/rest_interaction.md b/markdown_blocks/rest_interaction.md deleted file mode 100644 index 2effd83..0000000 --- a/markdown_blocks/rest_interaction.md +++ /dev/null @@ -1,3 +0,0 @@ -The lazar-rest webservice text ... - -![nano-lazar Swagger UI](./images/rest_interaction.png "nano-lazar Swagger UI") \ No newline at end of file diff --git a/markdown_blocks/rest_qmrf.md b/markdown_blocks/rest_qmrf.md new file mode 100644 index 0000000..882bcc2 --- /dev/null +++ b/markdown_blocks/rest_qmrf.md @@ -0,0 +1,4 @@ +lazar-rest do provide QMRF reporting. The integrated QSAR-report Ruby gem library can generate initial QMRF reports in XML format with the basic +information of a model. +The QSAR-report gem was developed to extend the lazar and nano-lazar toxicity prediction application with QMRF and QPRF reporting features. +The library gem is independent from lazar or nano-lazar and can also be used in any other ruby code. \ No newline at end of file diff --git a/markdown_blocks/rest_screenshot.md b/markdown_blocks/rest_screenshot.md new file mode 100644 index 0000000..2945e8d --- /dev/null +++ b/markdown_blocks/rest_screenshot.md @@ -0,0 +1 @@ +![nano-lazar Restful API on Swagger UI](./images/rest_swagger_2.png "nano-lazar Restful API on Swagger UI"){width=1540px} \ No newline at end of file diff --git a/markdown_blocks/rest_screenshot_1.md b/markdown_blocks/rest_screenshot_1.md deleted file mode 100644 index 51116f2..0000000 --- a/markdown_blocks/rest_screenshot_1.md +++ /dev/null @@ -1,8 +0,0 @@ -![nano-lazar Swagger UI](./images/rest_swagger_ui.png "nano-lazar Swagger UI"){width=1540px} -\ -\tiny Figure 1: nano-lazar Swagger UI - service overview -\ -![nano-lazar to GET a model](./images/rest_model_get.png "nano-lazar get a model"){width=1540px} -\ -\tiny Figure 2: nano-lazar GET model data -\ diff --git a/markdown_blocks/rest_swagger_ui.md b/markdown_blocks/rest_swagger_ui.md new file mode 100644 index 0000000..2e8e5eb --- /dev/null +++ b/markdown_blocks/rest_swagger_ui.md @@ -0,0 +1 @@ +Swagger UI is used as an interactive documentation and visualization platform for the lazar-rest API. \ No newline at end of file diff --git a/nmsa-ist-rest.tex b/nmsa-ist-rest.tex index f41b75c..d5270dd 100644 --- a/nmsa-ist-rest.tex +++ b/nmsa-ist-rest.tex @@ -10,7 +10,7 @@ \title{In silico toxicology nano-lazar API rest services} \author{M. Rautenberg, C. Helma, D. Gebele} \institute{\emph{in silico} toxicology gmbh, Basel, Switzerland} -\footer{Contact: \texttt{support@in-silico.ch}. Information: \texttt{www.in-silico.ch}} +\footer{Contact: \texttt{support@in-silico.ch}. Information: \texttt{www.in-silico.ch} \\ \emph{in silico toxicology gmbh} - Rastatterstrasse 41 - CH-4057 Basel, Switzerland } \begin{document} @@ -39,18 +39,23 @@ \end{block} \begin{block}{lazar-rest Swagger UI graphical interface} - \vskip.6ex - \input{./markdown_blocks/rest_screenshot_1} + \vskip.2ex + \input{./markdown_blocks/rest_swagger_ui} + \vskip.2ex + \input{./markdown_blocks/rest_screenshot} \end{block} - + \begin{block}{QMRF support} + \justifying + \input{./markdown_blocks/rest_qmrf} + \end{block} \end{textblock} \begin{textblock}{40.5}(42.6,14) - \begin{block}{Interaction with other services} - \input{./markdown_blocks/rest_interaction} + \begin{block}{Integration into eNanoMapper and other services} + \input{./markdown_blocks/rest_integration} \end{block} \begin{block}{Authorization \& Authentication} @@ -58,9 +63,9 @@ \input{./markdown_blocks/rest_aa} \end{block} - \begin{block}{Practical Linux cURL Command Examples} + \begin{alertblock}{Practical Linux cURL Command Examples} \input{./markdown_blocks/rest_examples} - \end{block} + \end{alertblock} \begin{exampleblock}{Links} \input{./markdown_blocks/rest_links} -- cgit v1.2.3 From e233750914d5ba4630188c14f4617b457a59b506 Mon Sep 17 00:00:00 2001 From: rautenberg Date: Mon, 23 Jan 2017 12:17:58 +0100 Subject: rest poster revision --- markdown_blocks/rest_aa.md | 7 ++++--- markdown_blocks/rest_examples.md | 6 +++--- markdown_blocks/rest_integration.md | 11 ++++++++--- markdown_blocks/rest_lazar-rest.md | 6 +++--- markdown_blocks/rest_lazar_description.md | 5 ++--- markdown_blocks/rest_links.md | 15 +++++++++------ markdown_blocks/rest_qmrf.md | 10 ++++++---- markdown_blocks/rest_rest.md | 4 ++++ markdown_blocks/rest_screenshot.md | 2 +- markdown_blocks/rest_summary.md | 2 +- nmsa-ist-rest.tex | 25 ++++++++++++------------- 11 files changed, 53 insertions(+), 40 deletions(-) create mode 100644 markdown_blocks/rest_rest.md diff --git a/markdown_blocks/rest_aa.md b/markdown_blocks/rest_aa.md index 2022c54..3dca640 100644 --- a/markdown_blocks/rest_aa.md +++ b/markdown_blocks/rest_aa.md @@ -1,5 +1,6 @@ Data confidentiality, authentication and authorization (AA) is a common requirement for many resources. Within the OpenTox\cite{hardy2010collaborative} project, in-silico toxicology gmbh has implemented a single-sign-on method with an OpenLDAP backend for user management -and OpenAM for authentication and authorization. The revised technic is also used in eNanoMapper services to provide access control. -Conforming to the OpenTox web service architecture principles\cite{hardy2010collaborative}, eNanoMapper services will be decoupled from AAI. -This provides the opportunity to deploy a service without A&A, if/when possible. \ No newline at end of file +and OpenAM for authentication and authorization. +This system was updated and revised for eNanoMapper and provides access control for the current services. +Conforming to the OpenTox web service architecture principles\cite{hardy2010collaborative}, eNanoMapper services can be decoupled from AA. +This provides the opportunity to deploy a service without A&A, if required (e.g. for local installations). \ No newline at end of file diff --git a/markdown_blocks/rest_examples.md b/markdown_blocks/rest_examples.md index 3b3789d..ee9f615 100644 --- a/markdown_blocks/rest_examples.md +++ b/markdown_blocks/rest_examples.md @@ -1,14 +1,14 @@ -get an URI list for all models: +Get an URI list for all models: ```Bash curl -X GET --header 'Accept: text/uri-list' -H 'accept:text/uri-list' 'https://enm.in-silico.ch/model' ``` -retrieve an JSON representation of a model: +Retrieve an JSON representation of a model: ```Bash curl -X GET -H 'Accept: application/json' -H 'accept: application/json' 'https://enm.in-silico.ch/model/' ``` -predict a nano-particle: +Predict a nano-particle: ```Bash curl -X POST -H 'Content-Type: application/x-www-form-urlencoded' -H 'Accept:text/html' -d 'identifier= \ https://enm.in-silico.ch/nanoparticle/' 'https://enm.in-silico.ch/model/' ``` \ No newline at end of file diff --git a/markdown_blocks/rest_integration.md b/markdown_blocks/rest_integration.md index 3884fd7..e0cb402 100644 --- a/markdown_blocks/rest_integration.md +++ b/markdown_blocks/rest_integration.md @@ -1,4 +1,9 @@ -lazar-rest provides a RESTful webservice to connect the internet with the lazar & nano-lazar framework. -The lazar framework integrate internal libraries, eNanoMapper resources as the Data Warehouse and Ontologies and external resources like UniProt and BioPortal. +lazar-rest provides a REST webservice for the nano-lazar framework. +The lazar framework integrates internal libraries, eNanoMapper +resources (Data Warehouse and Ontologies) and external resources like UniProt and +BioPortal. The lazar-rest services makes the lazar framework accessible +for other webservices and web applications and for users who prefer the +command line over graphical user interfaces. -![nano-lazar Swagger UI](./images/rest_integration.pdf "nano-lazar Swagger UI") \ No newline at end of file + +![nano-lazar service integration](./images/rest_integration.pdf " nano-lazar service integration") \ No newline at end of file diff --git a/markdown_blocks/rest_lazar-rest.md b/markdown_blocks/rest_lazar-rest.md index 3c887ca..5a6ab82 100644 --- a/markdown_blocks/rest_lazar-rest.md +++ b/markdown_blocks/rest_lazar-rest.md @@ -1,3 +1,3 @@ -lazar-rest is a gem library written in Ruby. It provides a REST API webservice to lazar and nano-lazar. -The API is documented in the Swagger RESTful API documentation specification version 2.0. -This specification is conform to the Open API Iniciative specification. \ No newline at end of file +lazar-rest is a Ruby library, that it provides a REST interface for nano-lazar. +The API is compatible with eNanoMapper specifications and documented with the Swagger API framework (version 2.0), +which conforms with the Open API Initiative specification. \ No newline at end of file diff --git a/markdown_blocks/rest_lazar_description.md b/markdown_blocks/rest_lazar_description.md index 2096877..1272146 100644 --- a/markdown_blocks/rest_lazar_description.md +++ b/markdown_blocks/rest_lazar_description.md @@ -1,4 +1,3 @@ *lazar* (lazy structure–activity relationships)\cite{Maunz2013} is a modular framework for read across predictions of chemical toxicities. -Within the European Union’s FP7 eNanoMapper project lazar was extended with capabilities to handle nanomaterial data, -interfaces to other eNanoMapper services (databases and ontologies) and a stable and user-friendly graphical interface -for nanoparticle read-across predictions. lazar provides a ruby gem library to this developments. \ No newline at end of file +Within the European Union’s FP7 eNanoMapper project lazar was extended with capabilities to handle nanomaterial data and interfaces +to other eNanoMapper services (databases and ontologies). lazar libraries are publicly distributed as Ruby gems. \ No newline at end of file diff --git a/markdown_blocks/rest_links.md b/markdown_blocks/rest_links.md index 682e16e..37279a5 100644 --- a/markdown_blocks/rest_links.md +++ b/markdown_blocks/rest_links.md @@ -1,21 +1,24 @@ -* Nano-lazar Restful API GUI. Swagger UI based documentation for API visualization and interaction. +* Nano-lazar REST API GUI. Swagger UI based documentation for API visualization and interaction. \ * Nano-lazar Swagger API definition file -* Nano-lazar Restful API services source code repository +* Nano-lazar REST API services source code repository -* Nano-lazar Restful API services Rubydocs gem library documentation +* Nano-lazar REST API services Rubydocs gem library documentation -* Nano-lazar Restful API issue tracker +* Nano-lazar REST API issue tracker * Lazar (source code) -* Nano-lazar GUI (graphical user interface) - +* Swagger framework for APIs + + +* Open API Initiative + \ No newline at end of file diff --git a/markdown_blocks/rest_qmrf.md b/markdown_blocks/rest_qmrf.md index 882bcc2..aa65b6b 100644 --- a/markdown_blocks/rest_qmrf.md +++ b/markdown_blocks/rest_qmrf.md @@ -1,4 +1,6 @@ -lazar-rest do provide QMRF reporting. The integrated QSAR-report Ruby gem library can generate initial QMRF reports in XML format with the basic -information of a model. -The QSAR-report gem was developed to extend the lazar and nano-lazar toxicity prediction application with QMRF and QPRF reporting features. -The library gem is independent from lazar or nano-lazar and can also be used in any other ruby code. \ No newline at end of file +lazar-rest supports QMRF reporting. The integrated QSAR-report library +generates QMRF reports in XML format with basic model information (e.g. +validation results according to OECD guidelines). The QMRF report +library is independent of other IST libraries (e.g. lazar, +nano-lazar-gui, lazar-rest) and can be used by other applications that +need QMRF reporting. \ No newline at end of file diff --git a/markdown_blocks/rest_rest.md b/markdown_blocks/rest_rest.md new file mode 100644 index 0000000..d8d670e --- /dev/null +++ b/markdown_blocks/rest_rest.md @@ -0,0 +1,4 @@ +Representational State Transfer or RESTful API is an architectural style to design webservices. +REST uses HTTP protocol requests GET, POST, PUT, DELETE for the communication between distributed webservices. +nano-lazar as a part of the eNanoMapper analysis and modelling infrastructure is built upon the OpenTox web services framework following +the principles of the Representational State Transfer (REST) design model. \ No newline at end of file diff --git a/markdown_blocks/rest_screenshot.md b/markdown_blocks/rest_screenshot.md index 2945e8d..4d6140c 100644 --- a/markdown_blocks/rest_screenshot.md +++ b/markdown_blocks/rest_screenshot.md @@ -1 +1 @@ -![nano-lazar Restful API on Swagger UI](./images/rest_swagger_2.png "nano-lazar Restful API on Swagger UI"){width=1540px} \ No newline at end of file +![Swagger UI for the nano-lazar REST API](./images/rest_swagger_2.png "Swagger UI for the nano-lazar REST API"){width=1540px} \ No newline at end of file diff --git a/markdown_blocks/rest_summary.md b/markdown_blocks/rest_summary.md index 7785192..3b77d93 100644 --- a/markdown_blocks/rest_summary.md +++ b/markdown_blocks/rest_summary.md @@ -1,5 +1,5 @@ During the eNanoMapper project *in silico* toxicologies (IST) webservices were adapted in order to provide REST interfaces that adhere to eNanoMapper standards and specifications and supplemented with interactive SWAGGER -documentation. This poster will give an overview of ISTs eNanoMapper API +documentation. This poster gives an overview of ISTs eNanoMapper API compatible REST services\cite{rautenberg_micha_2016_187328} and demonstrate its usage with practical examples. diff --git a/nmsa-ist-rest.tex b/nmsa-ist-rest.tex index d5270dd..4f89784 100644 --- a/nmsa-ist-rest.tex +++ b/nmsa-ist-rest.tex @@ -7,7 +7,7 @@ \setlength{\TPHorizModule}{1cm} \setlength{\TPVertModule}{1cm} -\title{In silico toxicology nano-lazar API rest services} +\title{In silico toxicology eNanoMapper REST services} \author{M. Rautenberg, C. Helma, D. Gebele} \institute{\emph{in silico} toxicology gmbh, Basel, Switzerland} \footer{Contact: \texttt{support@in-silico.ch}. Information: \texttt{www.in-silico.ch} \\ \emph{in silico toxicology gmbh} - Rastatterstrasse 41 - CH-4057 Basel, Switzerland } @@ -16,13 +16,7 @@ \begin{frame}{} - \begin{textblock}{80}(1,10) - % \begin{block}{} - \input{./markdown_blocks/company} - % \end{block} - \end{textblock} - - \begin{textblock}{40.5}(1,14) + \begin{textblock}{40.5}(1,8.4) \begin{block}{Abstract} \justifying \input{./markdown_blocks/rest_summary} @@ -33,12 +27,17 @@ \input{./markdown_blocks/rest_lazar_description} \end{block} + \begin{block}{REST} + \justifying + \input{./markdown_blocks/rest_rest} + \end{block} + \begin{block}{lazar-rest services} \justifying \input{./markdown_blocks/rest_lazar-rest} \end{block} - \begin{block}{lazar-rest Swagger UI graphical interface} + \begin{block}{lazar-rest Swagger interface} \vskip.2ex \input{./markdown_blocks/rest_swagger_ui} \vskip.2ex @@ -52,18 +51,18 @@ \end{textblock} - \begin{textblock}{40.5}(42.6,14) + \begin{textblock}{40.5}(42.6,8.4) - \begin{block}{Integration into eNanoMapper and other services} + \begin{block}{Integration with eNanoMapper and other services} \input{./markdown_blocks/rest_integration} \end{block} - \begin{block}{Authorization \& Authentication} + \begin{block}{Authorization \& authentication} \justifying \input{./markdown_blocks/rest_aa} \end{block} - \begin{alertblock}{Practical Linux cURL Command Examples} + \begin{alertblock}{Practical linux cURL command examples} \input{./markdown_blocks/rest_examples} \end{alertblock} -- cgit v1.2.3 From b688c0694f36d78c846c54bc0281dbf2a5eaf198 Mon Sep 17 00:00:00 2001 From: rautenberg Date: Mon, 23 Jan 2017 20:13:25 +0100 Subject: more rest poster, collecting links for services --- beamercolorthemeIST.sty | 5 +-- beamerthemeIST.sty | 2 +- markdown_blocks/integration_links.md | 6 ++-- markdown_blocks/integration_summary.md | 2 +- markdown_blocks/rest_examples.md | 4 +-- markdown_blocks/rest_integration.md | 2 +- markdown_blocks/rest_qmrf.md | 2 +- markdown_blocks/services_aa.md | 2 ++ markdown_blocks/services_infrastructure.md | 11 +++++++ markdown_blocks/services_lazar-rest.md | 15 +++++++++ markdown_blocks/services_lazar.md | 8 +++++ markdown_blocks/services_nano-lazar.md | 12 +++++++ markdown_blocks/services_ontoviewer.md | 2 ++ markdown_blocks/services_qsar-report.md | 14 ++++++++ markdown_blocks/services_sparql.md | 0 nmsa-ist-integration.tex | 10 ++---- nmsa-ist-services.tex | 51 ++++++++++++++++-------------- 17 files changed, 106 insertions(+), 42 deletions(-) create mode 100644 markdown_blocks/services_aa.md create mode 100644 markdown_blocks/services_infrastructure.md create mode 100644 markdown_blocks/services_lazar-rest.md create mode 100644 markdown_blocks/services_lazar.md create mode 100644 markdown_blocks/services_nano-lazar.md create mode 100644 markdown_blocks/services_ontoviewer.md create mode 100644 markdown_blocks/services_qsar-report.md create mode 100644 markdown_blocks/services_sparql.md diff --git a/beamercolorthemeIST.sty b/beamercolorthemeIST.sty index 7a039f6..fac5443 100644 --- a/beamercolorthemeIST.sty +++ b/beamercolorthemeIST.sty @@ -49,9 +49,10 @@ \lstloadlanguages{Ruby} \lstloadlanguages{Bash} \lstset{% - basicstyle=\ttfamily\color{black}, + language=Bash, + basicstyle=\footnotesize\ttfamily\color{black}, commentstyle = \ttfamily\color{darkgrey}, - keywordstyle=\ttfamily\color{blue}, + keywordstyle=\ttfamily\color{black}, stringstyle=\color{red}, backgroundcolor=\color{lightgrey}} diff --git a/beamerthemeIST.sty b/beamerthemeIST.sty index 72563d1..58b009a 100644 --- a/beamerthemeIST.sty +++ b/beamerthemeIST.sty @@ -22,7 +22,7 @@ \lstset{breakatwhitespace, basicstyle=\small\ttfamily, - keywordstyle=\footnotesize\color{blue}\ttfamily + keywordstyle=\footnotesize\color{black}\ttfamily columns=fullflexible, keepspaces, breaklines, diff --git a/markdown_blocks/integration_links.md b/markdown_blocks/integration_links.md index 7de44f7..1882463 100644 --- a/markdown_blocks/integration_links.md +++ b/markdown_blocks/integration_links.md @@ -1,10 +1,10 @@ -* eNM Data Warehouse +* eNM data warehouse -* eNM Ontologies +* eNM ontologies * nano-lazar GUI -* eNM Ontology Viewer +* eNM ontology viewer * nano-lazar REST interface diff --git a/markdown_blocks/integration_summary.md b/markdown_blocks/integration_summary.md index c62f645..871516a 100644 --- a/markdown_blocks/integration_summary.md +++ b/markdown_blocks/integration_summary.md @@ -1,6 +1,6 @@ During the eNanoMapper project in silico toxicologies (IST) public services were adapted to the specification of the eNanoMapper API and new nanoparticle -specific developments were implemented. This poster will depict the +specific developments were implemented. This poster depict the interaction of IST services with eNanoMapper resources of other partners which covers use cases like data download/mirroring, augmentation of GUIs with ontology queries and nanoparticle descriptor calculation. diff --git a/markdown_blocks/rest_examples.md b/markdown_blocks/rest_examples.md index ee9f615..7bd49d6 100644 --- a/markdown_blocks/rest_examples.md +++ b/markdown_blocks/rest_examples.md @@ -4,11 +4,11 @@ Get an URI list for all models: ``` Retrieve an JSON representation of a model: -```Bash +```bash curl -X GET -H 'Accept: application/json' -H 'accept: application/json' 'https://enm.in-silico.ch/model/' ``` Predict a nano-particle: ```Bash - curl -X POST -H 'Content-Type: application/x-www-form-urlencoded' -H 'Accept:text/html' -d 'identifier= \ https://enm.in-silico.ch/nanoparticle/' 'https://enm.in-silico.ch/model/' + curl -X POST -H 'Content-Type: application/x-www-form-urlencoded' -H 'Accept:text/html' -d 'identifier= https://enm.in-silico.ch/nanoparticle/' 'https://enm.in-silico.ch/model/' ``` \ No newline at end of file diff --git a/markdown_blocks/rest_integration.md b/markdown_blocks/rest_integration.md index e0cb402..01a891c 100644 --- a/markdown_blocks/rest_integration.md +++ b/markdown_blocks/rest_integration.md @@ -6,4 +6,4 @@ for other webservices and web applications and for users who prefer the command line over graphical user interfaces. -![nano-lazar service integration](./images/rest_integration.pdf " nano-lazar service integration") \ No newline at end of file +![nano-lazar service integration](./images/rest_integration.pdf "nano-lazar service integration"){width=1400px} \ No newline at end of file diff --git a/markdown_blocks/rest_qmrf.md b/markdown_blocks/rest_qmrf.md index aa65b6b..6a3997b 100644 --- a/markdown_blocks/rest_qmrf.md +++ b/markdown_blocks/rest_qmrf.md @@ -1,4 +1,4 @@ -lazar-rest supports QMRF reporting. The integrated QSAR-report library +lazar-rest supports (Q)SAR Model Reporting Format (QMRF). The integrated QSAR-report library\cite{rautenberg_micha_2016_179038} generates QMRF reports in XML format with basic model information (e.g. validation results according to OECD guidelines). The QMRF report library is independent of other IST libraries (e.g. lazar, diff --git a/markdown_blocks/services_aa.md b/markdown_blocks/services_aa.md new file mode 100644 index 0000000..9205888 --- /dev/null +++ b/markdown_blocks/services_aa.md @@ -0,0 +1,2 @@ +* Single sign-on authorization & authentication service + \ No newline at end of file diff --git a/markdown_blocks/services_infrastructure.md b/markdown_blocks/services_infrastructure.md new file mode 100644 index 0000000..ecdaff4 --- /dev/null +++ b/markdown_blocks/services_infrastructure.md @@ -0,0 +1,11 @@ +* Bugzilla Issue tracker + + +* Mailman mailing list for partner, developers and ontologies + + +* + <> + +* + <> \ No newline at end of file diff --git a/markdown_blocks/services_lazar-rest.md b/markdown_blocks/services_lazar-rest.md new file mode 100644 index 0000000..607f29b --- /dev/null +++ b/markdown_blocks/services_lazar-rest.md @@ -0,0 +1,15 @@ +* Nano-lazar REST API GUI. Swagger UI based documentation for API visualization and interaction. + \ + + +* Nano-lazar Swagger API definition file + + +* Nano-lazar REST API services source code repository + + +* Nano-lazar REST API services Rubydocs gem library documentation + + +* Nano-lazar REST API issue tracker + \ No newline at end of file diff --git a/markdown_blocks/services_lazar.md b/markdown_blocks/services_lazar.md new file mode 100644 index 0000000..d1527c8 --- /dev/null +++ b/markdown_blocks/services_lazar.md @@ -0,0 +1,8 @@ +* Lazar (source code) + + +* Lazar issue tracker + + +* Lazar Rubydocs gem library documentation + \ No newline at end of file diff --git a/markdown_blocks/services_nano-lazar.md b/markdown_blocks/services_nano-lazar.md new file mode 100644 index 0000000..232be6a --- /dev/null +++ b/markdown_blocks/services_nano-lazar.md @@ -0,0 +1,12 @@ +* Nano-lazar for toxicity predictions - graphical user interface. + \ + + +* Nano-lazar source code repository + + +* Nano-lazar Rubydocs gem library documentation + + +* Nano-lazar REST API issue tracker + \ No newline at end of file diff --git a/markdown_blocks/services_ontoviewer.md b/markdown_blocks/services_ontoviewer.md new file mode 100644 index 0000000..ab0b0c1 --- /dev/null +++ b/markdown_blocks/services_ontoviewer.md @@ -0,0 +1,2 @@ +* eNM ontology viewer + \ No newline at end of file diff --git a/markdown_blocks/services_qsar-report.md b/markdown_blocks/services_qsar-report.md new file mode 100644 index 0000000..e3a6355 --- /dev/null +++ b/markdown_blocks/services_qsar-report.md @@ -0,0 +1,14 @@ +* QSAR report - Ruby gem library + + +* QSAR report - Rubydoc documentation + + +* QSAR report - Ruby gem library source code + + +* QSAR report - Ruby gem library issue tracker + + +* QSAR report - Tutorial + \ No newline at end of file diff --git a/markdown_blocks/services_sparql.md b/markdown_blocks/services_sparql.md new file mode 100644 index 0000000..e69de29 diff --git a/nmsa-ist-integration.tex b/nmsa-ist-integration.tex index b1b3a13..c472e36 100644 --- a/nmsa-ist-integration.tex +++ b/nmsa-ist-integration.tex @@ -16,20 +16,14 @@ \begin{frame}{} - \begin{textblock}{80}(1,12) - % \begin{block}{} - \input{./markdown_blocks/company} - % \end{block} - \end{textblock} - - \begin{textblock}{40.5}(1,16) + \begin{textblock}{40.5}(1,11) \begin{block}{Abstract} \input{./markdown_blocks/integration_summary} \end{block} \end{textblock} - \begin{textblock}{40.5}(42.6,16) + \begin{textblock}{40.5}(42.6,11) \begin{block}{Text} \input{./markdown_blocks/integration_text} diff --git a/nmsa-ist-services.tex b/nmsa-ist-services.tex index 7a315c4..d7406a5 100644 --- a/nmsa-ist-services.tex +++ b/nmsa-ist-services.tex @@ -1,6 +1,6 @@ \documentclass[final]{beamer} \usetheme{IST} -\usepackage[orientation=portrait,size=a0,scale=1.4,debug]{beamerposter} % poster size +\usepackage[orientation=portrait,size=a0,scale=1.3,debug]{beamerposter} % poster size \usepackage[absolute,overlay]{textpos} \usepackage[utf8]{inputenc} @@ -16,44 +16,49 @@ \begin{frame}{} - \begin{textblock}{80}(1,10) - % \begin{block}{} - \input{./markdown_blocks/company} - % \end{block} - \end{textblock} - - \begin{textblock}{40.5}(1,14) + \begin{textblock}{40.5}(1,8.6) \begin{block}{Abstract} \input{./markdown_blocks/services_summary} \end{block} - \begin{block}{Screenshot} - \input{./markdown_blocks/screenshot} + \begin{block}{lazar} + \input{./markdown_blocks/services_lazar} + \end{block} + + \begin{block}{nano-lazar} + \input{./markdown_blocks/services_nano-lazar} + \end{block} + + \begin{block}{lazar-rest} + \input{./markdown_blocks/services_lazar-rest} \end{block} - \begin{block}{Markdown tables} - \input{./markdown_blocks/table} + \begin{block}{eNM ontoviewer} + \input{./markdown_blocks/services_ontoviewer} \end{block} + \begin{block}{SPARQL endpoint to eNM ontology and data} + \input{./markdown_blocks/services_sparql} + \end{block} + + \end{textblock} - \begin{textblock}{40.5}(42.6,14) + \begin{textblock}{40.5}(42.6,8.6) - \begin{block}{Maths example} - \input{./markdown_blocks/maths} + \begin{block}{Authorization \& Authentication} + \input{./markdown_blocks/services_aa} \end{block} - \begin{alertblock}{Highlighted Box} - \input{./markdown_blocks/exampletext} - \end{alertblock} + \begin{block}{QSAR-reporting} + \input{./markdown_blocks/services_qsar-report} + \end{block} - \begin{block}{Code} - \input{./markdown_blocks/code} + \begin{block}{eNanoMapper infrastructure} + \input{./markdown_blocks/services_infrastructure} \end{block} - \begin{exampleblock}{Links} - \input{./markdown_blocks/services_links} - \end{exampleblock} + \begin{block}{References} \small\bibliography{references} -- cgit v1.2.3 From 9189f05eca6370fd6a060b54dcd38f6249dfbe52 Mon Sep 17 00:00:00 2001 From: rautenberg Date: Tue, 24 Jan 2017 15:17:39 +0100 Subject: update Services Poster --- Makefile | 6 +++--- markdown_blocks/rest_integration.md | 2 +- markdown_blocks/rest_lazar-rest.md | 2 +- markdown_blocks/rest_links.md | 3 +++ markdown_blocks/services_aa.md | 4 +++- markdown_blocks/services_docker.md | 4 ++++ markdown_blocks/services_infrastructure.md | 20 ++++++++++++++------ markdown_blocks/services_lazar-rest.md | 9 ++++++++- markdown_blocks/services_lazar.md | 6 ++++++ markdown_blocks/services_nano-lazar.md | 2 +- markdown_blocks/services_ontoviewer.md | 12 ++++++++++-- markdown_blocks/services_qsar-report.md | 4 +++- markdown_blocks/services_sparql.md | 7 +++++++ nmsa-ist-services.tex | 14 ++++++++------ 14 files changed, 72 insertions(+), 23 deletions(-) create mode 100644 markdown_blocks/services_docker.md diff --git a/Makefile b/Makefile index 85d31b9..18ffac1 100644 --- a/Makefile +++ b/Makefile @@ -17,9 +17,9 @@ exampleposter: nmsa-ist-services: ./md2tex.sh nmsa-ist-services.tex $(PDFLATEX) nmsa-ist-services.tex - # $(BIBTEX) nmsa-ist-services - # $(PDFLATEX) nmsa-ist-services.tex - # $(PDFLATEX) nmsa-ist-services.tex + $(BIBTEX) nmsa-ist-services + $(PDFLATEX) nmsa-ist-services.tex + $(PDFLATEX) nmsa-ist-services.tex #./dockercmd.sh /bin/sh -c "./md2tex.sh nmsa-ist-services.tex && pdflatex nmsa-ist-services.tex" # Poster enm-ontoviewer diff --git a/markdown_blocks/rest_integration.md b/markdown_blocks/rest_integration.md index 01a891c..d63f909 100644 --- a/markdown_blocks/rest_integration.md +++ b/markdown_blocks/rest_integration.md @@ -1,7 +1,7 @@ lazar-rest provides a REST webservice for the nano-lazar framework. The lazar framework integrates internal libraries, eNanoMapper resources (Data Warehouse and Ontologies) and external resources like UniProt and -BioPortal. The lazar-rest services makes the lazar framework accessible +BioPortal. lazar-rest services make the lazar framework accessible for other webservices and web applications and for users who prefer the command line over graphical user interfaces. diff --git a/markdown_blocks/rest_lazar-rest.md b/markdown_blocks/rest_lazar-rest.md index 5a6ab82..1058e38 100644 --- a/markdown_blocks/rest_lazar-rest.md +++ b/markdown_blocks/rest_lazar-rest.md @@ -1,3 +1,3 @@ -lazar-rest is a Ruby library, that it provides a REST interface for nano-lazar. +lazar-rest is a Ruby library, that provides a REST interface for nano-lazar. The API is compatible with eNanoMapper specifications and documented with the Swagger API framework (version 2.0), which conforms with the Open API Initiative specification. \ No newline at end of file diff --git a/markdown_blocks/rest_links.md b/markdown_blocks/rest_links.md index 37279a5..356f473 100644 --- a/markdown_blocks/rest_links.md +++ b/markdown_blocks/rest_links.md @@ -8,6 +8,9 @@ * Nano-lazar REST API services source code repository +* Nano-lazar REST API services gem library + + * Nano-lazar REST API services Rubydocs gem library documentation diff --git a/markdown_blocks/services_aa.md b/markdown_blocks/services_aa.md index 9205888..44c12d3 100644 --- a/markdown_blocks/services_aa.md +++ b/markdown_blocks/services_aa.md @@ -1,2 +1,4 @@ +IST has conceived, setup and maintained an infrastructure for authentication and authorization. + * Single sign-on authorization & authentication service - \ No newline at end of file + \ No newline at end of file diff --git a/markdown_blocks/services_docker.md b/markdown_blocks/services_docker.md new file mode 100644 index 0000000..f06a0ac --- /dev/null +++ b/markdown_blocks/services_docker.md @@ -0,0 +1,4 @@ +Docker, is an open platform container management tool that allows easily to manage, build, ship, and run distributed applications. + +* Public available dockerized IST services on Docker Hub + diff --git a/markdown_blocks/services_infrastructure.md b/markdown_blocks/services_infrastructure.md index ecdaff4..3b3549c 100644 --- a/markdown_blocks/services_infrastructure.md +++ b/markdown_blocks/services_infrastructure.md @@ -1,11 +1,19 @@ -* Bugzilla Issue tracker +IST support the eNanoMapper infrastructure with a brought range of services. + +* Bugzilla Issue tracker (project internal) -* Mailman mailing list for partner, developers and ontologies +* Mailman mailing list for partner, developers and associate-partners -* - <> +* Maintenance for scripts to query the eNM ontology at purl.enanomapper.org + (e.g. ) + +* Registration form and user management + + +* LDAP user database server and replication server + -* - <> \ No newline at end of file +* Blog entries on eNanoMapper IST specific technical implementation + \ No newline at end of file diff --git a/markdown_blocks/services_lazar-rest.md b/markdown_blocks/services_lazar-rest.md index 607f29b..12f80a3 100644 --- a/markdown_blocks/services_lazar-rest.md +++ b/markdown_blocks/services_lazar-rest.md @@ -1,3 +1,7 @@ +The nano-lazar Rest API interface provides a Restful web service. It is the web service implementation of +the nano-lazar Ruby API for obtaining information on data in the nano-lazar framework and for +performing predictions and descriptor calculations. + * Nano-lazar REST API GUI. Swagger UI based documentation for API visualization and interaction. \ @@ -7,7 +11,10 @@ * Nano-lazar REST API services source code repository - + +* Nano-lazar REST API services gem library\cite{rautenberg_micha_2016_187328} + + * Nano-lazar REST API services Rubydocs gem library documentation diff --git a/markdown_blocks/services_lazar.md b/markdown_blocks/services_lazar.md index d1527c8..fa870e9 100644 --- a/markdown_blocks/services_lazar.md +++ b/markdown_blocks/services_lazar.md @@ -1,3 +1,9 @@ +* Lazar Ruby gem library\cite{helma_christoph_2016_215483} + + +* Lazar toxicity prediction UI + + * Lazar (source code) diff --git a/markdown_blocks/services_nano-lazar.md b/markdown_blocks/services_nano-lazar.md index 232be6a..385654a 100644 --- a/markdown_blocks/services_nano-lazar.md +++ b/markdown_blocks/services_nano-lazar.md @@ -1,4 +1,4 @@ -* Nano-lazar for toxicity predictions - graphical user interface. +* Nano-lazar for toxicity predictions - graphical user interface\cite{gebele_denis_2017_250818}. \ diff --git a/markdown_blocks/services_ontoviewer.md b/markdown_blocks/services_ontoviewer.md index ab0b0c1..3d20f84 100644 --- a/markdown_blocks/services_ontoviewer.md +++ b/markdown_blocks/services_ontoviewer.md @@ -1,2 +1,10 @@ -* eNM ontology viewer - \ No newline at end of file +The eNanoMapper ontology viewer application visualizes SPARQL query results from eNM ontologies ad data. + +* eNanoMapper ontology viewer + + +* eNanoMapper ontology viewer source code repository + + +* eNanoMapper ontology viewer issues + \ No newline at end of file diff --git a/markdown_blocks/services_qsar-report.md b/markdown_blocks/services_qsar-report.md index e3a6355..a347992 100644 --- a/markdown_blocks/services_qsar-report.md +++ b/markdown_blocks/services_qsar-report.md @@ -1,4 +1,6 @@ -* QSAR report - Ruby gem library +The QSAR-report Ruby gem library was developed to extend nano-lazar with QMRF and QPRF reporting features. + +* QSAR report - Ruby gem library\cite{rautenberg_micha_2016_179038} for QMRF and QPRF reporting * QSAR report - Rubydoc documentation diff --git a/markdown_blocks/services_sparql.md b/markdown_blocks/services_sparql.md index e69de29..be667e6 100644 --- a/markdown_blocks/services_sparql.md +++ b/markdown_blocks/services_sparql.md @@ -0,0 +1,7 @@ +A SPARQL query interface for eNanoMapper data and ontologies has been established. + +* SPARQL endpoint + + +* Documentation in "Deliverable 3.2 Data Management System with extended search capabilities" - 3.2.3.1. SPARQL endpoint + \ No newline at end of file diff --git a/nmsa-ist-services.tex b/nmsa-ist-services.tex index d7406a5..542faba 100644 --- a/nmsa-ist-services.tex +++ b/nmsa-ist-services.tex @@ -29,6 +29,10 @@ \input{./markdown_blocks/services_nano-lazar} \end{block} + \begin{block}{nano-lazar-paper} + \input{./markdown_blocks/services_nano-lazar-paper} + \end{block} + \begin{block}{lazar-rest} \input{./markdown_blocks/services_lazar-rest} \end{block} @@ -46,6 +50,10 @@ \begin{textblock}{40.5}(42.6,8.6) + \begin{block}{Docker} + \input{./markdown_blocks/services_docker} + \end{block} + \begin{block}{Authorization \& Authentication} \input{./markdown_blocks/services_aa} \end{block} @@ -58,18 +66,12 @@ \input{./markdown_blocks/services_infrastructure} \end{block} - - \begin{block}{References} \small\bibliography{references} \end{block} \end{textblock} - \begin{textblock}{82.1}(1,88) - \input{./markdown_blocks/exampletext} - \end{textblock} - \end{frame} \end{document} -- cgit v1.2.3 From 5447d377fc652bd1905e1841bf535dbc3266e5d4 Mon Sep 17 00:00:00 2001 From: rautenberg Date: Tue, 24 Jan 2017 15:56:00 +0100 Subject: add onto-viewer bibtex --- markdown_blocks/services_nano-lazar-paper.md | 7 +++++++ markdown_blocks/services_ontoviewer.md | 2 +- references.bib | 10 ++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 markdown_blocks/services_nano-lazar-paper.md diff --git a/markdown_blocks/services_nano-lazar-paper.md b/markdown_blocks/services_nano-lazar-paper.md new file mode 100644 index 0000000..dca676a --- /dev/null +++ b/markdown_blocks/services_nano-lazar-paper.md @@ -0,0 +1,7 @@ +IST + +* Source code for nano-lazar publication (and oral presentations). + + +* Dockerized reproducible nano-lazar paper generation. + \ No newline at end of file diff --git a/markdown_blocks/services_ontoviewer.md b/markdown_blocks/services_ontoviewer.md index 3d20f84..32c02c0 100644 --- a/markdown_blocks/services_ontoviewer.md +++ b/markdown_blocks/services_ontoviewer.md @@ -1,4 +1,4 @@ -The eNanoMapper ontology viewer application visualizes SPARQL query results from eNM ontologies ad data. +The eNanoMapper ontology viewer application\cite{gebele_denis_2017_259384} visualizes SPARQL query results from eNM ontologies ad data. * eNanoMapper ontology viewer diff --git a/references.bib b/references.bib index 16f2c70..e5decae 100644 --- a/references.bib +++ b/references.bib @@ -1,3 +1,13 @@ +@misc{gebele_denis_2017_259384, + author = {Gebele, Denis and + Rautenberg, Micha and + Helma, Christoph}, + title = {e{N}ano{M}apper ontology viewer}, + month = jan, + year = 2017, + doi = {10.5281/zenodo.259384}, + url = {https://doi.org/10.5281/zenodo.259384} +} @misc{gebele_denis_2017_250818, author = {Gebele, Denis and Rautenberg, Micha and -- cgit v1.2.3 From d9a9348a68ecb4e83a3facd5be1d4c54fca09374 Mon Sep 17 00:00:00 2001 From: rautenberg Date: Tue, 24 Jan 2017 18:08:14 +0100 Subject: unify enanomapper urls to .net --- markdown_blocks/integration_links.md | 4 ++-- markdown_blocks/services_infrastructure.md | 7 +++++-- markdown_blocks/services_ontoviewer.md | 4 ++-- markdown_blocks/services_sparql.md | 4 ++-- 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/markdown_blocks/integration_links.md b/markdown_blocks/integration_links.md index 1882463..96139e7 100644 --- a/markdown_blocks/integration_links.md +++ b/markdown_blocks/integration_links.md @@ -6,10 +6,10 @@ * eNM ontology viewer -* nano-lazar REST interface +* nano-lazar REST interface * eNM SPARQL interface * BioPortal -* UniProt \ No newline at end of file +* UniProt diff --git a/markdown_blocks/services_infrastructure.md b/markdown_blocks/services_infrastructure.md index 3b3549c..d834dce 100644 --- a/markdown_blocks/services_infrastructure.md +++ b/markdown_blocks/services_infrastructure.md @@ -6,7 +6,7 @@ IST support the eNanoMapper infrastructure with a brought range of services. * Mailman mailing list for partner, developers and associate-partners -* Maintenance for scripts to query the eNM ontology at purl.enanomapper.org +* Maintenance for scripts to query the eNM ontology at purl.enanomapper.net (e.g. ) * Registration form and user management @@ -15,5 +15,8 @@ IST support the eNanoMapper infrastructure with a brought range of services. * LDAP user database server and replication server +* eNanoMapper specification documents online visualization + + * Blog entries on eNanoMapper IST specific technical implementation - \ No newline at end of file + diff --git a/markdown_blocks/services_ontoviewer.md b/markdown_blocks/services_ontoviewer.md index 32c02c0..ab4cd6c 100644 --- a/markdown_blocks/services_ontoviewer.md +++ b/markdown_blocks/services_ontoviewer.md @@ -1,10 +1,10 @@ The eNanoMapper ontology viewer application\cite{gebele_denis_2017_259384} visualizes SPARQL query results from eNM ontologies ad data. * eNanoMapper ontology viewer - + * eNanoMapper ontology viewer source code repository * eNanoMapper ontology viewer issues - \ No newline at end of file + diff --git a/markdown_blocks/services_sparql.md b/markdown_blocks/services_sparql.md index be667e6..0d89a0f 100644 --- a/markdown_blocks/services_sparql.md +++ b/markdown_blocks/services_sparql.md @@ -1,7 +1,7 @@ A SPARQL query interface for eNanoMapper data and ontologies has been established. * SPARQL endpoint - + * Documentation in "Deliverable 3.2 Data Management System with extended search capabilities" - 3.2.3.1. SPARQL endpoint - \ No newline at end of file + -- cgit v1.2.3 From 93d0af1f4049534d26167f7437b8396aeb186762 Mon Sep 17 00:00:00 2001 From: Christoph Helma Date: Wed, 25 Jan 2017 12:47:49 +0100 Subject: corrections for services poster --- markdown_blocks/services_aa.md | 4 ++-- markdown_blocks/services_infrastructure.md | 18 +++++++++--------- markdown_blocks/services_lazar-rest.md | 20 +++++++++----------- markdown_blocks/services_lazar.md | 25 +++++++++++++++---------- markdown_blocks/services_nano-lazar-paper.md | 12 +++++++++--- markdown_blocks/services_nano-lazar.md | 20 ++++++++++++-------- markdown_blocks/services_ontoviewer.md | 8 ++++---- markdown_blocks/services_qsar-report.md | 22 +++++++++++----------- markdown_blocks/services_sparql.md | 4 ++-- markdown_blocks/services_summary.md | 4 ++-- 10 files changed, 75 insertions(+), 62 deletions(-) diff --git a/markdown_blocks/services_aa.md b/markdown_blocks/services_aa.md index 44c12d3..b28afa5 100644 --- a/markdown_blocks/services_aa.md +++ b/markdown_blocks/services_aa.md @@ -1,4 +1,4 @@ -IST has conceived, setup and maintained an infrastructure for authentication and authorization. +Infrastructure for eNanoMapper authentication and authorization. * Single sign-on authorization & authentication service - \ No newline at end of file + diff --git a/markdown_blocks/services_infrastructure.md b/markdown_blocks/services_infrastructure.md index d834dce..ddcc090 100644 --- a/markdown_blocks/services_infrastructure.md +++ b/markdown_blocks/services_infrastructure.md @@ -1,22 +1,22 @@ -IST support the eNanoMapper infrastructure with a brought range of services. +eNanoMapper infrastructure services implemented and maintained by IST. -* Bugzilla Issue tracker (project internal) +* Bugzilla issue tracker for eNanoMapper * Mailman mailing list for partner, developers and associate-partners -* Maintenance for scripts to query the eNM ontology at purl.enanomapper.net - (e.g. ) - * Registration form and user management +* Online visualization of eNanoMapper specification documents + + +* Maintenance for scripts to query the eNM ontology at purl.enanomapper.net + (e.g. ) + * LDAP user database server and replication server - -* eNanoMapper specification documents online visualization - -* Blog entries on eNanoMapper IST specific technical implementation +* Blog entries with technical details about eNanoMapper implementations diff --git a/markdown_blocks/services_lazar-rest.md b/markdown_blocks/services_lazar-rest.md index 12f80a3..9a1b028 100644 --- a/markdown_blocks/services_lazar-rest.md +++ b/markdown_blocks/services_lazar-rest.md @@ -1,22 +1,20 @@ -The nano-lazar Rest API interface provides a Restful web service. It is the web service implementation of -the nano-lazar Ruby API for obtaining information on data in the nano-lazar framework and for -performing predictions and descriptor calculations. +`lazar-rest` provides an eNanoMapper compatible REST API for the `nano-lazar` read-across framework -* Nano-lazar REST API GUI. Swagger UI based documentation for API visualization and interaction. - \ +* `lazar-rest` Swagger UI documentation for API visualization and interaction. \cite{rautenberg_micha_2016_187328} -* Nano-lazar Swagger API definition file +* `lazar-rest` Swagger API definition file -* Nano-lazar REST API services source code repository +* `lazar-rest` source code -* Nano-lazar REST API services gem library\cite{rautenberg_micha_2016_187328} +* `lazar-rest` Ruby gem library -* Nano-lazar REST API services Rubydocs gem library documentation +* `lazar-rest` issue tracker + + +* `lazar-rest` API documentation -* Nano-lazar REST API issue tracker - \ No newline at end of file diff --git a/markdown_blocks/services_lazar.md b/markdown_blocks/services_lazar.md index fa870e9..e63888d 100644 --- a/markdown_blocks/services_lazar.md +++ b/markdown_blocks/services_lazar.md @@ -1,14 +1,19 @@ -* Lazar Ruby gem library\cite{helma_christoph_2016_215483} - - -* Lazar toxicity prediction UI - +`lazar` is a framework for read-across predictions. Within eNanoMapper `lazar` was extended with interfaces for the eNanoMapper infrastructure and capabilities to predict nanomaterial toxicities. -* Lazar (source code) +* `lazar` source code \cite{helma_christoph_2016_215483} - -* Lazar issue tracker + +* `lazar` Ruby gem library + + +* `lazar` issue tracker -* Lazar Rubydocs gem library documentation - \ No newline at end of file +- `lazar` methodology and validation + + +* `lazar` tutorial + + +* `lazar` API documentation + diff --git a/markdown_blocks/services_nano-lazar-paper.md b/markdown_blocks/services_nano-lazar-paper.md index dca676a..c61390f 100644 --- a/markdown_blocks/services_nano-lazar-paper.md +++ b/markdown_blocks/services_nano-lazar-paper.md @@ -1,7 +1,13 @@ -IST +Detailed description of `nano-lazar` methods and validation results. Results can be reproduced by external researchers with the accompanying docker image. * Source code for nano-lazar publication (and oral presentations). -* Dockerized reproducible nano-lazar paper generation. - \ No newline at end of file +* Manuscript submitted to Frontiers in Pharmacology + + +* Tutorial for repeating `nano-lazar` validation experiments + + +* Docker image for inspection and reproduction of validation experiments + diff --git a/markdown_blocks/services_nano-lazar.md b/markdown_blocks/services_nano-lazar.md index 385654a..3122fda 100644 --- a/markdown_blocks/services_nano-lazar.md +++ b/markdown_blocks/services_nano-lazar.md @@ -1,12 +1,16 @@ -* Nano-lazar for toxicity predictions - graphical user interface\cite{gebele_denis_2017_250818}. - \ +The `nano-lazar` GUI provides a public webinterface for `nano-lazar` models + +* `nano-lazar` public webinterface \cite{gebele_denis_2017_250818}. -* Nano-lazar source code repository +* `nano-lazar` source code - -* Nano-lazar Rubydocs gem library documentation - -* Nano-lazar REST API issue tracker - \ No newline at end of file +* `nano-lazar` Ruby gem library + + +* `nano-lazar` issue tracker + + +* `nano-lazar` API documentation + diff --git a/markdown_blocks/services_ontoviewer.md b/markdown_blocks/services_ontoviewer.md index ab4cd6c..d50c2d7 100644 --- a/markdown_blocks/services_ontoviewer.md +++ b/markdown_blocks/services_ontoviewer.md @@ -1,10 +1,10 @@ -The eNanoMapper ontology viewer application\cite{gebele_denis_2017_259384} visualizes SPARQL query results from eNM ontologies ad data. +The eNanoMapper ontology viewer visualizes SPARQL query results from eNM ontologies and data. -* eNanoMapper ontology viewer +* eNanoMapper ontology viewer \cite{gebele_denis_2017_259384} -* eNanoMapper ontology viewer source code repository +* eNanoMapper ontology viewer source code -* eNanoMapper ontology viewer issues +* eNanoMapper ontology viewer issue tracker diff --git a/markdown_blocks/services_qsar-report.md b/markdown_blocks/services_qsar-report.md index a347992..d29a97d 100644 --- a/markdown_blocks/services_qsar-report.md +++ b/markdown_blocks/services_qsar-report.md @@ -1,16 +1,16 @@ -The QSAR-report Ruby gem library was developed to extend nano-lazar with QMRF and QPRF reporting features. +QMRF and QPRF reporting features for `nano-lazar`. This library is accessible from the `nano-lazar` GUI and the `lazar-rest` webservices. -* QSAR report - Ruby gem library\cite{rautenberg_micha_2016_179038} for QMRF and QPRF reporting - - -* QSAR report - Rubydoc documentation - - -* QSAR report - Ruby gem library source code +* `qsar-report` source code \cite{rautenberg_micha_2016_179038} -* QSAR report - Ruby gem library issue tracker +* `qsar-report` Ruby gem library + + +* `qsar-report` issue tracker -* QSAR report - Tutorial - \ No newline at end of file +* `qsar-report` tutorial + + +* `qsar-report` API documentation + diff --git a/markdown_blocks/services_sparql.md b/markdown_blocks/services_sparql.md index 0d89a0f..b2a9562 100644 --- a/markdown_blocks/services_sparql.md +++ b/markdown_blocks/services_sparql.md @@ -1,7 +1,7 @@ -A SPARQL query interface for eNanoMapper data and ontologies has been established. +SPARQL query interface for eNanoMapper data and ontologies * SPARQL endpoint -* Documentation in "Deliverable 3.2 Data Management System with extended search capabilities" - 3.2.3.1. SPARQL endpoint +* Documentation diff --git a/markdown_blocks/services_summary.md b/markdown_blocks/services_summary.md index 3b7305c..9f13628 100644 --- a/markdown_blocks/services_summary.md +++ b/markdown_blocks/services_summary.md @@ -1,6 +1,6 @@ During the eNanoMapper project *in silico* toxicologies (IST) public server infrastructure was adapted to the requirements of the eNanoMapper project and -augmented with new developments. This poster will give a comprehensive overview -all IST resources developed within eNanoMapper. Each service will be presented +augmented with new developments. This poster gives a comprehensive overview of +all IST resources developed within eNanoMapper. Each service is presented with a brief description and links to the public interface, source code, documentation and download links for self-contained docker images. -- cgit v1.2.3