From f95698678993f17eaae927a82112a0b8535fa3eb Mon Sep 17 00:00:00 2001 From: Etienne Rey-bethbeder Date: Thu, 9 Mar 2023 15:07:36 +0100 Subject: [PATCH] BIENTOT FINI POTO PAVAAAARRDDDD --- builtins/cd.o | Bin 0 -> 3688 bytes builtins/echo.o | Bin 0 -> 4240 bytes builtins/env.c | 13 +- builtins/env.o | Bin 0 -> 3416 bytes builtins/exit.c | 4 +- builtins/exit.o | Bin 0 -> 3680 bytes builtins/export.c | 42 +- builtins/export.o | Bin 0 -> 6728 bytes builtins/pwd.o | Bin 0 -> 3320 bytes builtins/unset.o | Bin 0 -> 3792 bytes cmd.o | Bin 0 -> 4632 bytes cmds.o | Bin 0 -> 6848 bytes env.c | 4 +- env.o | Bin 0 -> 6576 bytes env2.o | Bin 0 -> 5312 bytes env3.c | 25 +- env3.o | Bin 0 -> 6152 bytes env_fill.o | Bin 0 -> 7624 bytes execution.o | Bin 0 -> 9952 bytes file.o | Bin 0 -> 4200 bytes heredoc.o | Bin 0 -> 5064 bytes infile.o | Bin 0 -> 8328 bytes libftx/extra/extra.a | Bin 0 -> 44504 bytes libftx/extra/ft_contain_only.o | Bin 0 -> 3216 bytes libftx/extra/ft_freer.o | Bin 0 -> 4960 bytes libftx/extra/ft_is_in.o | Bin 0 -> 2392 bytes libftx/extra/ft_random_generator.o | Bin 0 -> 3496 bytes libftx/extra/ft_strchri.o | Bin 0 -> 2872 bytes libftx/extra/ft_strcmp.o | Bin 0 -> 2440 bytes libftx/extra/ft_strfjoin.o | Bin 0 -> 3352 bytes libftx/extra/ft_strgen.o | Bin 0 -> 2776 bytes libftx/extra/ft_strmerger.o | Bin 0 -> 4112 bytes libftx/extra/ft_strndup.o | Bin 0 -> 2888 bytes libftx/extra/ft_swap.o | Bin 0 -> 3072 bytes libftx/extra/ft_tabrealloc.o | Bin 0 -> 2920 bytes libftx/extra/ft_ultoa_base.o | Bin 0 -> 4736 bytes libftx/gnl/get_next_line.a | Bin 0 -> 6014 bytes libftx/gnl/get_next_line.o | Bin 0 -> 5800 bytes libftx/libft/ft_atoi.o | Bin 0 -> 2968 bytes libftx/libft/ft_bzero.o | Bin 0 -> 2448 bytes libftx/libft/ft_calloc.o | Bin 0 -> 2744 bytes libftx/libft/ft_isalnum.o | Bin 0 -> 2272 bytes libftx/libft/ft_isalpha.o | Bin 0 -> 2232 bytes libftx/libft/ft_isascii.o | Bin 0 -> 2192 bytes libftx/libft/ft_isdigit.o | Bin 0 -> 2192 bytes libftx/libft/ft_isprint.o | Bin 0 -> 2184 bytes libftx/libft/ft_itoa.o | Bin 0 -> 3488 bytes libftx/libft/ft_lstadd_back.o | Bin 0 -> 2736 bytes libftx/libft/ft_lstadd_front.o | Bin 0 -> 2480 bytes libftx/libft/ft_lstclear.o | Bin 0 -> 2760 bytes libftx/libft/ft_lstdelone.o | Bin 0 -> 2664 bytes libftx/libft/ft_lstiter.o | Bin 0 -> 2504 bytes libftx/libft/ft_lstlast.o | Bin 0 -> 2448 bytes libftx/libft/ft_lstmap.o | Bin 0 -> 3168 bytes libftx/libft/ft_lstnew.o | Bin 0 -> 2624 bytes libftx/libft/ft_lstsize.o | Bin 0 -> 2512 bytes libftx/libft/ft_memchr.o | Bin 0 -> 2752 bytes libftx/libft/ft_memcmp.o | Bin 0 -> 2856 bytes libftx/libft/ft_memcpy.o | Bin 0 -> 2744 bytes libftx/libft/ft_memmove.o | Bin 0 -> 2968 bytes libftx/libft/ft_memset.o | Bin 0 -> 2624 bytes libftx/libft/ft_putchar_fd.o | Bin 0 -> 2384 bytes libftx/libft/ft_putendl_fd.o | Bin 0 -> 2504 bytes libftx/libft/ft_putnbr_fd.o | Bin 0 -> 2752 bytes libftx/libft/ft_putstr_fd.o | Bin 0 -> 2464 bytes libftx/libft/ft_split.o | Bin 0 -> 5312 bytes libftx/libft/ft_strchr.o | Bin 0 -> 2352 bytes libftx/libft/ft_strdup.o | Bin 0 -> 2832 bytes libftx/libft/ft_striteri.o | Bin 0 -> 2616 bytes libftx/libft/ft_strjoin.o | Bin 0 -> 3448 bytes libftx/libft/ft_strlcat.o | Bin 0 -> 2928 bytes libftx/libft/ft_strlcpy.o | Bin 0 -> 2824 bytes libftx/libft/ft_strlen.o | Bin 0 -> 2480 bytes libftx/libft/ft_strmapi.o | Bin 0 -> 3016 bytes libftx/libft/ft_strncmp.o | Bin 0 -> 2856 bytes libftx/libft/ft_strnstr.o | Bin 0 -> 3088 bytes libftx/libft/ft_strrchr.o | Bin 0 -> 2744 bytes libftx/libft/ft_strtrim.o | Bin 0 -> 3752 bytes libftx/libft/ft_substr.o | Bin 0 -> 3320 bytes libftx/libft/ft_tolower.o | Bin 0 -> 2200 bytes libftx/libft/ft_toupper.o | Bin 0 -> 2200 bytes libftx/libft/libft.a | Bin 0 -> 122044 bytes libftx/libftx.a | Bin 0 -> 6088 bytes libftx/printf/ft_dprintX.o | Bin 0 -> 2544 bytes libftx/printf/ft_dprintarg.o | Bin 0 -> 4776 bytes libftx/printf/ft_dprintflag.o | Bin 0 -> 3024 bytes libftx/printf/ft_dprintl_base.o | Bin 0 -> 2920 bytes libftx/printf/ft_dprintptr.o | Bin 0 -> 2944 bytes libftx/printf/ft_dprintstrtab.o | Bin 0 -> 2872 bytes libftx/printf/ft_dprintul.o | Bin 0 -> 2536 bytes libftx/printf/ft_dprintul_base.o | Bin 0 -> 4640 bytes libftx/printf/ft_dprintx.o | Bin 0 -> 2528 bytes libftx/printf/ft_eprintf.o | Bin 0 -> 3376 bytes libftx/printf/ft_isarg.o | Bin 0 -> 2576 bytes libftx/printf/ft_isdigit.o | Bin 0 -> 2184 bytes libftx/printf/ft_printf.a | Bin 0 -> 56952 bytes libftx/printf/ft_printf.o | Bin 0 -> 4120 bytes libftx/printf/ft_putchar_fd.o | Bin 0 -> 2384 bytes libftx/printf/ft_putstr_fd.o | Bin 0 -> 2712 bytes libftx/printf/ft_skipflag.o | Bin 0 -> 2880 bytes libftx/printf/ft_strlen.o | Bin 0 -> 2488 bytes libftx/printf/ft_vdprintf.o | Bin 0 -> 3856 bytes main.o | Bin 0 -> 8816 bytes minishell | Bin 0 -> 119456 bytes minishell.h | 3 +- outfile.o | Bin 0 -> 8128 bytes spacer.o | Bin 0 -> 6264 bytes syntatics.o | Bin 0 -> 6440 bytes test | 999 +++++++++++++++++++++++++++++ test2 | 1 + utils/ft_atoi_check.o | Bin 0 -> 3344 bytes utils/ft_is_in_quote.o | Bin 0 -> 2944 bytes utils/ft_quote_remover.o | Bin 0 -> 3304 bytes utils/ft_split_quoted.o | Bin 0 -> 5216 bytes utils/ft_str_is_empty.o | Bin 0 -> 2536 bytes utils/ft_strnchr.o | Bin 0 -> 2776 bytes utils/ft_strncpy.o | Bin 0 -> 2568 bytes utils/ft_strreplace.o | Bin 0 -> 3448 bytes utils/ft_strshift.o | Bin 0 -> 2696 bytes 119 files changed, 1057 insertions(+), 34 deletions(-) create mode 100644 builtins/cd.o create mode 100644 builtins/echo.o create mode 100644 builtins/env.o create mode 100644 builtins/exit.o create mode 100644 builtins/export.o create mode 100644 builtins/pwd.o create mode 100644 builtins/unset.o create mode 100644 cmd.o create mode 100644 cmds.o create mode 100644 env.o create mode 100644 env2.o create mode 100644 env3.o create mode 100644 env_fill.o create mode 100644 execution.o create mode 100644 file.o create mode 100644 heredoc.o create mode 100644 infile.o create mode 100644 libftx/extra/extra.a create mode 100644 libftx/extra/ft_contain_only.o create mode 100644 libftx/extra/ft_freer.o create mode 100644 libftx/extra/ft_is_in.o create mode 100644 libftx/extra/ft_random_generator.o create mode 100644 libftx/extra/ft_strchri.o create mode 100644 libftx/extra/ft_strcmp.o create mode 100644 libftx/extra/ft_strfjoin.o create mode 100644 libftx/extra/ft_strgen.o create mode 100644 libftx/extra/ft_strmerger.o create mode 100644 libftx/extra/ft_strndup.o create mode 100644 libftx/extra/ft_swap.o create mode 100644 libftx/extra/ft_tabrealloc.o create mode 100644 libftx/extra/ft_ultoa_base.o create mode 100644 libftx/gnl/get_next_line.a create mode 100644 libftx/gnl/get_next_line.o create mode 100644 libftx/libft/ft_atoi.o create mode 100644 libftx/libft/ft_bzero.o create mode 100644 libftx/libft/ft_calloc.o create mode 100644 libftx/libft/ft_isalnum.o create mode 100644 libftx/libft/ft_isalpha.o create mode 100644 libftx/libft/ft_isascii.o create mode 100644 libftx/libft/ft_isdigit.o create mode 100644 libftx/libft/ft_isprint.o create mode 100644 libftx/libft/ft_itoa.o create mode 100644 libftx/libft/ft_lstadd_back.o create mode 100644 libftx/libft/ft_lstadd_front.o create mode 100644 libftx/libft/ft_lstclear.o create mode 100644 libftx/libft/ft_lstdelone.o create mode 100644 libftx/libft/ft_lstiter.o create mode 100644 libftx/libft/ft_lstlast.o create mode 100644 libftx/libft/ft_lstmap.o create mode 100644 libftx/libft/ft_lstnew.o create mode 100644 libftx/libft/ft_lstsize.o create mode 100644 libftx/libft/ft_memchr.o create mode 100644 libftx/libft/ft_memcmp.o create mode 100644 libftx/libft/ft_memcpy.o create mode 100644 libftx/libft/ft_memmove.o create mode 100644 libftx/libft/ft_memset.o create mode 100644 libftx/libft/ft_putchar_fd.o create mode 100644 libftx/libft/ft_putendl_fd.o create mode 100644 libftx/libft/ft_putnbr_fd.o create mode 100644 libftx/libft/ft_putstr_fd.o create mode 100644 libftx/libft/ft_split.o create mode 100644 libftx/libft/ft_strchr.o create mode 100644 libftx/libft/ft_strdup.o create mode 100644 libftx/libft/ft_striteri.o create mode 100644 libftx/libft/ft_strjoin.o create mode 100644 libftx/libft/ft_strlcat.o create mode 100644 libftx/libft/ft_strlcpy.o create mode 100644 libftx/libft/ft_strlen.o create mode 100644 libftx/libft/ft_strmapi.o create mode 100644 libftx/libft/ft_strncmp.o create mode 100644 libftx/libft/ft_strnstr.o create mode 100644 libftx/libft/ft_strrchr.o create mode 100644 libftx/libft/ft_strtrim.o create mode 100644 libftx/libft/ft_substr.o create mode 100644 libftx/libft/ft_tolower.o create mode 100644 libftx/libft/ft_toupper.o create mode 100644 libftx/libft/libft.a create mode 100644 libftx/libftx.a create mode 100644 libftx/printf/ft_dprintX.o create mode 100644 libftx/printf/ft_dprintarg.o create mode 100644 libftx/printf/ft_dprintflag.o create mode 100644 libftx/printf/ft_dprintl_base.o create mode 100644 libftx/printf/ft_dprintptr.o create mode 100644 libftx/printf/ft_dprintstrtab.o create mode 100644 libftx/printf/ft_dprintul.o create mode 100644 libftx/printf/ft_dprintul_base.o create mode 100644 libftx/printf/ft_dprintx.o create mode 100644 libftx/printf/ft_eprintf.o create mode 100644 libftx/printf/ft_isarg.o create mode 100644 libftx/printf/ft_isdigit.o create mode 100644 libftx/printf/ft_printf.a create mode 100644 libftx/printf/ft_printf.o create mode 100644 libftx/printf/ft_putchar_fd.o create mode 100644 libftx/printf/ft_putstr_fd.o create mode 100644 libftx/printf/ft_skipflag.o create mode 100644 libftx/printf/ft_strlen.o create mode 100644 libftx/printf/ft_vdprintf.o create mode 100644 main.o create mode 100755 minishell create mode 100644 outfile.o create mode 100644 spacer.o create mode 100644 syntatics.o create mode 100644 test create mode 100644 test2 create mode 100644 utils/ft_atoi_check.o create mode 100644 utils/ft_is_in_quote.o create mode 100644 utils/ft_quote_remover.o create mode 100644 utils/ft_split_quoted.o create mode 100644 utils/ft_str_is_empty.o create mode 100644 utils/ft_strnchr.o create mode 100644 utils/ft_strncpy.o create mode 100644 utils/ft_strreplace.o create mode 100644 utils/ft_strshift.o diff --git a/builtins/cd.o b/builtins/cd.o new file mode 100644 index 0000000000000000000000000000000000000000..f3f6eabf7f0d49ffad5c23769e67bfc72c6671df GIT binary patch literal 3688 zcmbuBTZkJ~7{|X!awgf`Zn779mlCMO3f)O|yG3nFT`AFYTS^ftTTr%>WO8YfnPoCb zcMIFrX1#><(kh7JlOW==J_xn6R*QWQYQYB=d?{F=g?*?#Em)}EcjlaQc9J0C2RY|_ zzw`gjZO$cUQ-@v%C<;hZU>`j4Bn8;s`=~s@ixV)2%A@J#AL+(>ofN->faC7gP7s zjoApq7Pg`4Y5){;f!G`SxnAfvS>twuDct)U6aQ#7B3m_@vk20QwWah`EO2u> zZKiH7&M%Ad4OHB2aU78A@E+G

bLksf~M2dEvi}VKMa}-MF57?T2h`cige8cttno z;<{a^RSeSsO@qT$yjshijOR;bBW~I8T*)@Fj%Ck50+c~zTXdKOqXX+VM+cQ56(A79 z?t>cE45jFW^$x~h-Pl?TA8VX#TalHlCE4v=mvB1US+#77V-W2zS$OD`VDnem$ z!tY6-;vUS@Os5vlmUXibuN!u?WSQ~NF)gVjM|ReD<>;9)^v1Pakg1i*PRXn$vNiAfqQZh@`qERkG#i|?Ad8?c=Y$)O9 z!0%FpY*Du%pMw)t$%Gl*DZ+mn5lsso<0-Du>6bv69Z)u}2}dsA$~}&peq^+g@O*UO z&A|SCHTbfE68H&G2XSY){9^YBMy2ZdN4kuPO8UPGRG}#W_{A91Y8Q0V8A=~-T z!^0l_wcxTHy0giyxmnwIeidBm<+yKq^z@X;ewRI*zOv*i9^T{Oj2cFx`Fh8>-ot4Z z$#!;h;ZF-r8LhLNSIVRJt~0;q z^=jmuX{<1_l^GH1ic4nR0=JGoBW^M8DVGfsG}Cen?Zv}KN2-pVJqcR5T(3;)xg0)u z1vq7w9Aj0h<&r6ZQJl`(dc}aeZ5U86oavcUIrm-Aa6pcp0j)Y$;kj+)bVnyVs*Q^E z_`lgN*nsywk?kevaH0L>X022lgO*S4BQfuurOF9P(B!@5dhK^Joh9$NY3W3RABzs@ zPN)4KUxE!n_&eq#k^4hn_(a6*l0f7F^B6+pOC}^dyD8vtFT}E6d!z%S5KU~}kI3Kw<04+5`SL1F8aUdg;>U1Dwq3+aJ;jsx`~MA@f9*(j RK@94g2%wC%lx$Cq>mNlt(Y62p literal 0 HcmV?d00001 diff --git a/builtins/echo.o b/builtins/echo.o new file mode 100644 index 0000000000000000000000000000000000000000..27627eac3955d0c8c31ed97def837363916e5bef GIT binary patch literal 4240 zcmbtWU1(cX96vWV=O#_s+k-NU($)s$89SuxSUW0m~zL;kS;dTT|f`^Ri1?=(v4mzR1js|`;O zmS4|bZ`BK9OM1a9&W9IQK=kSG(sb8i{#&WgwW!CgjEB5Lo!kweFLOMIa&8*j2qSr(Z;XVzK#Kkjn=Uauw&< zazZTBPluQF{CBNAm*Z-~Bod5i^US#?ncPvX&0oG1$qT0(zA#p6&rKAW=>gX35Sy1R{*%(I&L?_?AG0c z0lX3x!W}_fGkpwgU`thsQ3F-+7+ZOaSDBqaR>ZCN%Y_&zrfWn?Kvw)F77-Q>I5!&< z$%B=8P~pK^$dRa-&Y8hjDw6IG4jY+laxfiiYu8$}*5-#zrffUe4rqtAlSIvADwj-W zTZ~v@P>Ye4bUfRV7#uKw$rz)}Q6txq%S47F=19vvGm|y5JK9?YlIdhNVWd(dneELE zMPdd?rgJ2gFk;7hBbk14zyOF5NetLXhGcUYOHGm_-iI*z9}C6K>hT34y?mHRBh}KD zN{{ypEY^L%;e&!7lsq1&e%-aNN^uQ?g{2E24}u?ZRsUH@|041r_>oF_xl%%dqrkbz zc2G!?^jDw?2Q-665(`LJzp#R+AQiC5ERj`-`h4eTrP4|3Cg}P&-PlQk6LedgHg(eG z3ECQ`?VVIs@>Egc)Z0m`Cum)quIrT3XK1xt8=@}dIZ8&U+xI7}FliM8syIVkA?i`i z(SR~b*M;cDIBl4vo)Bz`e(L&~*1SNQlnJ_}lPa@bjj=xPbAeVeDe-QjUSE;AO$-<) z1(cOfX}!`-eX~@a0H+!1haj@@4Xt{f)`D3h)CFl~X^oPgn<2G3M7_#UR+9?T5Uq!I zH@Njvs)WGRyN9~u6W!D!`@5k*C>>NXs9d0Od0{2RLX{ckfOC@@D`iyh%PcMN8nw)i zfHfolnNTOiuuNcslo6TWEwxrQ1FVI-@$L8E zKLH-|3SoO3!0Ygoi*uVB;$eta)-v8ZAPTP!htjD8bCvUG59evg{`{*rzK1SvylzpjFVPd?hwugBjI z9lXi$4F~@g$3Z^gH?e=04hKKZ@i7N4`rW~Ku?`%PN{`=HQAM;qBWm{dMxxP-F-)|K zk&0+JW8|)jP>T%?up2R+>xG*yjh7+!#VNZdEpIDeG94czmTk&N6D>WMGqn9r9cj+y zBC+E{OQnVfdLw;(aI^Q56PaYr;K?obR5C3HBheerL~vZDiR%nbHLauKB4H2gpRf8`1Uu%9;~UK|e_kfJq|-nia&sRw|Z{WppF4t#;& zUpl)u&qVx_X+IZAwq9$t#0m7nP@E>tV|Ehe zPTRv}ICQzm{XGr`2P9o!Tdw~l-e@(CgZ*PK&i?Vd!ke2{Za z|MR>k?O*&8wwQL)pUX8>#`Xh?8{%!2LR{tkBPGU~i2eorE=+UhPZx634gJF zW`GlG!A;q4h+j%Q4y6MUJg3X$*Li-C2lL}S>dcS*$p=>kVHk&}B*(bF*uUtH;>`aO VaL%next != NULL) { - ft_putstr_fd(((t_env *)(current->content))->key, fd); - ft_putstr_fd("=", fd); - ft_putstr_fd(((t_env *)(current->content))->value, fd); - write(fd, "\n", 1); + if (((t_env *)(current->content))->original) + { + ft_putstr_fd(((t_env *)(current->content))->key, fd); + ft_putstr_fd("=", fd); + ft_putstr_fd(((t_env *)(current->content))->value, fd); + write(fd, "\n", 1); + } current = current->next; } return (0); diff --git a/builtins/env.o b/builtins/env.o new file mode 100644 index 0000000000000000000000000000000000000000..784aae66a6cda28dc1553fe4cee6cea472bba892 GIT binary patch literal 3416 zcmbtWPiP!v6n`_bv)Sx+H=9J-)E3!8iy&k+i3tX~t&v*Y#8TTzr4=>KZf3JXXJ^Cg z%ywIBt)wV12rXWUDAL0E%$h4PX<6ARkU0t6Di3oXu0`OQfARMunX0FnGA|41Cx#<=fKd4^nL>ko|H3Hd|Rxi<1pblRnrqQT< zk3-@|(vh_1!-eIw=fVX%LeP4bJ>k64;J!yRD+-wv8$j-CCXad>stOR< z5!7fp6;B^|NZOF1XVbsxTapWUx}*;#pVhaas2~@u*^o`9_Mz8;p21{E?bL#nIj*K~cVgoE@b?f;z^#pbW(~T_ z?lEh8*LpxyGzi~W8AiN&NqTG=WP5Z{-oYn-4;r2ijKtP+g?*Oq<6mYwbp^Vqe`D(+ zI>I>Bg$_s1i!8|gbm56)ydA+|Pp3ShQWqE}e`@Vw-tZQqp2ml4f<&hxJYKyKb`bbD z>sw>E$Vt$HF`V+0SbvB)?N_Xkpc%$ReyTf>h!gl*5e!c;7x+om4@)@S|82?tUDhv4_y??iB;jAO{+Wb}@8k~>{yFPEN%$wM|19C+{k$pR zAG2OyPG=H7m++H;n7rSCLD+1o#*$SDmKV)R#k1OAc$Q-tKDAe)+H5qaow7&E_t+do z*lw)}hTHTl6v>S`&(h`0WekcY*?)^G~rZ*e@)^djmn_OC&h{ zB6a1^z{7RsYjF@|5hviieK4}Q?08o=GMD3L5tr9Uu6ZtKo?m9#KSA>TsgF_434G#Y zbKG}v5M?pH;JX-;<0tr~F#aWeK9)1?`bxi-s*f-AC0xr2FSncGRgS0n#7XR5VCPWi zSHA)~iuZ)-M`tbK1@0jxYJp;xF7y1ix=19*zVtooH~(y(`LpON&wm0j?cfHr?eq9_ h=`cHry3qQG +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/02/24 10:17:59 by erey-bet #+# #+# */ -/* Updated: 2023/02/28 14:55:39 by erey-bet ### ########.fr */ +/* Updated: 2023/02/28 15:06:50 by erey-bet ### ########.fr */ /* */ /* ************************************************************************** */ @@ -34,7 +34,7 @@ int ft_exit(char **args) if (err == 1) return (error(err, "numeric argument required", args[0])); if (args[1] != NULL) - return (error(-1, "too many arguments", NULL)); + return (error(1, "too many arguments", NULL)); if (err > 0) return(error(err, "numeric argument required", args[0])); return ((ft_atoi(args[0]) % 256 + 256) % 256); diff --git a/builtins/exit.o b/builtins/exit.o new file mode 100644 index 0000000000000000000000000000000000000000..ae61ad932a8c991c0b178aed400614b12875f778 GIT binary patch literal 3680 zcmbVPU2NM_6h5|l-K^P?w4KIA2bkZ1Se>;iP?c?TngZDvNPs#;La1|6x3QKu#j#6= z$QWb;q9Vk^%K-870=yt0Bm`m;9omq1;Du+TNlY42C-tH50*FfE9Q$6^bCU-+t?#+# zJKs6?-edc?eK~jdQCX5ehy?p!%@Qbp*0VMr_ow5~i_D39>$iM!SC+pL@nde4c-PM1;CmKEmk4O(mYa=bDSi5OG!`1mfiII^BqzzzSsYrq)oUkF2RY{x zkUpiMd4cw}MjiUTb#ci;i0DtD#>|j@t7GPUoO%ysq22O5eM@J4_s_puKQo$z=EUkk zZZ+ThL3{2}`nHo86rQ)$Sk1S*m3(VrDSv?+B#SZ*{vq?t#u9FM2ip0C#?qSO0#Viu za83y$78)ySv~XG5tD25g(hO$?XSS<3=JTHAm{Z`^YFgE>kB6>0R4v=8m(5CLOf%;# zSA#JPq+aRnR6kQvnVSYuy;7eFAg6IrMMqDcI=)p&jU^vW?$~y)|B-C~T?}Ln9qb2S zBR81p`XGSryFf|pOD2;5i8N3Y&^_Pl?Fb+u}eNP z8(5#CV)B`aZ{0#Zz*7W56dsl4Q7@545>}8S{Uu_Uu^jlwf^HgESAvYh*8))SnJ#*^ z>uIHmVb5rDrc<|Swl*}Z@6vY-?)H4=(1~HRM)U`u=vfulvg=u@xL$&+JzdY1YgH2w z$2>k*G~KN07;}aW+rj5M&ZJMlKweLG@wkx=Dfe=75ud|;C*UqwdX+e0{t zU&7FT%=ceLybI|0mL%z))Fx7NtMQUVNdS0F$N?MZ$@fJWkeJ%@9ZRW)82&2i4BK*^ zB~+KG1=gePWh$b*i0)SRu%yeBtB5oMdVwX;p{NNLnN6RWL0}k}JwCG^(IlqYUSM~8 z$nGmJ`Bf%iPEcn4U~*3)%Tftip};a~8512+KVs>`DJJ8ZJvf)uJ+g|Y5u5Fxze2nV ze!m`fKZt;gKP%kf*N)E>#M_C&-<7ye0TzdRTLHX5ZA5`h>(FC}WY(boPjtZVM7%Gu zPyg9K?6VI1S32N2;w01sHsG~-J&?xIzUGq?S>9p`cWMee5@R1J}z z@f#=jgPhmTapGg63i&%b;19*}(3gWG7vWP^6YD+`!K3*_qoU7e^lpldNVwqO6l))d zz{UQzL~y@xaa+_$@b_~3R<3DVVT;B2&JOq($3-5$*&>#Y;U~C#B!<7i?IPD=-S~ST z^3QXg$R}`-=gnAtVZRr{-{JPBG2G?$H!-})ZH;SsBct^hkKtnfBODj!;wE;rL~p z=yuID^~au^7_7Sn+T06zr7~BYG^VET>ofx|IF@VPkg8(Y0x-*y(~eO!DR$O#ap}qF zDbbpBG+m*!CNXrJ+ea47JE!QUrAkECaTdI`zaK*3L_X^CNO3-vKycfSC*7Tbwx zF^^KOaL|i_IFEDpx4|gn2yGT+F;L+ckEd^VyYnCAP2?;Opt?~>;^)5~F{13kD=M4$ zO?^KK;#{mRH1(%;@n7(G@tqK9M4ZsiMsf-c>C5dNsy5sY0&JF-i$Z<*mB$wZz_mEP zfa!mccJ=#<6GdI9e$@9xym)@7Z;7+uG?Y=E^h$^XlQ{QvgxjruFMof;Icontent))->key, fd); - ft_putstr_fd("=", fd); - write(fd, "\"", 1); - ft_putstr_fd(((t_env *)(current->content))->value, fd); - write(fd, "\"\n", 2); + if (((t_env *)(current->content))->value != NULL) + { + ft_putstr_fd("=", fd); + write(fd, "\"", 1); + ft_putstr_fd(((t_env *)(current->content))->value, fd); + write(fd, "\"\n", 2); + } + else + write(fd, "\n", 2); current = current->next; } } -int add_export(t_list **env, char *args, int fd, int *err) +int add_export(t_list **env, char *args, int fd) { char *key; char *value; key = args; - value = ""; if (ft_strchr(args, '=') != NULL) { key = ft_strndup(args, ft_strnchr(args, '=')); if (key == NULL) return (1); if (ft_strlen(key) == 0) + return (error(args, fd)); + if (possible_key(key) == 2) { - error(args, fd); - return (1); + key[ft_strlen(key) - 1] = '\0'; + value = ft_strjoin(get_value_by_key(key, env), ft_strchr(args, '=') + 1); } - value = ft_strchr(args, '=') + 1; + else + value = ft_strchr(args, '=') + 1; + } + else + { + value = get_value_by_key(key, env); + if (ft_strlen(value) == 0) + value = NULL; + if(possible_key(key) == 2) + return (error(key, fd)); } if (!possible_key(key)) - { - *err = error(key, fd); - return (1); - } + return (error(key, fd)); create_value_by_key_dup(key, value, env); return (0); } @@ -77,7 +89,7 @@ int export(t_list **env, char **args, int fd) { i = -1; while (args[++i]) - if (add_export(env, args[i], fd, &err) == 1) + if (add_export(env, args[i], fd) == 1) err = 1; } return (err); diff --git a/builtins/export.o b/builtins/export.o new file mode 100644 index 0000000000000000000000000000000000000000..2030bb518e3c7ac82645a98995409ac1343420d6 GIT binary patch literal 6728 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 literal 0 HcmV?d00001 diff --git a/builtins/pwd.o b/builtins/pwd.o new file mode 100644 index 0000000000000000000000000000000000000000..ed3ba0b642569f102d5edc539216ef775dd213b5 GIT binary patch literal 3320 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 Au>b%7 literal 0 HcmV?d00001 diff --git a/cmd.o b/cmd.o new file mode 100644 index 0000000000000000000000000000000000000000..8c488521dac0530c8051929109bfe8e7366cd245 GIT binary patch literal 4632 zcmbtYZ)_Y_5ue??J)iI5^Ttk%+l2I*v;rZ#m!t+otw~))M>kGO{~#k5FqiY)p1tbc zp1Iw%u91?IUI~~}OC$J(1d#v<5E7B13Pe=3RjbBdD)|FQNJuE6sz}s+NW}*#h-7Bo z&a<~K*AIx1_Gaccf8Ol8x9>gsT;zW3VG&lx3nnVF6i#zhH5NE+c&v|G4J*W49 z<*c9i$mv%;a@H$1k>7NBT?F^rZq@ z`bT&0ZUzmzq@kN(%bA;r(0j{Te6wkf-u(i)05o6b`ew1do6dTC-C3W%=Jd{7gVFC& zmaCOpRMm~k_=7cFclv;D@E7N5Wdjj{t~ve3Hk{tf2A2AafH0AS`_miAxa*Zo%(|&$ zT}-Fw&#-TQesep)`koD^e`b^4qJjgxu3-TiH=f_x+QN}>bgX9Gv66@!t2wNj>g!i- zIlZ@L7vI!&Yxfn$O`~XiYHxA3HkJj@N8!XcfH8s0C_Yel5Zjp<*NkGJkSOK|7{wFg zq#Q+C_Fhzv6$&U0jbiScjY-F{vy(~iXYPFHPJm$(bOtDSe)?l-K@B-EPC;-Pdz_(q zAt%-rb^dnx9@_LW;>H7P)J}=0N$u+&03$OtIW=21U zOvqVHC%>T_8Hj$2kM=c^bZc0@&`qR1vb=s_RcK?MBZdu0=pV>9qC~Y|RN`0qJeH2y z3i;`!Akj`G8dZcD7ld|zGNSf`&<;{Xs5wHr_ZQS0{V@I-GbAEu2e<>D7H{VvtlgdJ zKq+}^(Sds`&}nErqzq>{gYi|7!7?5f8R-3tCzA|6BfqC|pp&ohI}XU$qF>mk`K36B z;!@qO1H!Qmy_t~i> zH!4S++FC8{mXF7sFb=1Wlv`flg)6S_L$gu!0`P)}q;?#E+jZ-4R9o_0sISyIQ0pv* z5LPicMB=w8Si{9wAyu26@4FpXjXF?o2a$`p8nvhfZm=jCv zOf;rWG9jqrrx`UGZWCn#4H+Fj2IPVaOEV|(ubTPnoSDs@H1`l+F!yDb&HGR^2)$z7 zm7qC9cT4nX^A191%wa^w2({7oX>)?mxgB)I970q_NJ9>}gJvP0dl+38OamkDxMJ={ zTYkpO;PAsevxwU6Ia6OSC$lTUc5u$zj~;VoZo%AzPD2=)!O+|la|E4pqRbIYZX{Y^ z4qxM>&@wc%(fy-2X5<${5!M{$J&9suPT(jgYOy|y^C3GjkpCIc41BmX$Y@Z92av&= zs%kP|NQH!M!0j9FZ_r{5@ZS6c{4vDGu%3$?Bi16yKI050YZ#S>@EMe!*7zXY{sjDf z#EED#qYe2Mo{vP26Np4Oy|u)b2}B~C_A`lphd?A1|3L!ZmPhAlBmX=;GLN0Y)8jsp z!l~QRU+k%zgT4_-az-dOjUj1_1&L3wK9R!3hR*t3DV*}ie(h(R%1W=IX~q8~)*n>x z@3Vef!IxN<{g-vpIw1N+!bH!g9y%|He$iQ+Hz zQpA3#;J;=4vVvb?{Waz?|3%i{VJ_?ZDeHe#@ISDAL&5*e`o9!h_QB-!BlF98#uZ$y z%X<`ji1jZj_&<5PFDdv3j8_!=RmPuG@INuWsNjENysO}{U*{D3ZT6>2ACdaLKT_~F z5;yp@g70Phl7bJjUg9`f`|0&RtKb(|zrdWr)Bc5_Y12!Gm)mo#07qVsYYj#|>Q^i|THTEN~Rg3WQpfTbPlNXALQ{5CGOk5`#9+VWk9J)PUi{9YWy)ibm*K;lZ=ym4UJMx`}yfZ zD`il9X@5X$HT?~e`zptaKc`ah^8F?B1`31vca0BR`CimN+IwWYoc~u4Q)@y9HhBD> zD@H}d|8oo;-{SQz$D#45Bz64rh#8M=wUIrC&o+IQ<7FEuo=6@4UBuMhk>4s^R*;Tz L05ST;)bald5BgJf literal 0 HcmV?d00001 diff --git a/cmds.o b/cmds.o new file mode 100644 index 0000000000000000000000000000000000000000..521a224ea21e731233901e8f9920de0ec80c5c3f GIT binary patch literal 6848 zcmb_gZ){W76~FfLvtRx@34{P`Nmm#Z8+M=!(Kb+bRW_3bTDoQnl+JPNm&D9*Qu{dq zT3T8IQk1EKed;!i?aMT@O%u|j4Yd?f6)h>7Ha2Y&n=~z(Kr(AJQSCz!Lt?*k-?{el zCHXLE7v8(~{LVSQbMCp<@4cJXdi%fN_xXfsKCweoC4~wx+fg0IW)tzxf!1>mZt}pOFi>Ql8RV?W_so?bOBHc ziPYu#z-i!$1m*fXB7KgO;}?YJfDi^mvKEvDGMM$DF0(f> zvM$A|7b)+mBQaM?qOEsj|AFade2#1dicl6UCzfG&F^n5e<2`92m*yrf7wU3Fde90! z-dk=d{fnGBt4_TOU|T>**8r1csGY2u*t=2<>$w<(q)F1)QsX&+$}Lzz6-87oRD^@qR`r3j*_*=khM4)L4#yXAW#~L1QSif>-`x7gL2$;gp&`yLmx73Ki zd!2*`wFok`I?%afLe#bUjOK<0ViuylNf^yL+ez34v0*L59Ssc_Hhx;ViaG490M%Al zv{?lGI`3_NHjq0mx1B)e`!bDvV}FEKz<+Ael~xd&|J0Z(J?~0sR|>n*P*pPhrv{~T zfLH|T%lq&q&4!{!9vr_lyUuvR-AaS(*nrQts zv+3v9E`LA8uJG^vnV0_=mf|wnvlI=MF)8gi2g~YA_f}(vYhs6MW*R0ha12R~HlB@J zyLRSx=eA7phX@P(4L9qbxKZAA@Gi7abSrVu9HXaO%&|VBAQP3B%F>WLvG=ZCS7&l2d#FYD_ ztEAcQp?on=rTnT(Ph~X{pr<(2`%Dyw$Veee3=9`@PO&SMP3A_srtEwnGm-1sv^mlp z>E8HAQ7SjRx*5`z$mc|AJY9&SL^L;2h>lH++l8o|w-0R`ww8Q3Ub zB;(RZEqEP~PC7|p=ca^xFaxiNv|Sw~3Qk_6#*%r^OFPHyvYDI>T9DadqUgxpO=&zW zM$(B)j_%Na%1#xX?l%VkWeE(@~qK?dP`6AJx zlgSpMkw`R~86I&Ciin673we^F+3eK##!Z{$SZ=bYySbv7Tq;|{vZ+l4GS@pYMy!?X z0}-(cPC9LmU@V`fb-azSwadb1*40}tn4#clvpx8T=gmgg;y)2K zy(6Xi9#}kWwvwX9Y{AfvzNycw3r5WqK>dSe6U;j>Y=9KpXpU9l* zgGHH81LhP6&YN|8NMpOoia6>@W&_y$q!`2Sw5&=9li&mp-Z(EyU<6CDM%1^#M=lil z4g^8X&1IMllefx=1i(m!0XVduht0f63PfEFG(;gNEed_Tc3ubGHaZ6}AAcRTF810I zZ6$O8@$p?<{W<_Y{!Oy4{0#wni1DMmBjs-gSc>tJ=&8xyq&vhGu54dM+|J-{iW(4t zAwoJNWn+==j*p-TFJirO3H;3^@SiV%e`N{08+e;%Uh)|QjB34DJ|8c^L#MCB?CJSL zjlR0*M01BeV$seKh(~Xv#82l;Wxv6L)7PTHQ%m4K@!;P1{(TAjHsg9ehJ0SSb@1l%vIqC_e~)pU=ZweR z%cDL&sWxhiVP$6$?%lm@q(oErMpqQ-m`^xfXO*^!N6LN+%MWl*d73f~!1#ui+}s1q}~SVrXH<=HI=JtZP}JDZF+bUKTqCdS9pA76?W~C8CLBBR#oYrN3r;fiH4&ksL?W3^U3NB>$Z-O?FIJ#6$SM)-F6bX z#qyu0gwbNW*-50Kp8pPD#MzC@+ot(rMZGtaPQ_O}eU~ief1LwGlq2`bPxWuHzh)-d z +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/02/02 14:39:56 by erey-bet #+# #+# */ -/* Updated: 2023/02/23 13:34:41 by erey-bet ### ########.fr */ +/* Updated: 2023/03/09 15:06:44 by erey-bet ### ########.fr */ /* */ /* ************************************************************************** */ @@ -80,6 +80,7 @@ int create_value_by_key(char *key, char *value, t_list **head) return (1); content->key = key; content->value = value; + content->original = 0; add_sort(head, content); return (0); } @@ -104,6 +105,7 @@ t_list **init_env(char **env) return (NULL); var->key = get_key(env[i]); var->value = get_value(env[i]); + var->original = 1; add_sort(head, var); } return (head); diff --git a/env.o b/env.o new file mode 100644 index 0000000000000000000000000000000000000000..70ec9667c2f71d6e23d749ebaf4f497eb4ca4f9e GIT binary patch literal 6576 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 +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/02/17 17:25:09 by erey-bet #+# #+# */ -/* Updated: 2023/02/28 12:46:33 by erey-bet ### ########.fr */ +/* Updated: 2023/03/09 14:57:26 by erey-bet ### ########.fr */ /* */ /* ************************************************************************** */ @@ -44,19 +44,22 @@ int create_value_by_key_dup(char *key, char *value, t_list **env) char *key_dup; char *value_dup; + if (set_value_by_key(key, value, env) == 0) + return (0); key_dup = ft_strdup(key); if (key_dup == NULL) - { - ft_eprintf("minishell: malloc failed\n"); return (1); - } - value_dup = ft_strdup(value); - if (value_dup == NULL) + if (value != NULL) { - free(key); - ft_eprintf("minishell: malloc failed\n"); - return (1); + value_dup = ft_strdup(value); + if (value_dup == NULL) + { + free(key); + return (1); + } } + else + value_dup = value; if (create_value_by_key(key_dup, value_dup, env)) return (1); return (0); @@ -91,8 +94,10 @@ int possible_key(char *key) i = -1; if (ft_isdigit(key[i + 1])) return (0); - while (key[++i]) + while (key[++i + 1]) if (!ft_isalnum(key[i]) && key[i] != '_') return (0); + if (key[i] == '+') + return (2); return (1); } diff --git a/env3.o b/env3.o new file mode 100644 index 0000000000000000000000000000000000000000..8d57cbb827cb00b0521efddac9aecbc52246fb8e GIT binary patch literal 6152 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 literal 0 HcmV?d00001 diff --git a/env_fill.o b/env_fill.o new file mode 100644 index 0000000000000000000000000000000000000000..ea783feda36752f7d1d46759f0457e78e1b6fc12 GIT binary patch literal 7624 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 H-TD6yO{3A! literal 0 HcmV?d00001 diff --git a/execution.o b/execution.o new file mode 100644 index 0000000000000000000000000000000000000000..096e2dcc200501b59b9b9e44b946044fd64c4982 GIT binary patch literal 9952 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 literal 0 HcmV?d00001 diff --git a/file.o b/file.o new file mode 100644 index 0000000000000000000000000000000000000000..1771d2fd480087f9baf6d3458dd6d058432d19ed GIT binary patch literal 4200 zcmbtWeP|p-6n}enySe0&yUV3&YPCJFv89?#lcq>xtSKe!wbmj^g;GnhcQ@BtypOQE zm!_3yAyx?aqb-QwAC}?=f(RCbQf!IQDuN>ZD~dw#gQx+kf&>l3_jYIQ<~A3!^uf%V z_nY5)^X6k`_W9uhdjg6ALKN5uHA|oXn_Fw`A-6dM?Z`Zon*K30wUA6rPu@t)Oy21I z>mtlk|Mc+u)a3kf?DRcoq-H8NQXjZ(SaHUu!%Kwx{3KR0lk=%rvPgR8ra$5_7N#Z_ z{!fe;x?v303**uZW`>tiQy(XfUd!pR4KGk!h;3Mr@9Zwb-+u!gZaVM%=y|JoYZPO6 zetLMRVY)*i-#D)CBChY^EKSXw=F}p@UYgse#4gR@JmW{N70r@q=UJgJknFMtk_XF4 zyOPN#b7p}h%T_XLS}fy~trIN(KI-GlDw?)!mP^SjE14|Y0!q8m741-i(fA$fqU}lo z6AkDHCbXf>V00kzP-N5EeI1Xi1qiAT;LyGffKY#(scwW|bY~X3E4WsI`q0X|RtH(N7_Xth zV|3NU=&FmcsV>Im`WW}uV(j2CCTI|42gLx@twP#QsGEKjfQBDSx>9l~$xOj09ZQZg z%U$u_K7FgcwR>B|?d*N753PQEJJ7!A8R#kH?4EqN$m||wu@l{C=JYt0F>X{QdUjVV zyJGkE^;Gv0a?S`jj+pj{#f+?xE-)}lj*K6-Ovl9~E}LMPiieIFP98FO!-8snTo%ZQ zxn4Ini#4sp(_XK_#OLW~LtZ7b}G#$OEVZqowik>T|X5{^P!R_lMY z+W$1+D6}2b{+!zl-y#%(^;j#4@=vsl6b?&wnRGi} zdsx-5IjH5;ptfHNcc_W0YMVBwM#8!pT5j9~3+sOt{$ z@39U<|_CF#1okRC|>|~?-Bcq@a=r!9(4)V`QEIy-*l0ju_c2{skPP=b4RJ_)zD(mliUG zvd!v370i+VSbijD8AT?)>e34?z3YwM`s%Yz4e=K0m^r@xpxY;kuC~fq!!Zc%)qDBk z-GcfBedT*lgjyf*TFw022;64^{YMZcf1AV|q6&rn6J_z=?J?}6JIF6XbeW)>;{N1E z=SjS5oz#i)Hx{Dwks-lof#y$Z?4SP@#E7yLi!4RHsh`Low#E2D(>>bAzmF%S|A+shQcRgT+GtV@ zxG#Iy7+MI`fx(qhp zo literal 0 HcmV?d00001 diff --git a/heredoc.o b/heredoc.o new file mode 100644 index 0000000000000000000000000000000000000000..d0ebe17478b6a535e201967a019ea6ceab73fb04 GIT binary patch literal 5064 zcmbtXZ){sv6+h1}_r-q_$8kdItW8OwRmD)An^M${h0Imw&B-=e+I4d}b#IRSoLF<7 zE&Dmjkg~zDA_Z>}6+)UO!3RF@M||lAL`y-?X=t0oK>aX{B813?RcbYmia=T=s)cjz zyVt(CO(YOU@;mqUJHLDGyZ7CHekuF-BO${8X$DL|7fBW%H_$C-crgP>RG!JL-N;>* zv2$;6y!y9HZf)guZmo4Q_u9&}n-pHXvoUbK4-4;P?|!nev2p7FHZ!roV{6&>xNkr4 z-dZ^K8=37Qa5e}XEQ7x6cdyP8|QWxU-J#`wy5 zuHCxHW2<*y;C!6d66#yu3eauT$okpq-DK^R>+RP2L1HWih5zpL&fkxzgJzFn$9E%Y zi;-xr1S#b}?7`Tr12`lyz^lCj$ZWK;*VeLk+u6Ih)!$~$y#<_{8Utg{*dHHaW<0TT zSA5V&S^yy%$)uG@nei{h9*j*7Jv0Jf9tJZ$Jw!w(1<qi4*^7XpbOdphz%KLJQkyN0Q&knjUGkVZy2PH??wF)!~^savDg$A z;Ve#q9`x7@G^eFnhS2VDl0<8 z^P%iJ^RDlRTm)sYRPYPndP`8OdA^HM&t3MR=~OFCAN;_%%N5@#)=DmPN>0;nKyjha zKq*h*2d?SY>QJqCE`K=1s$1}&Txx>j96NRD*sODU`fS#Da`t4_ao~R&2pmU%VgAJF z@wHQ6EGLXzeZApts-+BxM2q`v6JleCU@5IengA^zD7o! z9Kp6ym_2Hp%s$6cMtRCf7DZ`~HHpuV>0M!A^HX_zDSG)?ULlH|AZ%D) z4n=VMXkfOrD299B9~-*hpGX*D>!Db%2?Z*%yV(SUc$%A3-H-{a3zU)xo!v)aan(a) z6PCaPI-NG#YY6!~+f4I0wiQpC*;YKxq%HXmkxwf9m399lc!~L3Ms9VRJhTH!EfzbL z!O~XzGu!a5Z^M6Q8(xku%>wls?ng{U9IfTMbef_aBNC1HDE=frO(Yue{rHpolSHCX ze)TKkroxT%wB1U5DWLDk^Sr|2Vc5~P6+Wr(KT`NXh5v=Z(;*?-rST`D_n|{W^4Ez( zBVN^i$k~9W?<4hpS9n!V>xE1ohfe~U=U2ypPCYVeR~=7Uk7UHFD5+RJf5t-!20|+~WC!Wp$Y4?eO)E^O;E`4P5 zTHRX4{Ll`;FH2rej00OXGKBg@dTa|UcQf9vvp1X4S`?O_*Vs% zUgrO^;NQ^n>jM8+<8KK3bB(_(@HLHpU*JD#{O<++tHxgt_#=(KDDcM`e?{OV4Gfy> z*G~cnBO3n$!SB`h?+Sig{}TL|@O0*@^CzS634zZEPw7;B|8R6* zC^;DGOW^gvF1d59d8aTp*Kn7>Zn)Kg?b9{QF4h(o>Cz??bScBT9bV_0a-~{z8&GQ1 ziNQc|u`a3x*(zSSCPG!$1KX?luKnm&&WtzxLh*U9tJS4Nr%)>4?R1`W^#)!f%TTP= znl98UbrpeoRo zD&g_cWn+*0!W{Y+7P;q_P`gnhPr(U$LJaNy<%aRYsNY2<>l0T3y7#N5L4L*&r|w~- z&(H&n{z9oH=Y`~G?^gE-$zK(lS%xMW8l6Q{lzSZhspPf~^HURgA1;b^_1rqXU(`P& z@=5nIQD4t1Xx=7i2}@4aC4Whfay`kIu04SPog?i_qTllVvt9ie4CsC0S~^70E-T|l z=ZQXkpGA(^KZrlo{vtXa{5|eQ z)US(fc9bbmpZ|mIu-*Pk>Jk>V8o$eQSfj~tq4`Jm8-4tKik$vVNI_k+e_9J_5Ppc- zt=hjS+L!a3+NUL{x8Fj}e0-yZ?(6vLnpnT|&SX@dOmBZT68hMY?p?8$a5fSZvaj4vHz^VQ@_fuG^UEiHn2)hp^Sx=RNCF5+09zP+!7l7bEx!zH#9o( zVQ92C6&gc5R-Br;1EkVt%(JH%jbp)cU(U?TOka+6nbGB7Y&3YbG;;RKYL>@jO-=nw zXKXBZb~JcyEO;(ddeeK~QK_%nqHpSm7ZaxNVWH9B=}>9pG}JDo?rQ{6dC?q)9n_oN z4;MpY#J!?oA-O%h7vIN%C#W4d7Mz69Goi6fr$b{~CPSl>q0+bp9g|(-q0)}uy4a(^ zw>`TX!7YuP&^%9!qyJd&?E{);4<})yOsE;#G#MJJoA4Y#NCKWcf2zU*6QLsjL=j$y zusw#p87i15<`*Vh%E^;(@+2&;2MN~FRB%t4!{nEkutQB4+j6pO#^{|Bu5xEgQH07i zAtw0Yv2GXn55eUAv?<*pbQW`WTPzV1rr$!s5fzn*vQcX%&dUnc%jwrhqs-D+@I*P~ z-S-_$`aH{blM&3bT&=g-`A3dMCY9D%@-NomO(M&uNG7s;TGV4fT~4^YZaf{5a{je|$!U8br7xR8CD_Wg1V0AE>A(8%`!3 z5GK;`W)n%ro>kTfGhHXG>5^xkd6M?tcXTk7N#zHObb7saFqTedQmhq-CNzB5e0MlBv)$Vq#yIbZjcDHJ6PR1N` zmg_!@v^l#M=0)S z2$gmhwY8l;z^ppQ;{>7iBeOSP_Le|4cRZdDy>AkeAqHmoJ9<)vr%HyWN`~hmQ${b% z(puM;Jvup<)+Xg|7QObbn`1qqH@8~b(-m!jDs6!(ZGkFn8}2kE-YXefgk=l# zrAQ-VX8`NVnP`(T-Rlxg=jpRFj%=2%@=YkJ`l@+Dnt~_DxJz0ESX@1 zSRWgT6$V&}rL%CKjEhF|`P4&36yjx_GYZ9A#uP1R#Y{fcpTWUGd`a4lC(8d4NjBHa z64M^KooU-zw8hQ!u6;=D65#ZqBKGdJ?v}ld>*qKf_k&@M1(+K6zQt{w{h6Y_FIC9@7fOD+WI&`pogN{>(O{bEV_ z&84U`u*wpIO{NjP0Wz+<*wDoyFKiz&@@V2{R82URFC-F15-`2>vIe;supMWZ#uqmJ zlP`CMIsUDVaA$z)&VD}cFkcLyKFoQ9H#o26PV{J?{V;c++336*b%1LaV*1{l`}l&! z&$tUC&Sx-qGx!nk2VCvk`3j#yxH;c_nAa6~LrGw5XZfO^@{5yt?=#$?djq`Q`77Q8 zCiJ!zczuAkIR|(LfVMDqh57Qc+!f%9fO&yk5a!-6Z;tTB2zNte15~!b#Ev2-ZDgXG zYT-j0dW1HFc}titMQ;UqO94dq#c(kIi=`@Ok=G6LC3g!YOQ1O7^72*)){C$*4JCR9 z0)^?_0B@igzJ(DmcxwiSf+U0Ex~Fz%_$!uR%nfr#5)l}vjzAN1P+X~|?6{rZ;2m2L zgfQ1} z_zv^CBK%HQfnOcq4@7w25MLjl^wx!)ot$sw`eE+c3fa5(A`wA|Zalexp!_E9Hr2mXfSrW0oqNE;L`Cx|l*?YRYq3-}`IS*y*O4vCY?ytd**1%t? zfv>J1f4l}iR)c>I{5DJ6#Ipt1Ej8raRzuEU4gR-l;HzrjkJiBHI)MtMot}~B=%+o( zvjn2RtjhZw+6M_lA-)?Q#iw7+R1|-a*=3t0PW*ZJD1O$0Q}z}99Se@v_%goVg44^I z;vco(^qWHA>J^WM>0O(i(^O_Ge0s%K{LAGMSNs)%%~-d@?f!1I;Itl{M}HW#L=ne4Pci#yM%ht#Qs<@C6pVJ1w|1{@;_h zvgcOm*s~VC)t)yjxK;13EqJR%@23{r8s`fsFep@6<9wCGl|6!luNy6VYn%^S@DA`) zoX2b6@7KUJ@rq;GW0iBI1*a<_B|mP#t^DULxYb|vdy&?H_$`5&iu##Kxb<|UJ3A^0 z?=-uNbWtI^LA1;-wT={jog7;xYl^2dO(0*bfv=ail4Hnz$c8^B`*+#!f5?8qhJP;m z>Ks+}sQ$w?eqQ#!Wy6);r){{>d%%X%IZowevnt0^9CX0mwBei#L;0OqmH8_r{;tH! z_RIbMfsMac_P?;<%6{{bqLN=_e}~kg;;-zvz=o@MuCd|D-)sIHmJNlgecEfsrQAnsxLQ{#Z=}vDUw72ab2f2M%0#o7^mcJ| zAtlf)2B;4dvjsz5j0gZ1B2nCFrVY^pD?T_R^_Z%0=aOaFAtNI-rP15id&LsFr*?8qr zz=tT%t&T6heNfc7EM5E%+~w<%DgD2yA`&lO0jlKuTt2X#kn2zl+PdQ1fH3v^RJ?B4 zpbK4Vp=YkO&^x7k)>4+5Lb|9$jQhw_vhB>zdI-T&)>k<82R zv6hH@`PgVvsJg1AG|x8whjcKa_{^&Ot>&rv`xsH}G6{{}$oW=`+IH^8CZ>Kym+6yo z{!?YdY$*Q~Oy}2Z@w-T_-(E?i_|bc{ny=Q+8DMssXv%=Nv1UxY2NOoc&OHTeHvNxE z{Ynq%pM#HG|Br#`Ju~!JeFUF!*)QkIZBYJAZr48oz_!GMjD57RP$F`W=BZ~L;mWRm E1LTy=)&Kwi literal 0 HcmV?d00001 diff --git a/libftx/extra/extra.a b/libftx/extra/extra.a new file mode 100644 index 0000000000000000000000000000000000000000..c1c0387810bce7a27c706a63b93d82410c062f4d GIT binary patch literal 44504 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 literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_contain_only.o b/libftx/extra/ft_contain_only.o new file mode 100644 index 0000000000000000000000000000000000000000..417b9666d00d28ec0e11e3f77a3df64c763cbfcb GIT binary patch literal 3216 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 G`hNi}+1#oC literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_is_in.o b/libftx/extra/ft_is_in.o new file mode 100644 index 0000000000000000000000000000000000000000..f00ec7d4e678e1d0fb8ffc4c8ced77794dc7d4b9 GIT binary patch literal 2392 zcmb_dPj4Gl5TCc}b&|UEIthPTico~8P*r6&4MA!PDy||^7quKf=>>tccGmU^dtL3H zkQTKRN>D>9)JhyU@B#W20I5Ra(0+y9xFETwhFc{nnVH=gXS0|C5+l7gGryU6^WN-? z{YCBkyP8rUq~J8{YJvj%VC>4(M67~|o@@2(KdLu(>f2X$Zq}YWs13|pIR~2eFFZN<(A?UO_=DOrO8EGB+-}u|H-1&ywc+ERMxzm05JT|U$G@pr zb)-CR=;g|bhs(2St_Yx62+kF&2leu)(p#n151pHT=MaEyfX2|dd4R&o9@Tga^z!La zsRU3ofgIo(t^y^3>Ez{fsee)zAx&UX)J4*i>Eo_zcQ2({oN9wqyMnBs-6eNWv*Za$ z9gRYfOo?2?A~s_`iWgcv$L}m`xIyR*{DtGo){?cf_(q%?m+HoOsh-je{@_SC;L*=X+t-?e*-Q*K9|dw!4Ww<72?{ zBM74aT3rV>@Zi5)hu(zrT*^RQ`2f^rMIGKhHGK!m`7+|Ph>|j#DObMHRu2@l7J2|C zq~gDdyHe_}@&RJ>6>zEX9r39N&5S>QZYra&?~ySR8C$_zC-$h!x<^(F7CdyB~aySx3tx(gC}20_lL=mZMXs&t=X}YJ-@Z zun*;I7HLYt(`H2hX)a|T_#*2sWbn-B!b=&P&N;#QE6k}<<0_+k>|gMcj7#2#^|Lvg z>Pxhivhh8?Wu3q57{ASUGC(NH`BxeLoVnmztS>O9yJzojGoF7JSnF;x?lhccGjKP+ zif}5xY7P2*7w3VEG!|Ci_8itdzdaZ?C0PC-a;>xPuPug=)A|&wUT>q{aMssxemi^O zdY%hCu`XO+uRvL-uJUK{!-q(&VbCl z93k%)JwRbn{T?zXb)x#s;F5U3+lb}wgb-Zk{2fv literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_random_generator.o b/libftx/extra/ft_random_generator.o new file mode 100644 index 0000000000000000000000000000000000000000..9817b916331754962ba1e645cce2d6e071b1290c GIT binary patch literal 3496 zcmbuBU5Fc16oBu{QsOGA|qAKC|fbzgi@3sMDZk+y2FslI5buY~DW&dj~LlX3PzJTPzh<@8%w4VJE^1e~ zU*`TtWD$*4ZlO7|u$(^I2ZnYdw}kM{1$bS>nXU|MC%&WB%FS!dnRya&Jp*3tnFX!w z&R_25&Np(m0poZbPq%X&h`*+_XXd?GwbmC}8|)`K>E1fSs0)%z$e7?NAyc%1?-ouO9qlfQiZfSqq(^^NDzHyMx6)) z!Xv36Dy8~2Zb=OYgEApv8m5yTCQ@ooGMOYKrhwC+oZTd)o=iTK+`jq1&@-C}p_GUW z9T*}+9_upW8_0nnKY)-#8VnfpOL$`N0P()jIk=EU%nVcFG&Ih+|)b|^bWcDi0?=Jipq#+1iN*%|jUJw9QWhNU|VODPi7 zEZb_OQ8#SWu#A%<1;bGtOP|u+X?34#*{(e{s@AJ!)vg$|np&$C%FeWEOoI<`O}jc_ z8l~Z?=|l}rY7JOdmzP~VWsEz-c61BhjY(225e%zR7n$@aVthptFMC~8a3t~H^l2KMFelh3~k)cRwfyR56D3ucm z?UA3RvYe-qJVASI(zv`plk!18$2=6j3FdAp=7GFRV=nD!(v9*N+Lx!v%T(M=H_H{e z72sagk33SBBz2&HWiL7j+ zt6O4+stbZ45gJCGEfM$t5h4++aNRNoW`8&GtoPU83h=?eI=ycX43A*cI4`cj-&=zZ z0!P6#dI!?82ziKUEErI;$lp*8QM}^~HgeoG=PtBSkYgF*{B49F$a~@8{Ck8T$m8&E z4)xL#^u<0dytE+?eg(dM&PQ0l2BwkoF%dlw;5g1cW^ZL0^AP-1JjOU5|1`6AuHnBo zdy~!>`K|A%30NCqw*OX1^KYKQNo;pRfN%#_{)n!Z}uNln;Hi z!snR%afshwHeW9v=R3xSnZ{fO^XXkOz`}V>Cf4=FiBd8O?!>rWC|Jf6Q7ogTD-M)t zq7)nTx&alIdDxB>RjXKtKT6dsH%MdBFwqkNYS2>5hGQuEj~pF=;$1vJ6fBA3dZ`4r z&O}$VSIYer7?ts|rPmEowhV(S za`S)GHxL{=uY9Z-R*LR$z%=GND0t5x3!V+^&*BS&*BRgXcdfzyG{N)9{qC~Ed5!_B zQTY9Nh1|sWPoQ!BQD$>B#um!YJLi1;LCxFT2X&UgdJsZ8?7KgLVaNsM_%#{<3CBMR zeNp?LWeM%D0Ng*K@cy>}Lzf-!1jS~D<>w%THlLqstYcB}N7#=7?~S1FIIauO$=gA{ z*P?z@5x(#EY?3W^Wr$f8ziWl~4ZeSl&qE_Be;RY-zZ1+K-akB^^RvLB)_;l3|0nbZ zCG0y3ol*0@8ZkfK;^Fx%VA7%G2B=whR%DtvvSYAvM~COX1rg!g;UJgTqIR(WRCqsz G=l=)&=(Y*~ literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_strchri.o b/libftx/extra/ft_strchri.o new file mode 100644 index 0000000000000000000000000000000000000000..9047d037bb2761dc3b20d9643cbcd3176f7ea8cf GIT binary patch literal 2872 zcmbtWO>Ep$5FXq6oXy|vCZQpv732UyAl6Pos6weqP_?jG3J0Vhgapg}cy|q6Z{(k7 z6R8vwQY9^i1c8(TNR6P95>ZRS4+@1W=rCmrb z_ah zuI6rUO6g^W{+)r4w4GntlJcv$?VYbN|6$57s&n$B2wBbTA#?AwpQHilq0|slQki>C zr3R!y6+liSOVQ9Xs7{Y4sk6OL^*(%ZX6WgY00{;%hh~NV*kp&P4#Uh)7y!`qASkKx zy}i8v$u#1a^afrDybuYB+82!Dw{H-T6@ii^y-b#rZs9#4ug`_n`=Lc3`quHz|N9PU4HCy)R z_=Gm5jb$JA1LyeL6KG9pPe9Epx}H;MIHpzs-LAQMqt!HA-EfSBY}xR1&neB9{I-6< zcU<3{oY0%5ZMqG^vUJNV*SxlFw2>1@1Xc?tHf;}zMb|YKjiLt!+H;`NDB%svkmuX3 zS+|X95Ww00?G<Mmp8km0ZKMI*mA8B(x&%Oe%9lzR<7AUm*kFQRF1x zTXaa0^jE5%6fH4clJ2{XZrT;guNr!L>P+#>WY#imzn!hyzFsyx7yg~%E^r3cO1G@} zW_Emn>ZS*)qlc>^W`IZ$aWzo9g*n638uTn;C7rxT0B3)KPtLvCM=;a9nRC5FGt?GIx3b#8wW!@uYD zXEFQ>ZjW+JwTaf}M~=tq23pl9`}Ja}Ty~6k&^$bEK&!NxO#_b@?!+?;G{>+?+&1l6 z3pBgs8QOC%&SqV&RCz1XU7%4f7E9GCo{sg7NNjI|14g4*b4pDk5{PZ7;apy+jC!F- z`v1xrCW!7&k?%LYfv*dI>v#*&Umjs%zYF>_ABcVsct#Akrr3B+a^2p1rj#G`#E=o#K@8$2MzdGsMbG7>7Fej~~lw}letqS#jg7xN2EA1uek z|H3yXyXCKjpN*f5Su$f=bK_GmO#9}fT_QatKTNy5TZ_0zizxl zyucfX#h(cwnBwzmF=x!gfAZt!-#TV~I=$ob&myK=+^27$cknt8vHt}?&rcGce*>{2 TwL`4Ii?T^UC=^GJ6rcZZzQtPm literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_strcmp.o b/libftx/extra/ft_strcmp.o new file mode 100644 index 0000000000000000000000000000000000000000..00230614ec7ce4b3ce6f901d2fe85cc7bfb1c0ff GIT binary patch literal 2440 zcmbtV&2Jl35TCanCW%w8;{=)#ghBy9g|bf4Ahm!>s$%L&EeAw6fKasStYeGyI@*uO zZAFU`wGbjfdMHQ4fkXa=NT5g@T8{h?Jygx1+#+!>GwXTY^~x1OjP%~j{O0TJ?7ZFE zm8%~rLVzRz7a-9j3h+=*)YU@q!EhgMcDIQpBgE3B$u(Rql0q zTGZ1v5=~R?xv@4uo)EWL*K#+coWma5krzg@HP`aiXEz-`XturCg++7ToS!=z#m0qO zi>NJ`Z$mv?4MM-x+AwQS_Ub{o(QY|G+3}t0bG8$fL*Lr8qE7ize=)1f|7*IzkM-924Vr{2RR|Dh{C=wqM79>oJ)F%<>#_fkD$-$Go2zq-TBYBB)> zW);){T`DTzm<}NoaQrfK2K7=Zf7~m?WQH-6(^ce@65g9$6p%_i1`?lR{e={sy6W&^ z3a32hS$~;1b*tZWl;3&=F5_ffx(Gy#y*}XXHa&*{r?Fc1t(KD{#$h+HQfS%8ueXT* zf1*C7=SOCIlZW9a2{6yz5(9C<JPL$YSJs zn!zm@$UN(N7V-2wk?x1wlye+VU_bmc#Wc;F?gP2V`C%A-;kZ2sFqicur+?zG_$3}r z^IzgW;P{Li*y-U;8D(7w(fM=X0L zgy3hcPx;f7^|jGBtbUQ_SJt8W^mWbF{{%7hYL`AEU*qbNoPP;WJW;m(kBDV^M}E^h PKl`L0Q5@ZoZ2f-#7!va# literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_strfjoin.o b/libftx/extra/ft_strfjoin.o new file mode 100644 index 0000000000000000000000000000000000000000..c47d615a4949a8cdacaa8cce000f4f0340c7786d GIT binary patch literal 3352 zcmb_eO>7%g5T5n=Z5*eu^G9hZKPd%q!RsasrE04-P(n9pgDOx^TZD}5tYgD^U3qtd zQz=l%1!5vlDh@3Y;s6JP5C{%PJyiuNQaI(9V-A24i9?W(hy+rZ*?rI1ytw(Y~n<`|2=sA#=iL{A$#HA2u4Z>qf&{HRfm6 zSIKWQMsA|98W{7lHw|Ucs4ptlD7#=R8THvENWRrc0gEFW6u9-MJJiI%jzb-f?Huhrx)UJEAi|;1 zUH~?<#nh5OXxk&8CXRG;bO6M*BNC**q~G8b#S3x&Rd4fk`F0$A5mlgMDKCpU{e;TCpz!4I+5RmXFN2Giw|U2=-1Wu>iBuHe?vW(_&vOpq^TtKbZP zGYBQHD%eNKb|I5-oYHwS2d-M^EjCKdKT{4dt4jj_}M+cU;?FR+2b zEH=ipk6Bzh!8GkOQ?)4;{fV{LeT!*D7O%5T42l23deD6sjVacJK<5~X`q3R@7MEP|e>cIIvgx-mf?(z->0_!vt{IWU8U6zmPlP;Zo1(N09-xR>-aErq_-DEx7& zl~aZ0PHb_j{M2m$(NKdEAj62?elkBmR@ZGzfGc;vk0Ra^>c{_v5Ib=P{ym73(0rhg z{|`+=l!pmKk?|)3*vILp3jWm)j>D{p@8(-ddBQm9Byqf&LkD%S1B6qIkRGlGJjLzp zA)E;^uJ?s-%5#X@5Av1T3ct0-?|>iVxTyO&w+#uOY+U;@!#imRl>jE z_5}$S1M-rD*SYwQHbHnmKPOlg;I- z<}~P4)5_{Dj#JR{m2%m{naLSAqq#eXDA|Qdc;0Z`GHuZ9ifih}pPNWIZZ`iK=$18I z&SWPi@rPh)OA?%LCI`%7rclk6O(;}Nyt$ct*0L)3a0wh~I=10vbGXiwY5ia1Ys?b< zjz!WJVu5yD0DR@gqKVS)0b$}?2*)s2#5oqYJQL{8L-@Qjc|2i_1H_~E%G-h+9H-iH zPvm-sgJsSWi_G1J4jCivpB(&F1oBnp>WH`Me~$Nmg$Gdobk61e_aH`;y?BM?bN&(2 zf1t34`eLPd(JKBdf2q`8SVWvyC(tSMFmJBaN6~`Y2(WYEGe>zu`~fmTBA#DB7g1@o zfBl>&-ZSkV%_b2q@ET&R`oGTm&qz+m1pMRBvi^Y<^=Zb-^-aXolea3kT)?X-r#Mk; dBlS-r*T0IGym!Rw=RXSTWS~$SeNuA$e*yd`zSaN$ literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_strgen.o b/libftx/extra/ft_strgen.o new file mode 100644 index 0000000000000000000000000000000000000000..19f5c13172c23f09e4112cd4aab7ce217ec03ab0 GIT binary patch literal 2776 zcmbtVPiP!f82@HwXR^&EyPKr+j}=|8qJo)8(g@mWyHZvs+v-7x)I*80yR(0Ac2?$3 z+!kWRwKZv=G^pS~y@-ehPaf<^3KfIrUUKk|i?9U`dTKx+e&5V{*~#nnAb#-X`+mRg z&wKOceQ&Om&c7l{5^#~=Gz<`D0k*V(U5v~kIVZ{V`Kq-B~T&H`l_xxxUgj zdz;cvRHjd%=2~gn?5%7=?&>(f&C(9h_ZDKXMZjDyZJDP^{ao*HMAsMZBe89+zqYk{ zFdg}NwSk~iLq(T6c=#%K+dDsQ|Up$UpabRj~McNs9 zcn#att6;cw-)MH)wr|*;eQCO42S(so%U0Mm&W4^J`tx%}yXCh0rtLU})2h^iu3>jE zW>5#JP0NESIJOH;2UiffeyicywL;4cz;9i)mjdX70kq)1tu%VegV7Ur@bViVb@S4( zv61vm`~r_6PlJT^8D7rjugPb}HTecc0Ng<;1#jU~lBB=0zJpLNvYeM|j40{6qEyF#5zryehf&YTx&jkKD!v&`4U6b!y zXS}!%8t65<5;m5sO2xC6LHBIO(gW;y(5szx+s2+|5qOO-cbw63>zzTvfbMnzTYvTS z#c4mVs_%eK-L_=aYIr|2_9Z$k*Jgy>T&jCk+on2I%W*o@K}Bpq9p?xEn!(%%}ncg65qjCekgOD2DRPIu85 zwtqY9GUMNw_K)rqp3iv)IdM%$!JlmYO#%rKV;krjHh-QSXg&|kPj|C8KmB2q^Sd2X lAK=)Nr&&IqkMc=4juF5&Xo!19zFVv*ZxcYFJSr*9|1ZJkDkJ~^ literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_strmerger.o b/libftx/extra/ft_strmerger.o new file mode 100644 index 0000000000000000000000000000000000000000..b477be0ec4157b5c36f0b6f6b833fec41003bd32 GIT binary patch literal 4112 zcmb_eU2GIp6h5=Fv%Bq%gXL`;0a2O}gV*62gyUp?o}oie>G4u z<~!#*=iYPX-aBXJg+%XzK1l*sB-jDhESCj{HeJ)>OpQYnBm4F0kNS&0gAYLMnmX{$ z{Jh#VIl|z~5eBD^GdOvQ!Ngex^=Sr`8HCe7Sq78S45nrXx~Aed4OZC4;LHIAr$-p?eF{9V(QD*80^F;lHPjmr33r~1-*a@Ok1 zF+r?8^tmqYjE;XEsy6G@ijLIPTdoD^wMRpGbw)?OUL}=9;4@L6UIQe0NTZstd{kM! z2T<|mV~z=8g?ybzx%nt)X+Da;bz)g+702qif)!%!#6^Al@T^ZgcAiy?X0;Nfc&D5; zR9QLeQ1O<-923L}<%E!O%b}p9KdoWX;ya)H*$O$H#;$V^&Z;F8daZ|L!8rJ{F2^-{a;AU()viNB1fV(u8uTIEdcHR!wtqgJ#^a)iPoD{$nlR!X}CO_e4Jhj*X~|KR1v3#VsqzUNJ6 ztaDo_<3r$e&61uVT~eRNyWe+W#IasRP<$u)nAQBIW9iIlp-A+_nbk^G0D|KPboL=2 zHB1nq_%y}@Lk;gb1XkO4maE~{dUHOJbKj07xdGf zKqv_PgXMxvUe`>rx`ZhU?dTAQ`IA#EEa+sd0(#H01?%lc1cx=~G3FGm7eF?)rZm^uq z+1Y{{iFw%wD3)!o%{*@Qe_AxSftDIYI4m%>NlHzOhz3;nGY4xpZ4am=g&dIATBG~dO8({!J z+3?nK{3Ru{T?q^*&4E3N4{>E+Sh*?ip`5`f+Akv5a=VQ%Ah%yq8n-K<0SuG_yOpNE zJ|&0){DF+p@HMKtl}4IFK6p-Plp6+cw%v*p*yE$Ma4TJcZy@7`U+0%NkdUcMEh92- z1ENcYphz)WhNZ27-r(pm(Y@EpbIG^I^#^1q@h$Zkb&L0){3b$Vo_;Aiut^Wy_`qjXJk=h;<3)~Y$09b-e-#00%(PzZE6oa z(%)UOlS9vfMorI1rc(H|$}Ae0%N9&dn8QZeO6E;STPEHXf4MZwZzl&qD;>-e{x9+# z&f;{g-*6aemmSe(FPF{cDk< zIeYN(io%=LW+9<#x=8(Ox$*b%4WWMR6?dGAPomS+y>S_FL%CCotvTaIyzdl+4)gI_ z_&68b=XdR6s4TaB9sK;c`%LRcJ<=WT@`sQUYeEW6@%*<5PQe7~3(MuFpKcO259OzC ukeEM%oZLHKL^y)ig7oq6?z+%;5;6bB$hk2rfZwM1C;U5Z(>Qu0G5^2Cxc>wI literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_strndup.o b/libftx/extra/ft_strndup.o new file mode 100644 index 0000000000000000000000000000000000000000..4d6355831c987a9ffb9fbfdc053367d268e863d9 GIT binary patch literal 2888 zcmbtVU1%It6h1SvcXqQ$b~l?)(?%uWPkk`6NsORPjFGZB-BurjNGX)KKeIo$I~(RF zB!$%4wI!Q~*!of*tSI=04?g-90t%tN_#!mE1wl!`hx#HBg?P@)y~$*{K8OeIJ?DJq zyZ79C=bk%nX3xDSOA-i?U>XiRfdc5!Lwm+EXCQ^lS-t&>-ui7+Z!h1|+wP9Omc5r; zht?h>uk|8N-^}h2efL9h)|Pkl)~2*h8FmQP+u3cswY(i>Hz~H6-SRj%rM~v^R&u>3 zHn!3F6IQZ!lW!-8v6kJ^C$l@rn;VF&X77F>C9g3I?4IiWSe?(pwu6 zX5QNUcz=K2i?y?RsQ2{NccT}-mHMQ|68%g`q#hVb^hs$IKu+R>iiVN2Iy0ywPIXUq zpFDo1|M}wp5e71c&h!JYi6gF>1VW>af|8i-?(PPNJ?oC8hQfg1d`wZeeERgf;d3esXq z8tRG0-or2PAmY?W=)B>DMC!VHx>uEdKnB3i2u0um_L3z1mFOi!9}t_AaczrslBw4h z8Y5%lp6#7o#y_)6%`Dd4k^zA&;#r~CPN`&+wW?o>T{2-LN>XBK{14WvI!v8nidtdm zJ8VGBu~?3&w^>|0%T)Ee7l_OLlbhFCg~*ZXFOO>!>P7}hiVjg?PAHc1@YL1CdSG7|3BB^oGcUwM4O zN4S41fYS>kIx8OY&yd4e>a)5aB{qX7YMBtP=ye1+HaM1DChh3OEjiE3`>=h1vb~x0t z!rW&O?X-U2#aQJ7X#E6**Z&A&L>a{v6pdfjuYw@jBEQg7=bgs?#K+US6cjN|=o|)x z9pptjU5XCe%RV;G(;Z9^Kzu{&U%*RfbUME(zfj^k)A`YxBE}26fmo;Y&+z=e zVmv5eZWV)_@?YtYpWfzh{tJjH=k}YZu3$TmTYS98N9!jMzV88ijz;+GDE0(j)CM^y KG>)bW=l=(uh)DVX literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_swap.o b/libftx/extra/ft_swap.o new file mode 100644 index 0000000000000000000000000000000000000000..6284db1fbcbeb4a7731f637eac0f481ab775f77d GIT binary patch literal 3072 zcmb_eO>7%g5T57tuHD+T)0EJbBAQD4M1`!=kO~2%7@~j)EeND=f#R&4b!^o?k#`*& z5CsW@?4%MzLI}8U;6|lhIC1DHS1!GA%B!_orO<-8;E%Yd5#GfPUc?`d##Q(BDG8 zdugX+r%!$usPy_x=q&t3g3UO|JMqnn0qn#t?W9j;_l>^=-GyJNek-W&#q%=2gsz{ zK>r8=)+hV=PCw|A0zCJ*xuaZz5{ga$&(J(OzEoBiE z#AXzh3az@|nk-hG`s(Dm+w>}p`sA5ed&ZubezX-N&s>>BG-scMlArh9a@Oo3Wa=d^ zQ*P8;FXJ}djp>5xXZ)tK?zGyO`Bu|wd2_RwTBTm`%5Jrqsa6UlznyX0SRw^5dxavf14xRMR$p&-hLHSdrX~3#^Rsg^Su{2y2$7;!ZWF{k0SGjEC&k^ zQtlk_Xtd1z{OTb82JvX4^4}mIg;V&el=>reh#YMzyp-G?u3TUT`VVx%v<}`dqt>En zSuYNGg&1y_F-%*Sj@oA2ddiGpXxOH?h*8EgtaB79459LGOCu4ST5lese!oC63b*%0 z<&42j97-Et3}FEV;2S%_3<%!8q0F<0#zW%=&j`7*%+GLju=W^FFu$zv((xej;aMfQ zj`-eN-y_B~ewy*!A>QPe+&v+l#(9kKee7vz`;QmnhyQ_poOzj#$9P`jKV|%i#(%~* zukoKVzRX_cBkQ-J)xX2|1C5uy+Zr!@ztVW=dyRSNyUh4It-ix}N8_dMO^uhnKWe=6 zy{++IGX6{BW!{s_)3XXcudK$)x-DzGV4HclUxonoid$%{=AA;J>8^wAXCA z)k@uE!Y$`ZO{eC{9Pli%v8C@6&~Mbp|1b76j$(`$sS|v10KV07v~FRek2P`f9!oCE z!BrvHk7<~+`j}MmJ=eX-UYuV0GA4A6YELs6)sh;7MXU{s7&N^fadIJEp;A9j$NJq`&x6m>i|Q$$HtZGKT2Hzs`Eei{E3tVDX|8{4oZ|t?eu4 zP0^M@_HzG1Z(=ZN{ib;T3kg3e~tS~AL>tE tF}**XyT*k*`up}iUVW4OF9hky^!{{y?pr(Lrg&06kO+-*^p5EL{|4o?E;#@I literal 0 HcmV?d00001 diff --git a/libftx/extra/ft_tabrealloc.o b/libftx/extra/ft_tabrealloc.o new file mode 100644 index 0000000000000000000000000000000000000000..c8fd1613deb736a1c477b7dc53e8287d78ee2008 GIT binary patch literal 2920 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 P7ZfN?2H4;yp~n9Yklmcu literal 0 HcmV?d00001 diff --git a/libftx/gnl/get_next_line.a b/libftx/gnl/get_next_line.a new file mode 100644 index 0000000000000000000000000000000000000000..713cdd5792b07a91d6c16875e0daff5e6c418692 GIT binary patch literal 6014 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 literal 0 HcmV?d00001 diff --git a/libftx/gnl/get_next_line.o b/libftx/gnl/get_next_line.o new file mode 100644 index 0000000000000000000000000000000000000000..9d2cf9aeb7789d5c90a20996397f02824286879d GIT binary patch literal 5800 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 literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_calloc.o b/libftx/libft/ft_calloc.o new file mode 100644 index 0000000000000000000000000000000000000000..692fcbf7e75f193f8dbc2c8941dafa9ca563af45 GIT binary patch literal 2744 zcmbtVO>Ep$5FXoWC*)^$lR#)Gpp^;&fnq0VN()6Hs4O^X;D8jABB6ADyxCQ~-fC@! zG?0RtQnU(G$%&r0aOiguC)qRe%{OnJ z-+MEDCqMt9swg0a0@Kj31PbuE(a~ojbq2D?T(Da|+Z(^;?AH3e-3r_G#`->FZaj_@ zdo#apXLj=KiQU%s_8;NCeJ{fmcC)tC{dq%O)J=>SHfD~+gvXB0jy!i9z|cWuXm$jkXX=Ov*Dx}L4?u6UTLY0U zzqS!jPcy2R8fiVfDV-4@zw#PcYUWvd8|wCz*m@$isvWCG-M$oAL&OAFD284T=1OkC zTh6UGO~2Ogaubv0xH&#{DvX>H*Cx@LGEYM#SSl4R8bU zte{y~DTJ%m`LOAS{?w#ZuX#1U>bS1u){2#2H5TADFj?sNwPnvK=W1R6er?TJ3OWhE zt2^~#1Vd0L{>OC!+#7uyZp+%MpsZ$<69YZHTe!s!B2Ett+BSGToxQ1^A2ietkOA-| zLMgb2Z$(l5Ob?Qvlfg%^Lcd8LV7cx}eQaVf(xZ*D;tjKEUdav14uBt&%TC3tQe1M= za3)BpaF0p~4K1VS1AV{iL&l>1P(?pEr$4!zQ5sK2&=bb@cZc7jy$9 zIr?|?EILN#bd?+zbrmhexS;moisPxfzCS`V1-~73b82vRSx4L&U(q8V8XEM-P-JWH z&ueU=C)4{#h*3MCA^1P29yJyI$p0Z|zmoS#Or`S0`%C~V<=Uh^MVPp!f>`B4flo!{Buh$WrE> zLA=}gZ!>t71EOCna^>}(M2slnJ5i0s7aVs-04zm*A*p`5#b4q}Pkk#nM4XT|I)$F( z-AWcs!Xb0tj^nS$^eqO?CSpky-!I@dQR%jSKX8*0=S=%YwJ+iYei<=&O$fnvoc|j# z5<}+F{pgmz-6cQuTsi+DV%q#+1I4@ebOslM*cVzq4LSd(hzU+a;MW!x$G|WM+PE-ptE;^L8IquFc4j1Y9JT zf^CmefTFr>Pe_ z(ZKji+IlZqpDMqo`qw?Njc<5S`E~cB)F&O!52#AMaA-K+C-r9mWF29DcKWcAKcAb- zofw)MxHtr$s30>mHvo_s0VO|`%jGcBEqpSR5_+Ofq=J7-1Ch)zITFnSNt?&FBERl# zdvP{3164D0gRoe047XA2Se|dU-Qw7|Ue?Q_r^9G)Y-Jq13H=Pzg9Y0+95-y~H7L1t zztn8EEWc!V*3zhH1*O05~OOo_6zn>Is zDn631F#N(u_HON{qDg9DU#RA?x7ET0b+E1~*{fyBXslpQ{I6u>r15e2B5cFK8l`-S|`o+0BI=vs(Xc<&L9dlC(l z{#XI$qs*skLPA`)if|;NF{eDV4w7TBqVo_|1#oH?PWP9D*X_hE%redS6XxGc@W;$A zGEL{bb>?V~F`irx=!=#aHWm!i^sEl(fz=H_ueDn(3tO5E`hf?!XE_G*ZMWVQnhbQe z9a#G8_3Ee}7`6MLJ5HyyU@R`;MQrSt>DaEtfYn^6dq&F=5@EOMSSv70)JrYW|0}OB zfq3pb-zq!ww;V8?Y;6rWG2TZ!e3}`&&p0n|gK3(Z%t=G<*m#9$u9C4j4kQ`Heq$5v zFwIpm_9PC7{mtXa z6NS&?n)Zj=V%*O(m=e1bvj^f`i1ILSR!oXE|9*}GG}89(27`Q`X#e&K^Eq!KOIzw$ zR(}P@MM=iia4@ZYGo?QLD)RO7`c-7gwcl-2tN3imY9cAEpCnoT4YI%X4%r5S?`aYW K&7(V#tp5iwLCqon literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_isalpha.o b/libftx/libft/ft_isalpha.o new file mode 100644 index 0000000000000000000000000000000000000000..d9396fcbf069dafb45226a5c89c04022735487b5 GIT binary patch literal 2232 zcmbVN-D?v;5TCotrnS)|ZLPL`kq3)f$)&9oYFlbV;ztmLN+k#-T+&N&c)66^T}TDL z5S3z!`rx~d{sV&GqYwTA{s$uHo4y4s)S29Fb2;OK4(!g%Z)Rt9XJ_voWUgJ3B?$yc zum~MZpa88lW~UUneCO2(x5aR9cD^2e(-Q~P#OvY$SQ(E;q<5yor}yzPK;e0K0gMa zFpxQPbr>LY9F*u{Boe_$w{Upd?Qb8268=dy5RwHi#rpGwN9=IeEj@%(aT979nMo>{O*z)$NpC z*VmH;-AOrht)aQi)J3;$yY|d_~Ymk#gk>wk&WIf6J1A}Ru0h{m7F7x#tbEP4Qx5emU^oFz&672QXSii$(>Z46J? zraikARbmp054bE6&awCc8!54)SvFB(<2g35z)~d^&N3xjX7UFnxiZ7JUWC8QbQ>Y~ zxzo$6bndastbo#`3q=8Js~)5Pbx$|FMs>&+zg;85Le$0>j};&r$6r$$AkL; zbyY98<-ArX)b$3aj^1=YE!L`49b1?iZKn=uT{ktZ8&;_Xs#SAz_44)Qr0r2CzU zd9b@_)iwLEOi{}w3DH@<$B6d#H63&=pBSN%?MP}GU)w+DwehT{L z(AX<~x<`KcDhBgs5mT=1)Q~;Iu}h-=1wi{J3g+KJELc18d&$AKq#)5cdLzO7zX7<| B#E$>~ literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_isascii.o b/libftx/libft/ft_isascii.o new file mode 100644 index 0000000000000000000000000000000000000000..7265176ec681a02da01f52505728add8fb363288 GIT binary patch literal 2192 zcmbtU%}*0i5TEUK%SY)4A0mh`95BWhwtyHF4Azi}5aR)ZAx6_|%a(3zw`Mu58;K-1(|rTmbv+m-d2eQZ^Yz~Byxqv%ydIGxV3J@4 zjxpEqgiMT{2od{Fc`BR|oSJpmTa?fJ1-~qC z&QllqTmXMA^xFaanb3y?r<(q{;{p$!2hIujaLt6?|x`Es+(&)CHiI^Ce5G>b^jn zMipy0S^@c5mH7YC4kqw_cg{B^KKeTb1P=~(3UR`Cj@Ugb1fDa-(<}&1vB8{VdL-;Q z!I=epRWt-K^8F+N?h4K<=zA6o{`qFVv}no?0VIVV{X2*TJl33J$~h){K^7+PYM#n(HjZY{|zR9xo7|Y literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_isdigit.o b/libftx/libft/ft_isdigit.o new file mode 100644 index 0000000000000000000000000000000000000000..e2270cfe2d36fb48b5034c1da81c4d37e1ae1d93 GIT binary patch literal 2192 zcmbtU&1(};5TDIv(~q=C`eALYNDmbe=_aiewUrtvu~x)GrBXyGn{<;bCL7t0mXS|;1{67wIy#!@llo%-5f#b)Saw)W%*1Eor$!bBE{_1n3Pc38H~3P?(U3+>eT{TR@F6)&_x?<#uPQw$vL|~W>6yV?PLEiy`%^g4Q(Gp0Flr-AY(Yb@& zIgUIn0yP1yBvLOT^Sv<(9nf6C6@_u!B}w{~=p{i-#U=SJhF{o3*I`HHq@*OfU8Os= zq9iXVgGD8FU6ErYCGt^`+=zmSypZsH6X_`YJP13LTfbY|u?%vX&4vs(Mj?=arllPx z(Cqi+Z}tQ^&d`mzzY5P5@xG^kIXo~wA#8dE1mcyZ=55D>&i*sPruz`6S%2**Yz2Sgbs8y>v zj%@2Gu%GQ%pjvuG6LE%FtbuCQ99>{x5bgf&X{sd>Qehzhgp3>W?2uG>GFl;`4zb;%H&wLrVu&Z{83*E(YKZ3pmJPfNpEJ&_H_32+RSbrHg`NlyF#Zz2|;Q42Q a;t9d}Z;%W2j{M4kd`|{~;^>V8>;DEPIk|}d literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_isprint.o b/libftx/libft/ft_isprint.o new file mode 100644 index 0000000000000000000000000000000000000000..406bdbf721152eab051533bcb7a4275617b2769c GIT binary patch literal 2184 zcmbtU&1(};5TCc3t!-mIn)=bINDdVh>87m}w3S+ss)g!7si;uuCf&4)$wqcJp%t}C z@$;gB2M;11y$gc3q8I-W?|Ktj(3xbW-LC6F9C-P?-|x-G+u7MHPfVTFlmamYW3b6Y z1^AlS+>bZ6GMy&J-xd=xcVuN>ga{_ClhO#=bgA;xx2ocd9#ZA*~D6(%6wd% z`J%eifpoW_r?b2Frn^+G4L~zd%(ad8=;@KH)9uLrG!rFFWFm^uylbmnxP!pKsWn@6_D< z;E*|B4)h zrtbN5e|V@+bzH|^uq%~9#VMA9#TJAT0VabI{M$X~IRJLF0MzYEpcb=g@Ahr&FR(rP zP^U#kU4YZ+>?7?=s?9+Mq}OmIpbvkQQfuiH0d*CZ3f&AJv1uI}E!8v1NOjhYT$^d6 zt{S!hJw)ili1ii!PQK{WwCe#IT?n=fw5u@3qcE<^{MqZreH#$~JR zM4AibZ}tQ=$v~4Et|G%ldgv3t94!;QpZTtkZt$L9Pe`XcBh2?RQm;08i~A#g(NC~0 zbsNmjMf8WvFGutT%=3&?GhBC&_2_-ToU@Dd`B|%2^y~(hfxQ@n<^#-9ty;BleA&+r zJTN`GVlj8zat%zk7TD&wi_`snV3lryS*bLtv)0@kerfYt+$)Z2vtTdGmOZO#hpOQ; znphyPiik^9!vD1wm>~S#CEp=_>F-2fjLvojb<$*x#C@DMGH0S^Wy46Z(VTST^7#a# zK-8D!BC3(^2M)N-C=m4>#)I&Di(fl8>>Vuxt|Buh`Q5=0E(fYpuev!Q4 literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_itoa.o b/libftx/libft/ft_itoa.o new file mode 100644 index 0000000000000000000000000000000000000000..c01396387b0e946e4eb226190c39205fb2d89ad2 GIT binary patch literal 3488 zcmbtWZ)jUp6hH61+?O=jlC~TBbDD<4ZHL+kNW+xFmEum^&B~v$c+PaYZ z_%{&2=92Z=9Hv@{cF7BgMPx8<2;QJzrnBTt5>RF}|#yZ&+1~@%-w5+XSC<{#2vUAUi4y`C_tuE_&c> zWYcc2_rt0!@u#ZSmM}|~on^_+a`MVwR$>W#>{=J+f5cEI9XJ~YsYBWlUd5Df``QiR z4yhBjL5`rSqM@c!?O&&aw}CUA zLZJ{qnDBCD2GTD3hlrpe1*e@10C!WvBF+^rvcQ-ia3w4K)@`~AXC5O$UKrzPQb@LhUK6&|K|1iiiBo`9s$?_f zYdeQh@N=AGN8|TVIS}x}P`X+)tI?6XUd%?vjdCSdDn@&HwYV1VzP)NIdye#?v{kzU zM$J^tEa}<^#EPSp*jTAxRANTiINY5!%$Ql$$Mxz&Y*)2hsaCf3#tOM&t}-uah z0KJH&-Xtx+pE!K58D~k7{t2%nMqzMBqE_57o7!ZD;}PzXm_PV7Q`JEhQnO4^XW1Hc zng!K978q9V;fgWVrVg_J%JMV|?MJDPZ9-`a@{N70Ymfy78CnF@2hd{}!(^F!5hD&V zd4@$abS1^0tq2l|&Yi!qb?ATN6jS=x3e?T8b`3*glAl@d0NM;P3H?CXH_O!E6HKl$ z_6k$KXYz4J-zUphrl_Sge;HvPTyA)^Hz6S7ubunbd&-Rz#9NWVKRd5Z0p^8lS#gf} zH97^TLoTQHQ0#Q&wa)-z+i|onH?^e`*TL6vTPn+G5)KgMIAL^UEMb2mD!6d!wgMMl zJz?(ZM6)4W*ieX0nvewE?TA1(2@&Dc>jmAw7s8%8KG8;p*>_#Ddm(n)b#U4rA`z$J zh>+x5;8R?-d!WnyMUH1Y_Ahby5a+a?^gQCc9O1Z#f0WBFcyN)I&LNSo7kS@u;3obQ zm*4f^BJL+1{3MsZ@Zhg=Im$VmX!m~hdvH;g#&J zYo;+_f;Lhr6b$T;?mo(`E2iCEk!7lfxRVnnR~#*YRxFu@cK<^|-4#Q0rUsN{e27DJ9$8H{>hKt zJ%22qzkx&_;h+?~B)G`pdA%J_JdT@-waXnQIVjG((0OeKP~pYMb^}lRjd0}LYr7lq zR`nm{^?%A8sD6UH^~Vq+lQ<4H{lW8p=mv2u@(WJ=tCjy7{7{JRNQ4o7f)BZ33LE0z zwK`NSY%K>n9q1YGNKl+y@{Kfg9|9YYpTsA4rgZ|w_ zoQ2nx`gE)O6FiZ~L;2~p^yW7ZQ}#4U$d2M@(iAro+erRI-uyF&dH0U&;{396{#rYJ I6w;gjU#AhELjV8( literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_lstadd_back.o b/libftx/libft/ft_lstadd_back.o new file mode 100644 index 0000000000000000000000000000000000000000..3c154e26a9d0b94b76866272f741862f48325dae GIT binary patch literal 2736 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 literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_lstdelone.o b/libftx/libft/ft_lstdelone.o new file mode 100644 index 0000000000000000000000000000000000000000..d7ffe7a0f804cbf1be73a715b19e3608755dac74 GIT binary patch literal 2664 zcmbtV-HRJl6hC(+Gsz~+N3*qdU6FuFLEM?`w&HeMY@}AxrBx}c_(4e~*~y1aCS_(4 zQf0Nct+*~!7eV@Y!6<-1h>p3&`W+%7tK|C<`{Lb&5bI+MO z=id3?!lf4##y|*z=itB+EI?a7z~vB@p@5!im91YYo4*$-TN|UwR)4Ruxv>ZNn;CRL zID-5w4dHL**uMD$!R-s9%H}dUW+Q8_vVD0}**?90zp}kC`V~nG|G9AWCw7=UnVZ$r zT;bvQ++kM4GL$^dss_#!_3|+_w~{%NIX-u84j`d{!ikHs09qbM=|@pTZUD(yrsgsk ziUCMvLCsy9C1V-QnTObMTqUiAVeloUNl+z_3U}mCh~=S%grW+TEcO~%ET2$zh7r1o z3ax9A^*Jf6j)UGMh@zZHk}4?Arbs`9k8&D9e4Fq}3N-T7?%*(!rg?z1dfyHDrG{g< zt+FBGZ;o{Vky8yq0w^#+YP|AhXMFir-K}( zBZUe7W1-=z0UY6)y?X`Nu)yXIB~zc_XLuBOdPr(CJfACkq@2&{%3J6G@Ci~0IEf=; z?5|vw6n#B>m;n>D<2Im#uV%EPrk_!WB2n{9OQ-+Tiu&u?TvNkQ)mvKn4NXUw)Z5w- zeN{`YY6)ah2(t*!A~Ml$Rb%>_ijJwHwWf`qBAI|c_NUFMFfL6GzBlqwFk55Mt z9k`c}A?Ij9MOYx#`OKPTSL!o9@F zW1JvA`hMZvjau-OTdoNy*rfsGy-1Bm**Cn=#i|1z)tRUSa~ z)0WEhKaL!^EaDTFA9&oiaT2k}FEpL!Y4Hu->{MS|M4Zs)a8ls7-%k9n#3p3l8&Ui< z+5HYDmSeF5#rq4IzR$Gp|1s}B@ttY^=&lj*g6|ZJe8ye|JiL xx`XBXuOO#h+NUyZ;4_wcJYM9Z`bmTxSpeT4koS(}YWz_CNCpbU(HWET{{wo@{yYEx literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_lstiter.o b/libftx/libft/ft_lstiter.o new file mode 100644 index 0000000000000000000000000000000000000000..285e7bafe69214e6091199f52acdd1e3516670de GIT binary patch literal 2504 zcmbtU&2Jl35TD)k+t^OCb`x4!icl`70+DqRf=E(Sj7q2*6(|)!aEL71S$~N2y7I2A z1XLPGixfqm@^L5E} zNFGD(?o*^5tR0mOUOz4!tPFlZ1C?UBw7+)z@Ylg$P}=)Bzxk7K+IZTTQI?Z`{DO1Z zn8wy-4s$IRJ=1paoaL-eUYfjk{^j!kDFr4I*Jc1z4hZbC2*WUdi5bIkCMPKeH!=m5 zb8Uu|FS05v?Wn1*k`5Ka5(D*L7=92*=c)W!RvZEb5$=YMBPfi z(%UXv>2*$2+Mv8Ic!Bx|BpWr z9*ehyNB6-^Ft+o?g;Nvh`*`$EB2SBi4j5i>@}HVlrfl;~i~!h0Dg_JpH4Ni#XNrLS zF>>kB{BZD5L75%`2tUX6*#u9QT;vH>Bz~1`y7MG-Sjk;K7qkE7B~R+~Iqp?P z;Xh{krp6z#-O%`N*bX%QOSYwt)W664CtCbxY|k>%o|5~z%)Gu|aJRf_uTid4t6i@T zZbWy-t##UMx=HK|qi$ky!R>l}gG*Z2GFa%F1^-+{(R zxZesqCcI|3-mSE~L}h#qTq_QWAc!Ugy^wL=u6%o3H_Z992dXysGs9N zx+fGe&$hr1ocEm&jM8854D#dh-{RrKH*rKHPjHR%M}p9}lN|1ZQ}Tq`K?S*6diX9A z%M!>a`xiPwW!(8K^Zdv;(fMU?Nxtw+-wOBu#4+NWd4Pq-%q0Ve}J5Rb`)3S`T3p<6w0GJqWAv?9Ifg5 literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_lstlast.o b/libftx/libft/ft_lstlast.o new file mode 100644 index 0000000000000000000000000000000000000000..a3c0874f10bf4c290b417f1e7997c0b2c5f5f15e GIT binary patch literal 2448 zcmbtV&u<%55T4!jZk(i9J28}$R>&7rftqy^f=E-T7*z%*R6Vo`iYis^+FAb)>viQ_ zTMklyDy5PsLPZFv2M#^*fAj#{_!GEr=q} zy8fxIX&|P-RXAm$0{ms3`o-8SLIxvu%fo-l!^7k9(cv*<45Aw>7 zN*FLmL*~Jv&_~5|d00Ar{`Y7!isy%=6U37{&$LDDT{~wQcJ{6F_M*0A0q7Y_GaQ^* zvWm-wy)}Pj{^Ggq+{fntQYPpuZRY^Y3=mjn5ypW4Gdaz$=jSO4AiV&Fy`3Yni4-2< zNa4Vl_{Gn}zWTU@f^LXPO#6bEmLWf-|8(z^fw_mos*!@GUzs7u>K~;E-^Za}hS+~V z{#F{yICi(%3!+}W=DR^7-}ky)LzJh}GuI(c(99n&Z};)kz{VGMYIzcVt@Do@rPO zQ~%SPMK`x&>U-!lOxxNqXOLOj=G<+B9aFPD*Db6zUf`9_Bb-UWi_x?I172=mV%h*> zf(tPKTYQQcK>aysZz5evtRJ5pYO=x{`pGKN&7_aJ938Z!F@WfFSIN$fA=VRD9^Ovq zw9XducNposl5c(K6}sd}-9E>a8Abn<`5i_7h55ds|H#}|^!v;QiaunXXQaI+_kWdj z^}WE^_o}@{#jRGmULTx@uFC0M1gF+%x9JXXTo`r1>3Y7)ycN_t-~^q>b3VJVyAnoj z?MrZczu&I7`}=t18x!GvEAUwGnw5IjZF`Ao*!vC^h}>pWgm7C$I z2#o4Ip$|1_(vK2eWJmf{^sG3Hl&h{uQ$O>3hfzR{y^Is8MzK1J-%BE+8oPmd@}5Ze zAABgAoM3ZY{251onFHTLq>xqS0zYuxQxO=YzF;2pY5AA9Iq};!VUj0U;{1sqB)5~z zotTt7kq*#7?VcKbmxWCUWR&+88UH1wo*!`k$T`vZ&Ek-J(VM8LdqN4GaQ*v45~jx1 zaBkY~w>+gjeO=Z1yQmr0N7QED;&^G&|02--$<+E!P*cy2;_}=-zY#&BJh~%l{r>>W CBH--+ literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_lstmap.o b/libftx/libft/ft_lstmap.o new file mode 100644 index 0000000000000000000000000000000000000000..da2f69ac5d73f5d1afc3eabfc2543d9a6a07dd39 GIT binary patch literal 3168 zcmb_dUuaup6hHUgd^i7^KTYhqbwesR24ZirT5;{Bi_Ge6I)^BgzDSy+H%%~qN^;Y6 zLfu&X7wTq<2t%C=@x>QWpARVAEo^$W_rO7pY5Ip35=lp)( zIp_O(zFeF<`?xGgAVh*kU=IlvV9v8=CoD4oVf38Q8^7wSzs2>&%8uTsZ|jYjEq!%m z8$vJn(GATl2)!I2^VZ}p1>X6Rz}n=tzV_sfzBb<4)El?9sYh>2HZh>-47g$kG_ijZ z12HJ!L3;;%cW|8C{`qdAJEqq?mR?=V2j5jAm82~PM=`i~u&ik?0M z;9?+iYAOoA#=4*y0%F|HZ3G%MX-dVX9-E6HEdn-#$p%B+vujLw)a|DR)Ss~Fvu&8k)XQdl zI9p7Y7lxONYOPQy4<8@Z;#z#m|GgHNySxPTzS%{T$wOGDVGHNlS zYFrq}7-r0@rkB$7<=B~ewN|fa#%Xt=k~1QDIP(NJ`y@Bcr+M( zMLrWy#Icnm>91gb6dgW(k_LP8$9+Jt)~4m{O83e{ktiXFd3>G(3#+qi zFvqY})CCs3%?8vY8%nb1DdwGJ?pfwnraAo#v zd$!k+b-^Fj7C9XhXs@)ZOX1bhMIunZ?W8QMz`rZ%1onh`ct3_*q+?t$Fd9CcQ&iwo)q5tHeEOW|fC!i$+@5_zdzOJ5QmUtAJLnn1=SmxtWogna(~BTCuoP zN~P!L@nK!)axWIj1}BVsDpyUHjIMV@!%@w22DI9R66ya%=v+GQuSohnFU`*d!L{>k zp!-Ois0ZPm;D)G2!8>b`{!ghMoU+b~LEKaN)2H*Knk6}CE5N^L`<3NbsMCC+;=T#q zIsa$&iT{y1{vraocE+DWzSsPleE!#X0L`B$=ltm%AeT6Po$@KaydQOvXp8ZMzL#^( z_&I*4_}|neB2MTOkMD9qaJAQ^=;2HCi@6p%YmIWP^LToVR@wcdSlQco_+uUo2V|`5tshi&cMc%; z@eHXC)(;8({b^F}pzT39LqO%u>klJ+FB7x%L*$2*-Cv6D{VZn1v)O{7XY-FA&(4ZD z+<}(EAl*XCoLQdNvujglrcNwu6kc8cNEx6pv{3*sRz_4a2ZW}NA&cVxG6kV$r>1BT zfQcE+wp^T*DIb{wwA1= z#pipG@zjlF)K;t)pb=KxAoQFMtvZyvMo?;XJ5Eq?eCOI?%?V4PZ*SYZe(7A#4|>7M za;eky+Cj^4-ICj`HNt+(hU-AR>xGUNg6H%@2&!&72mzB2!!!W@X?u9E$8Zpd>u-bT z=f&~qbmlHz_>+jyAfju9SF-ur+PN81yM!J9A0d>2C7gv2e`aTh(RacjEEsMW4~`Ta z#%jftJ)sdqr00Z@nf$>p&3neAc>(!5hHf?u?N?*kJa5dJyM~55cOI>0BT<+av`Ner z$B&smLo5Z4j>eckhe75Mv(AM!0-~ZrT7@EAhkq6$?PxBsespJueS(A9Ql&WtsKhDD zUq>;?HlIXnP}eBSjD*K+fdZ0TN8*by49A!gZm>-336`b*Y1W@&PUlG8(#e0p*BF=U z^jNPb_)XTMu0&b-f6e$6#s3S|eFguN_3H{Q*T1dcbnisPXpYa6Jl9#q)$^u@r3==U zQ|mRWcCF?++hF;QYg-}pomKC4I@E>i5rjUQXhOOX zv%#$TQXQxmIWI8y)gUq!RNqyEll>^&^9;Vl0knU*Qg#2-ujE26X_CI@xO+(uWtm^{ zXBboC-{fM)w|InPoa7rEKjMVSPO@1NMj0oe9TX6|s=D7|fbJ(r^86C(qcHCN-sk$8 zXGgj}dOKvi#9hSHJyFPg&M)5w!iZGgCSv3A_s8U?H(1So88Q9hQ5V@Q90R(`@iHIn cpGfMl2JkHk>fMoTmFxc}QjjQ)dQ8p#H)qcC;{X5v literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_lstsize.o b/libftx/libft/ft_lstsize.o new file mode 100644 index 0000000000000000000000000000000000000000..4031bad0c273df27febe1e98fb4afea61bdfa0a0 GIT binary patch literal 2512 zcmbtVPj4Gl5TD)k+D_c8oft|>5y}CCK+QS{L9{6fMwO`(sveMna;dDfvyQE<*VXRY zaw-*yLXoTpsktB!LV&~p@d-F0ao{T;apu4gDThcL+?m~(^kwTF5F@>vncw`|H#_g` zC$*dJ>zW2a8f?H5O;CVR_K94L#VQohbGttNt3JMe@_X%=(E7ps6DWT6B8rE#hvXHG_Fs${$ zwZdx`H_Pu{1jv}6GqhO-FxSqg*;l}@HVTCTK&}YnkUx(sNdYiZ)(opqpnL$cbLhKS zCglpM@C~jEE{uscelC{NkE;mihM=TrACaaN9eif=qfw%DkeT{X6l?QjgSc~MCf7qb zAG@KTUz;IYNq>8m_#3$Ns}Rdylf0gXT=!fxMRTv@f3?d7F6 z2eEPG<5kqw?6;sDHM}qiyZ2nX1r@&?RyzHj8&=%F-Ct_DQ6&nTp)(j&t`CB65U#CO zdR@O8c3jV^c->|@8YN6g1YJJ@ObV^OAGs*|?kIw=;dK$ia>QDFd`E!)^s2OLq~{U_ z+Px1!8vJpC<>f_453O+SW``4NyMxPItW`pwn z*a)O}b9N^g?HQdQBBQ98`Pql&+`!bcJ7zxHF=viUE4yXpwh*~t&fZ4$j;>?+B;r}m z12kmdpUE`40jCAem<>1`s1&XoHpOB9&Ffj(L3KgNANL9|$v_jOR*~r@JehhFkQNda zPaxq-te;nKlVxIb!igl$dZNP1%&A@Kt}j0WmpI8YWWPFd!5^|7A3Br;|B>-#%KuZ= zgB1QP>-#DEOV%Y$@{bw+BISR?`XY1MtGeF}#?yTOd)I9a_8LyJ8Ms5RBRWlXtKaL< z*Zw&x9d4QF>3uY^5i;Lk*QUEgKE?KIkf z({mM9JR3IFikv3${T}iEOOG&tI&YHiE)UQ50x+lks6@X2!eoBMR%JovTkw(y%qcdV zlT7lx<$JRGQ@(h2JcW_3&Pl(MK<4RMuOqIWD{=pWo6_L`i~Z;>Bf5~V`23K|GV8*A z;JBX!U@rBAKacpd_z!qEX@4q7oNzjiBCCG;>ToNDv@i7;vAb#a2Mke}rQZo5_=W4seLxsd+P8(+wE8eFqUuD^wtadXl~_5jx@ f$@~jI?@yGj{}p2C-jUxj&(BY!AW%+V)qJ9~ zh*A-Ou);43Kw`nJ5>|OUPVdfVqUj72&~vWb`?K78^+qqeUhd6pl$T34%DvM1 za_Rb8rEBHiN^9hc>{|I)X``@oG)C*??eT^!ut~?*1q5ER=bcBZ4 z_EdyMXi-o<$4@3&TTf+wAPPk_BPN}JxoYSJ;drfGahu}{w&y!tcYJcnoG>Sfhr`G? zd2tHSw0S=?g87c!skJ<_2A13KtyZ^V`fSy09}mQUwQsZo_fw z@ZWZi=e{L6Jr?}JGoUOEDq{ob%=`G`-HtpB68c%-(fr_>>WTe^x_}-4SCLA=3;0zO z<)8e1QuLeSP^{4R=v-F2z0fI6PDS&mo>p8(%W-S%ux`WdNwIz?eo(L54YL)uSXL#D zL@Oxzp?#aWVa)1d#uIwhct}qf59`?_J%^M!tEY`tG)>RyL$i7w2~!_1n))D`Q?tg3 zuCBhMD@&?@8;x`J|GtiN3jW&eXVqY5Lwn3xe3SQZ1T?^w>mwRq<4JNa;^9R8sOHFt z4Et~%-B6Abtwns?aYJA>#*c;(t=| zUt;{M#J|J1D)H|zj@|*Bi*-L>{-Wf6h4I@G{|)1hC4QChmlD6i_*;qpjPZ{W{}JPH z)>N}(-5Six^#rqSSHtFfrCRmu1uz49F#xmH?R0ExaW?uv@=Y*3yIo<6<2Jfry4}Dw zAAfSL=m(YB%V1L9%~$Gme7l;EbZccML4+VwBxAo1(MNqc*qE9|psOQYwo21u>hzDlQIp6ut zxpz+Px#ZRC*~e5x0U-*Uf{rIpfNHd3&jjWSB#=3qTmLz?zVcgc-M^7rpS_-2UAYd4 zwLzrpWcP@;yNR#dMiwdAA5kMMdo8z7%AmaL|0H=NXD#+WcB(kJ~OIQdEjy(!}!sCe^rt6r)v8YM8D zifdLIb;~uargc7Dv^>*m7M2SBvU%EXy1qM=G3&NtyH%@JGi!FS;w^^?e8;sH9IKov zRSV5dRj?fo+(~dV;6SZ`8)_4Sh<(ADM}pTxir3754gYQX;kUym*UE*bL0KMB#s{OZ zP5c3mAx;lT(5Oe^LvN_359#VvWB~kxcm$rux1uP2#t)IA-yI*t^xYr&ROH7IZ!rn~36i<+4>Vs^N(Csf3Ye35CV_|6sa4$25I`jep6adY+Bz zPXs!Gx^I=m5$emc(L5Uq-pM>W=CNBV?Djl6o@ck^waO+_wWANRi2glOzhM0@umtAx zcjXM{nQAaae@JEcN#W|f-mfDVf#3Ig#WZMd{6JU>58wfe91Uts_w6zkoZ3L@BIgU zR^qR6{}~Ct$o+zZzsLQCgnz*O6$$^G`x_E|mHQt_xajjG34fdWS0tQnEt0Q81)^`F zZi?g7v+llCI4<`SjIveq7v>AaV$)gz!?Tt>FiMSj-NJi<2k|24OcWSRt5)C<+o?3b za2lRvJpSZt+Vu*hm%*U3>MC{9k## z@h|z0@_dN~W4(UV9^B;+TkM_%s+HpT)ZcCq-!Cv1jb8oxkRJ%qC+c4xJ|bV>3y6tc zpxKr=zWy(5Bs63$%|Ng9w|cBkx4OLkvxsSD_v!k24WG7%^Dh9}KZ(5l`-sWCBi;<( O)Mau|D37)zum2YdSwOJ> literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_memcpy.o b/libftx/libft/ft_memcpy.o new file mode 100644 index 0000000000000000000000000000000000000000..5217585b1a952085dfc74885e02324b0a37e7180 GIT binary patch literal 2744 zcmbtWPiP!v6n`_b-(-_*c9Tu1X)Bt8wMEQKvW=jv)|I-t-L@iPBpyoKKi}>S?#_n! z6Oux0F)B?9(p*GA^q_~Lc(6zd9z^iqf+9J3%tc6V^<+SBeQ)Oby0eprh!1Ao`~BXZ z@0&N@o88NWb1$fh0#Xz>1$`u0fE~SW=L0hj8H}7SuK!kCzjUv-?r#^@=eLS$m+nF4 z-AN2Va~sW3GOrgfqOfy!z7Kvy5>pDB#UBe@s))E-JXzSvtQ`%}X7T#@?zR0%bYSrL z?$yBT7T3O4Ft2;}r(UlY_^>kSoeMuGrlfhwpo698;(0O}bacIZ(okUW5Pm<%xd2x#e3sZkz#hpsYZ}08LON z=%3(iDES51D5^0`YAC7SMitmPzP*ZXd;V0lRkj;b%iM9Tjy*M-GiHpL>EnLjoP8^Y zXwG;7>fU0Tx2sF5MiorE?wZX`o4Y1=`08|pd#2}mQh%0vm20DRycn#eprk2>K-b4@T64Rb$$r4MISVDh>sdw1O z1*W1$(a)+nZa!RR_x)|867YL(w+D9x_cu7;*3h$;Xb|~GL;^IRNf{K{P&QIOcn8SI z3L|JoSCMl?d^m4tpkzY@lAjj%K!j()CUq#nQ=O*-en@EASM;eL{|Ekr;N`l$z`+Qj zE&0oW55_&hza#jX&@%q2z)p<+OyDaq{wslH|74w8g8w`g|FOVd#`tRj--+=z1)dU` zdK2wWUGVX~^-n$+HD2)>i{(ni;mcrne8mH!+G)2rPPuTpo&$!%TV;VQyWRoA?s(jI z@um4`*DF`w1cT;nv0SU+cd9WE-m+{i2;N+*JLNX-ZvaQn!20<4K)u=~{r`pf9X+42 z;(|E9^!1HOd;sy+C-?}+^Dbla!jSJ%@?+8vnkFh^H4yq^KynN(3Yj4gk-tRVHxZ6ZxxUm73of32OB_z) zU-F-i)QpC1MGtqxA=j1EN|?VC510AW->Asvmz;~nUi~{J4utFz^^bn7WxnJa$i?@B z6ikXkxk(@*@mQLHz1Gj~u|A!(`1-FRr=9C{P+h_6zR2@03EDqNeEkoQi}#M=w#EK$ N5Gf4)MNtv0% zc5!tjxNNr~)~EGF5fs4{#1~x@rJxV{BJ{D31rb{CVZ{d*RN^^z?rkTt@j*Ov=A84L z@7#Om-g{2^M&bNZvLt~J2~NYICs2Uv(L+1W%sh-CbJ1A;#pwQ;H`XuRHrCsF#`@x} z(Y8i1TcrlMmcrR67;#L4)n_=%(Q=_ii@L{yMDG@k}g=lWbN z34}%;zyV@M(Dsu7hNeJCoQ}ui82ARC2tG(*yF9||@asDSWJRFlNzaofB_G6hMBZHK z^Xk6$z8`zp_dZ0W%9~5f8|U5y=B2*$V+QlmGpkSQ)7gjHEI9M}EP8YLBT)60n`X1w>X>>Na(30t)mu%| z&6$q5mMxiH&U1>LVtX}rw(YoWcWySeALB(`EaGf&P&}iWr z+O})eY_pQFY{adL=CTJCc*W8TlOBeRnZpIA#GEQ zqE2b&nAT9o(Z|10q@+<#E~v@^20u~>Rgf^E=>(}-T}^z;IEe){^0+#*ppFpZF-<8g zsl%EwwWP|JBWdU4Vf;paH3Q!7Ar^t(dILhBz`=L)g%w^ReIPmt1e#DFsKDK2L@OE# zaD-VyBNdpJogrc+PN3q%HUNKN*B~LAWEh`=ibPw?NVs3nXrQEg#rTA0xle74g!n46 z{MRvVi*ZhJ|30qiJA%9P(7)g!PmI&yJXYgq3;a!vvwjl5uW-D=wcualz7xVf;r`_i z{weq03E`~CAog(xr?x|K!&e9Ee4G1Uhw#t2pW&MJCb&Ozz9iv&(|AdhSJptUn5A}Y zxmYSWW(Rb~Y!r3RT=hUNx0+28TM1{lp2Nd_hGkbNvKK;iafHZ0rZfLULzI>n|Lpkj^dI2U#+)N4)B|5vEt2k)yGZ=YZ2F9g6f?N?Cf z{t+hbzli0zA?ilp;abC=%f7l0ycoay^v?ka{oK;|Ve4cfaQd+fuZakMGZuijkKDbB z`ve9C<+nKay-4Ib%zYH`U|kD(hOhrRPoVV^6kb2oJyE9d2}+h6nTPo)yG!&bOMG+o=^J|6!HB6>!LAe|8DXNCC-`l zk9v*B7x=4)h1Y}-T;TKnK~6xzT)H2F=HDJLKlSqP{4XG;obR4?_ISRSkJe8j ZeBT40J{aCRiWz)STjZcn9t|0u{~yRyPbL5W literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_memset.o b/libftx/libft/ft_memset.o new file mode 100644 index 0000000000000000000000000000000000000000..35fb8a73bc46e2fa1b3e6b57c2785f099cfa01f3 GIT binary patch literal 2624 zcmbtVO>7%g5T4!juAMlw6Q`7vB4i{GNXWZM8YG~i1Qk;!6p&DZ%Aqp;d5%}u>*C#w z(n`=mB&Z3X79l`FaHtUCM@YbhD=G(i<(6YENa2XoLnRJoX7^3JdGZA@((}ys&CL6m zo%ejXeCAnQ(||>TlQ2Te0$j01_Htw{Lmng7DuX{OgE#IB!rPU>+FoV5e5W!f?^b>< z?@$!toyv*wUViI-MBC-tS8pPAR2RX0!q>t=mWztmQc)_eAzY_MxLIvriobFig-TwK5BkS~>vDJg#Xy07mX)Hk$=V zAAyzGcmjY-9s&A)z>&g%Omyz4$X0*OBB3)$Kzo^xmVXa_4gLD&0Tje&JNC6>^bx9* ze*M)5&3qN3a}g?#56q~1bTzGR4(UScrw1R3^bbS%n4RE}c@3ebe;X9%)E|%&daDskqqZV#Dr^3D; z`b&#W*Y#Y#Ejk^i7 zlRHF;z9$aN3H?5u!|8N3x}}B1$d2mg#C3CAuh9vc0!HV=dZGA1vng73JH8SV`yF89 zH8V50XIj>(nX;ZUC$`Kin)<3aWwlMiI%lR=%}Me-Y3je2ljlv{TGe&j6wNwL-bOM7 ze-Fp`j8W?ya2sG8zzmGIR~YVV1Mm_kav$PCV*aSM$VJ_TdJ;!+6}}$C$JYi8ltQec zc;ZVEA4%}0v`O8Q;3@ubiD^G1RH*%Oqx}exC@Rl+yq_=*gVRzoe_7%+g?~%p=yRjZ z@$X9hbtV3W#5^Cze=qs>mG~`*KUMh8CH_+32NHj$@Lx+@l$vUjtWQhwYJI?Nih8(S zt<~#&u>p13_Fh24K1ILr_FVE09*CevK6)dSn>1;Rf4!dl4>YK_;xrh8Pa zHJkYMtRD#PxSo)NXjfbPT33wLz$<0r{Pa55{>3io|1Tfn6v_VN8Fyu~aebMm`Xq(^ zB8cODXWz0k_&zW{&4$#JtIkQTkEOpWH7hmtF?6UL#qvw>6DLZo#vVsLc@H^!PLiL= zgq)1Sr!tZ`sUJp7A@dTm`dQ}D-(ymEeb#rOb6kE^Hm99Tma#-}{xb=ic$N>6&CMig z&SQ%Hc#*rHhF_Be)i)`8e&&2M#?|jf**{z-s^0_-&S!odIdxA+!7aJ|Hv|%*#@5j{ yZv9(h)~DB7U7z~XI5X^_x`Jb0xc`};{gbHce}bG^JBqs?FBR{f^5~AJ>;DVJuLdjt literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_putchar_fd.o b/libftx/libft/ft_putchar_fd.o new file mode 100644 index 0000000000000000000000000000000000000000..88417564c4a6742b361b83f49b39e9a2a9626240 GIT binary patch literal 2384 zcmb_d&1(};5TBP#(%Q6X+Dfe-NI<26bki@v??y^Bg5OY2may4un$ToZHoG+yw1tAU zh@uBUj~=Bbubu?`AHs8I1PcIo( zqf$51W8>xdzSc%UD~r< zb){FtI=eatVv+c{n23Ll#L?R``s@AzHBtE43Nui49<)uZ$aZK0QBa^G2)VKXyIW=r zHT}N$ZY>a-!=@O(n*gZOEQ^S#Sbo(|xTrF<)ZKa(=mhlt~Bcp?-fXPn-ZDDCcE zj{ZC+B_7PP1Jt5XaOU$`px~x2Ke={EJ@m^H;`;_fQWl}>DAUk?T`c@Dz zPIm`$B7K=QB9D|#k_T;7#KZE>$^6sOf%2#M3g&+VF)|s&<)=aE z_tFpIneS&#a~kHqDGew;Kd~S4DOB>=Z}%k(46&toM$<+Aj8UAg(*G0*KH}fc5dO`C z)~_s!%I{3|qZwy^#_65IQXP^B@%IGHTngIih=#r2YRLWcZ4KUk12N@ltB!0H*EYS9 f{(K+hPsFk(0ldXSuy&;5f_@+YiTr5Bg7^Ocz_HNP literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_putendl_fd.o b/libftx/libft/ft_putendl_fd.o new file mode 100644 index 0000000000000000000000000000000000000000..d0d4ef61dfef9f1a478a63aa1a9d1f90ffac1154 GIT binary patch literal 2504 zcmbtV&x;gS5U$rf-HtmtGmf%qlrRv*i`%oV8wjhe6HIgxB!aM_2N}9&dUi*9de;82 z%nGZ*V!}oU@es%@w~%8_IhunKatQ=-$v+?{co94-D6Cc8^>%ySjt8-z`+N0O)qB-7 zRd4QodGWj^1V|Au3tO6G0sc0&*7amrhcbH3HP)UsR$r7GYb)z(@vFw_$~u(plk@X~ z_-Z^@S$`0}dPWh5e~uw0N@Mj&`TAqAM;tBgHS}V6|Doa@Q859u61wOXS}JD!fL@#_ zoGKhUcosLy8K5!o)m{Lj1O(<0(2KK$LIJ~i_~h^b$S2>hD_N_rStK-FvZRSCq=`~a zdpJl}*AY;QQmsp1IQYT@@g)*4axmw_eiT<*p6$<9m)s!i_WkOKDQnW2oH!XL#uIm@ zP@A?sg-+C5j3d`?d(BSUYC+BKgtdi!&kbvC;4V)%Zd8i`d&!OmwR3S0#^Ll-t=ILt z;ezXVHLvS*qCpD7dqD`T1v`LF8@fKG{9akn2chgs0mSXgAO>Y|XxEPXk66UR$kRhY zrGn3kLcA{SCZO8mBZjlYFHU5qmLmSjC1K>po*Jfk)zHm( zqjb%vm|q*(X=B{HW@zSVLzus4CT=Msw&Slz<>2MUb_?zgn@0_qb#9U&5)~bGs8pis zu)UGKM@xBx_s_^xGUp~WLvH0A{!}>%{X-+i?PS39P{NY%6jH5m>E$ujk@Ku}2sM zY)&J(ey0zX-;Z4D!Z&jhVPv;%g5`Njy{6r6<7F^EF*$M2P%M*ed7Vw9lzoT984RQ|tn z{#6d3{HdgB{+}R6F7i8ZnaC{1{UixSdA>xN+fniVu><9o6&WY-EE?r{$S*rY8H4H@ zrtyoad!C8UGO@Ij-!Ew&7o+O;FO%|jruxyHBI70RAgAVp6x8|r4k;N?eUm@@j9o6D wjX0m~TJ?PDFa6?1AK@N8Tf*}r>q7aHsOLXIPWmJc{Q8Z_|5>LvnlbhKw`R@l0{{R3 literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_putnbr_fd.o b/libftx/libft/ft_putnbr_fd.o new file mode 100644 index 0000000000000000000000000000000000000000..7407bae8e4cd6c03d45fc61cea0f8a433ba66259 GIT binary patch literal 2752 zcmb_d&2Jl35TD)kZqmB3H%?R%g23XdhbrqNO(i};8x#c$swf}@QAFjg?R9LiURUeg z$VCJSQ9+@if(wF6;Z_bv98rY;OCW(baqC}z)JR-7QG|t=*_~HEZ=C}YBfU2>zxlm+ zv(Imy-&#NQl&UBoM1d19@B|9bH3s%-WUhjV%#GsiZ^fP8&E4(ZZg{I$S??8}!0^TF zrTb7_4sU(`Pru*4Nh`?oebWr!E4j z0Lf8aB2UR`>PK(H)~l${>kPa&ubzU9a_9wNzT(>6W`4`@+l`i&UtF>ltcCewVH8|^ za|yj=>p0Yc()lp(%6_RlWNbxfXO{HIxcGXm|nCs_@^+q0fQoXvXh-{Y6kZrZRVEZ2Ut!u6q!tLDHq^ z$&C4~x;9~`-yj3vIzlOU7-vOM{?1I0qEp793{{688p(m%hpc54-8gtdA2*)Wjha4f z)OF2R(dUfMBCVpHIHRXAdYD5dLes{}y0)UL#u*VcF`C1LGgm2KVqoAAZSoa;3d6H2 z7}iSf=!&7;e^oWG(zv3L^CyU=;E(>OpfWYWzG@Sbirwt9(FUy@;>8Ks;GdOnInUes;2-aUe<|T|ezHmEZO|esp2P_d z9ye)>=a?gKdVEL@$12LBvrX!538y?O?BC0pe(T#e5ACD-;Eysc_Klhyv9$z#iTxK6 z_+|FRd5S#mF`j2lwaE1xV?0^sm;qMRDTkXSyIl62EwFsYwXMME1YlKK&8CAb&y059 zb2whn@Mk<0PAG$Wf7O} zrJ&~-{DJ}E(eH^*Vk9%HY42oBQHVitub6%Zm+r-=^=k}P#X{Ceu7&uh`hR9H{!0X) z`l+9i^*?|Zxj}%C9+wuDI zNqU`uN2Il6itiV&hsLP$`;{Lb@jKJ`QLl^j0xu($tO+6bocI5h97&Q~dPhd>e{;nC u^p+;~KaH4ns^3C&5ywEdA;h^*{Upi#zd}rKA_7n6xGB5r(>h9--2Y$kluSzi literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_putstr_fd.o b/libftx/libft/ft_putstr_fd.o new file mode 100644 index 0000000000000000000000000000000000000000..690c6b7cac491b9d7bf84d8080031754be2ce549 GIT binary patch literal 2464 zcmbtV&u<%55T3W|-K24AyJ-atMaT#W7qU*%B2}eogGykFDv*j&1*FPa+iQDUd)@Aj z;2;GmnF3ajXvKvKqBoA*IYoj4XHNV9R8Y}FEA?QhNbbz;ymb9A2gFG4&CK_{*_nNw zS%0#6{!L8?kRsqTJnCKk@EdX#Jj(a$76f&bLrAgV!t?2IAG|7 z($j|v`^CHopcRp#TX-^Wt{l<}C-bl6UtTz~0FX04W8mBY0HX+`%ojl~oX+R-7}mv= z!v!##yxrc!R=0HoG+mCKVC-fxb-SDqw3W-3ZtOfY*=-u_|34=?seU;;s);K zV$F>zQQ&Mialdjl4#GG*zFg^gz8ALLPN&lGYR#yhs)< z4yFpkM;Ac!OXBd}nc16oh0h{Ri-ax;UN4kB)6VWQwfB$#&_XB&FX1kPcvRR&if$g4 zm?#q8H<3MBs_`c-3S)Nej$xYXhHkbD?R{eoP3>)Ck9o@|n5PW=cSAG3HN*#+iO-dB zQ}sU*r;UvU%6zI4KH-b(Kb65VqYTevaN?h0|2fulyV+ZMwYXJvYPG=K z04s1ijupB62&{Uq+jVhJn1S=i$7zJ;H+x|Dy~wrRdS`7hjGX!vusWTMZq;ctaKc;g zVcm82y43ohyqqr{`%4?i7=NSt!3H4)*Pgaz;}YpGN&^?`~J z_YV%Z##$6FJbzhoOXXZ49ee`?vK75GG5|s#MGJ) zf_2V+g`AA2+&Z33%m3Sy{Pay#^HYE6=f^!%*KzI2eU6v;sD2XZryjufXsCBbXTLDG NLkDd4P literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_split.o b/libftx/libft/ft_split.o new file mode 100644 index 0000000000000000000000000000000000000000..8ef5b894bc70be1fde4151f09f8f803b6d03fafc GIT binary patch literal 5312 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 literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_strdup.o b/libftx/libft/ft_strdup.o new file mode 100644 index 0000000000000000000000000000000000000000..2de40af249b45dca76ccdd013ae561975ea682a7 GIT binary patch literal 2832 zcmb_dPi)&{6o0n!xoOiTX*-RL0g4!~3$@!)q%pQpG!@)zplK)w4pVUwC$Vsx65CZb zR8}q9pc{u3aXtzQdp5*Vn_j`Z7 z_x*XFFU*~KO_n4OB*Ag$X#xev5A@{OP@IK4dX|i}-;K^61!HaHfpKl+L6>aC+J@2D zknT_-4$O6p&Po?@mq*CHF}Fp2_e+toNs4i84l}&5xq37Wxl4y)$kjb*GkhU&w!FWp2=hY($9s+;9g`=Cd~ag zekuIW9PZ_CC?|(o2*`>+Nt50tP0F=!Ov&quk@g`nCa*U_ZIo=Ny%%a@mx-x94&nKz zlDdj=nt;LUI1tHNXd6gFsT{a|P^dVjTQ4kGZO?AGg{f(6Qk$H3Aqb6AA5Eh+qrC_< zf5G$H)nHMpfbP~jz0qn~o^G|Ra}#CD*ZsD+WCqLniJ3mA^s{fS(Xb!Miw0lJs|Wgcyd=-Iw&hYg6&M<195NrlvzV z+%!GfEZuf1PEfU=w>aD+B+su_t(w+|T4+!vj7Z5z?8%`!Y+Nm}!bO%YGW7-P?nKak$8oqimqahKeku9%J(DvlvihgNR_PjH0BTl!vhP zXqrCbmx!g{ukAi2P++IPU1o(}-d!LnN_5GRFyaqi@OAXcKjaCZAvPA9H#{4}<{#ld z%5zXV;jzI#*ziP8$8c=v9h_vMA^diF3uRFu;ZbX%fHW4d(4X)LuJ4WEjLXCxkKyG1 z64#&NoK7OXtIt0IKf-ZQPr!8}fnVZ!_%fg@{I77ln()8Mb&*f_U*Nc~3;YJh>AZ*p z{%NE_fpc0@d|fq;C)cZ{L91HjpuS+1%WZ23w6^7#nr|)ppjBGUriGo(J@9$yH4t}< zVr{q9;wHy(L33NarM>=UX~Of(%KM;EV=kE0D!yR#U4f46S{$$%3$?b{v?x!-bevYD zHyL)ThO_%-8Tq*;@&Adw!94MMC(@qb7xT6NIH&!K6TN4IiF+(;vs}0(0M3&=M!zqEzD(ACkmnTZL^Y&8dED0m;9S%yIQ2Kl$@tIs<)`;6P9je5x6ml$xZmA)^TZ5E z-;bmC#iYB4r~QeOSiit7qR?;u3j9KebEf^HUKjBKUqUQd6GE`X3;LOq7$to_KwH20 z5BHg$-sI%`^cz)9ZMTrE;=Ek{$>t-ub9KDd*(2DXb!IKLHUM? zArH>t%lv6=MB(Pn+Mc=d>gd|@IVfL0o{)z`hQF9Q(VnS9qw#%=8kvK8k~v%(J@|P% z9-D(7D;Ix|=B4AM1FBM*d;Dl=URuDl$Ym^{=s2>VtsYiNr;4YGCytyw0+3NbX5f_r z0P4z=tCfLh_9;+GXNtulK<=P)0@LzpJWx16*WnXNIFB^fZa7v!^ zI(bq#Bj4&L)@4-aT}ixmP^t2*PVCKpLQ12dY-~x|yQp*d5AmI+#Dr%vh1=wy$a)-^ z&A~=J^1`Una4oN0*|hz@>3Nl2>YEuzh>0TDLKo@GKZt^rWuxnOPSCMk*KnPBE9@sKT?qncbSxiQ5P5;q z_UvZG@j`IG?ctK9Sm12iwGjT>qLUpzmMD<6FM!malaB7o=5FF|@+5M4Na*C@h0@#y z^11z*d-GU;dl)WmaRx@v^`GH#0)>U~O!5vjaGuKiJ=&h?6 z%~0ju3IfpJJTPOPxpZVxlJN z88H8Xz&~RCC4qm={I>;ugZV>&f6V;P1pW>4zYsY0D~!`#)BBA-9mvFU0KI9~qjt@z z*L`~v^w92ypf`Hmu8mE}2Js^Rx^KG{^Bu3%1KsO|w*K;K8`U7R8kf^o9(3xEn$>LL z_oY3R>N=jyfZeIJe5-4xGx0N{<7}Z-N4?c0{r||PSSEe%c-8yt65Zv1X|cKJ&j&Gn zk9qhiGx$B{e2yDTQ?6K(hQ4CsTTF8$#_BjAGKxLM;J>Z^X^c(x7v++iWU#~Pl#mg^ zPhl*FnWjFXkVWQmb&utJ%K_62Pu6@8`KOV literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_strjoin.o b/libftx/libft/ft_strjoin.o new file mode 100644 index 0000000000000000000000000000000000000000..6e9755d7f7a5b898dfb3734e520d8983f75f8b6d GIT binary patch literal 3448 zcmbtWO>7%Q6n^XVZtVQn&QJenMI!;_fV|tJp{g3xx>SaZTTq2asVaf-&pL6j*OhlS zI7Oi#18S%WEhmuRfP?@E0VhDfC54KllVA_5BEbSQqN{d_n<+@3a@?4`YBYaM8M8CX#;m(!G-s9} z{z4Z@&|HG}i#^PoPp`0`YddS-cvA!9bZfM7|0IRp!aJTqrB=OyF(FCZLOFx8b{ zs#jQs`Sjv-Y{u#IqS2g_Fyo>znqG*X*~}+OFB_*HT6}pRf`Ti|JT(xxc9{jtr&|=* zqQDjg&c)Ac^#Yer-C7N78L}7rtv4G_hFt5La0Finlh3ACa9lB(7gCRZE%i!w#rhRF zme{a4)+_a?0HHW0me<2rzZ~1$HHsS)z7yowo~|x56%8Z$)YL}LclV~T{=J(3R0Tpr zjr9X`jI4o?I3@##ZsP-7!~9`<03!SVySW|g)}t>Z?<6`@k@t})o#(+yL=hoODjjA> zj$goD4V^pgp_YdxS5Zgk+>;#jG9{uT9QEDfp+g+?6EZj&_|fyFI9kULL@r{-*P%+0 z@6e7iLcWR}YhjK1IwCNhcP+;qEL3vV#Nd=!x63taaA;WDu5C~5aJh5n*yx#rY3pX)oKEIVM|bMEshr!;_q%o5wMT~aYS}8=lV+u&SIYU4 z)9?nU)Nr=4^|JbPGU2MPOPiI+nAdsMksLJ2&BTo^t< zha^dV#(LPmWcWzBYuEL%Rj9Z{Q*Z3rncX>(tduRck({txJzsWg_-BbdO$yvSy;7N~ zCWnUE7V7-Gbnl$R3;@pbansf&+1$bm!P-;9mDx_QXqHeWBM8e7MUB_wxTHio|4@3> zBg%%7g1xLxDC;gNU1~;&9#Ph*2ZXs5&27l)8D&dGiDa0#6FHTF!WWfjQ|VE^P(m4{ z8?(ew+?`S6`;?B1(wR|0>ZlSv>JueU)Q_Ts5JfXejO&hKRz61$M&cYHM3QpCUX)V=(_?0sT3`W`KX2upQvvA^d!Re~<91 z0saHRZw2@d2@Ah?-;as^JfOc!_)>s>lkiUgeu41M0sd3MgEX?e_wWA&;)DB!rA#ZD zd3Pe4%jfIn6lis`lG7Zs;eb}CRjVeJYf|7xfZSe0*(%k1Wrj?w#h_U=$J8Etcsyx4 zxx!PRu_Bhu6^r!L}7Ihifhb5#?nxk{y0@MXr&j)s#vxjc^3RW|jYpE{*g4X& zU?U0H-0TUq!$dj(M^L*1{Xvd}Tq5$fe~H)7-){Y{)B0B^4_iO08^QJ8fgF>Fx_~Bc zpV5!@dqL1B)+$C;f7->Lp+jZs^EVME#z)a9Y`^Zyc0YNyKIV literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_strlcat.o b/libftx/libft/ft_strlcat.o new file mode 100644 index 0000000000000000000000000000000000000000..2ed02b53f2a229d7756884fa998b286af70253ac GIT binary patch literal 2928 zcmb_eU1%It6h5<)nO(EZ?k3STZAJH?(T9?mB*vnRw2``YvMoY|l_1Dwc6as%XJ_O5 zgrpc-6Z}~MVo*dB5y3(c1nGlF--FwA_&H}fnmJ8b~L1!p(x`j>bYS)lg zFb79j$5GCfws=SPu%Ass`jK+byl<@iF#gK-(x5b&8CK*>?!@WLpfsccBs2tv)R_@E zb3Q$te*EO@@Wqn=vH}SX%?<90dd<-LB=qJ(kC=UljXCBGk_XB=)S@Ib zTqRB|mHYq|vsEeiIoc@#pi~JQKgd^Y(`n=vE!S&xoczS3Hm;42JrS_r#2b_7O=(X; z-7kB-YgbKQtAg&-J-yj!Tb^#Y*78`z@^#-e7tLTvzZAG$;7v{H?UvK>nwD+rcB@kN zmqHck2<#3H95`O9;aIhN%kjZ$UAM|U)GW`3YSVPVbE^yl+j7bb{%_N!b;5(J#f`oG zB1lU)>GZK=>U}(yhY_cbgti}^&E(!rTpCalA0Y$aCxrUoWo#u$`YSU)ijEUMNe?`i zR;1hZVtZ_2lG$u4^>7RImQ%HZngx*+9Bd%a@v!3{kWmihfY1fnBDnt zo8zx>E%;w^|IHZAUKhmPjp2g#VGO4yi6qb3aIMkxHaH&Nhg5REwicE_t67zxQ8p_T z*IES4wQN)KttB6{YNy?{@O3$O!vq|Uuga$@$v5< UCOC}1n{7V-E$&kubr~Q3A5wBwpa1{> literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_strlcpy.o b/libftx/libft/ft_strlcpy.o new file mode 100644 index 0000000000000000000000000000000000000000..79091068b451a41c1f3ea6b8bcea048867789ddc GIT binary patch literal 2824 zcmbtUO>Ep$5FXq6yxVNLyZIqBl%E_ZMMANY5F}_z8dNQHmX-r*P(Z4}{&;sSyx!oS zkW_>pEk8*sp_HEsh(96J9uOS4p&$@QTsR;kZq21qDsc$6Adte0{a)g@=>aj4Ju~0T zyqWjj%zLGH=5bk)K#&9zu&W6aAd}veCqr=(3g|g)tXwxbe~cI_OIyZDuxYGJZx}xn z*U81Wbavh7d?$^r8OP6VEElikJGX^!ag$8>Z&R7h7UbVwL(|3LwX0J84Tkm`M`KPG z`!mL+;uiTYha#@HCK)Tm^&1~;Z*Lo&r47ix-W^4RZa=0nn0aY)12HfN`0IpfHd*G}Q-?8sDR`0hsEG0sz!| zLCH;Ivsr+29&tRQ`$7hvVd4~JhfH{sRNc+=1wyibNs*o=P0GK7e?`8$5NU5m+FYc4 z5NXXwBhQq4`MFT*Ar07D^hc64+$ENlNxzFMlvOGH3CbA)V7d}GelS$E%T8lx-gG^y z?F@~MX(QUm@Pk2U9DR8VwQ=nssQa^?@7mS5MXd_DQ}^^{yJdR1>6(kf71P&!w>)1C z7W7kr>jmEUnBKA+%WImpt=m?m?k_|vwh-8DOdL3#)o{$(kmdN`Sr^P%A8MWt)n?fR z&#i_SSpTtH++IKJ5lOo66i5pN>2P;Cvx>KICt~yw(V@d*xx$f=~*c z#lIv;f9DPoqf5k3(gV+>edxA5-x?kr3+3k-Bn_PD3=s_mB~u~3D&Lt%nInyU1G`!mM*cb z5=*I%GWi>(o>ym>qBd9>?Fjd)Pp~c&SBS+5@k1`qTv3*PaQKPB#zwshKLtNQA|v6^EJl`I z?jZ1Ct`Ed;#${r6#Bf^Y7}xLSoc6JEnH?`AGP7iy2x%xb4G>Eh1 zS`A;X#-2dia!d}G&DpwJZkb}8=n>N}m0zxa<}J2}|6ihqHQs+>y=QoXek}mb>Ad1} z4=RL-eipV#E{ORMcydOlPvdHhGk3rXNKFUgw7;dq%Y0Ke)X?$u*n0cewxo@{TgEAGJ;>6{^D_8#X*!se!-7$EE#`=H#@B# zClM$3IW!76?)O`KSYn2xFU=!jb4mB#Iq+~SmPE0C0e4W?@BHrP4JGcG&X3**5ijr; z5lhyD5EOV*|4K@XlD;n5_RBxHPk!pPWd0gr%9(9yvsdxkp&1@8@=^UnLXR{6dIytd SN45=K{~9Ss6h})Y^ZyGZ+d7y4 literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_strlen.o b/libftx/libft/ft_strlen.o new file mode 100644 index 0000000000000000000000000000000000000000..a1a0894eb97948def6db6bd4a9ea8ea76a5a518c GIT binary patch literal 2480 zcmbtV-HRJl6hC(+Gn;I>$$n^UtwX z7PhUfD=Y2B{|Fz2^lg1x@FAWvb8j;bvjWLkI;37;d$pRc1Q@xR@4X9$|HRs?@=V159+1ovW>iz<{oZq&NDdNHT%ovm5 z+}%2I?!Gm?^KucYpDks~*x9?!oP(|LgFhyd35JZ(I7U4F=vTJHp02DIdS&skbCo5w zYyxOiOw%p&ESrrpdgVg-rSh|9w^v>{3s5jX6V&z!fU$AHG*83!N|pdH_Y~-ri{)|| zpjbs7p!7@%@CmM8zy}>^4^E}J`uYF~O_wZL>^-tr)x~!~JG`D*5rUx|_ET$#d|>+Y zM$xP}g1KUGgizWgod^><+Dd{rskMDK=+$<37wzh7qTC4T*N$Om?wT{+?^#XL` zW)z1$53DxWK{vAd!vT+M9`YOY7LV;Xba&ijWM4|cD2X=K?SU6~QJ?$1?R%|mJj!6Y z4){YXn*@>93wWpI1u;b4P2NO+cHa#FYxQD0(|_6~z$0`z6n67nV53EL?$liIOKkEJ z$k9VWt%O%Ai=S(k7EJ9bMgV+|R3Y^+#{RA>00R9s_%J((LfXIW`#XdB+Ip&|eY3NE z*-1Hnht|$-HN1 zzZml$8X6MJd{Z-VFIn1*_ov7e;IGLH7wGV?;0d>mo>`&;4*v|%0Y_Mo3urIr)=zti zoLpfZ^?VgM;>2g8j|$3i1|a#muutds+$RAZ&+)X*i^6_VAayE#>gWH3r~Q-2x=Ch& zBT(|+2s^!bx%hj6?<(W6G(f{?_aL3o(rrFZza8^+iHb;2dtQn zVzAo7!GPmc5>C9bV1?Xwh3y61;dDg73WhPa-gx_3J&N7-$6(QXH{DJLzXiP$iM|(b zLGXUF8@dBNT?a?q!b-8*LcB2`{QvR=E|H%fx#Bxw7=Dn1K=p>uC!9Drk21U=6gjVw zUzCbK%2n4S*SEqS3zVS7TIf(Yid_)ozDyLT#y*F9{+`J2v1rPsNT`T7{Dh@)Mj+h> z3RxAlgs(*2Pm&NQ>q~qT`C0j!VmRr1d69V%Uqh$V^Ksq$aOWIqEd5;}cU=wd3t}^u zOR7A-r0Gv_R{v^Zeq^7hf2CZ$7%g5T0H8tsOhH9jBE30E+nQg{+-4MOC3~P-WP-1qq~}fK;XaS^tRjI`XbV zS}73XQpH393I{+4i4%egTo53TDk!L-;s8eo(e*7_lR?t5uOdLTB+0LNK%>JABY`~J`z2AU}p5x0e~O_ znL{(90BmZ9tHgoO(ESjIos34K0O1E6WatiQX7n)TN0{SB_n~rU#Nn2DZ^N-jZaKEwzH8bcLP&ZvtTrfI(Xg}Hx9+Ji$%SpR@~klk_jUT z#3dGv{KXVyjs=u5J9vX7lq|b@mED_V;VeTqqMYf6gE!bvi$#$kXW6jwA&a3oQeva% zWm#aAg|aM?WkKZxlfOKNX<0Ue2+km*DJf^<2)>ZJ^x%>1f*}0a8x##dzwRC30B?yM zAUXl}GxWoV-`+N-kd?TN3Gf_ZNzb~@nIZPpF8pym2Q?{P5bzIPD1MZJ;O?%+ohcd_g z`x90`E$aDZc|MoVH}pkN8@iEGZGFiGwNS6sbi7PB1FtR~b~CDGsm?po&`nUyx~;2E zJT*IR*}1|Co}LAjI($A?EaLT8-Z6(!HFXZ?mHAR5SJR=EGmLt{laD>G;^KBLkNQH5 z^#7HQa02i5DdtN$_d38A0^r);D}noak$$w^J`lV#|Jc(UARe6~ z^%%*1S2=6@Yobt;gO@l@C_ncI2K*Rt-{9aik;t{5t0F$A{`0*46`nx#6XdV|KE#M3 z-V;qnp5`CzZu>9lpnG6Yeuy6`)#nwFC-e*kh3(}X9rRHQ;8Oo%{sJ$zKgBVgf2@zV zhIoGgx6l~0e_j4TiF2m?qdQ0B3;adI2Gzg7*Z&pcUh#A3ej2p?_JH;2?)I-=L@aQ& mS4XviPhS$ef5g5}{UrYNKSfM%90DKacu^hhQy!J%U;kgDVO^g9 literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_strncmp.o b/libftx/libft/ft_strncmp.o new file mode 100644 index 0000000000000000000000000000000000000000..4bcd22624e199ada86ae38916493e432c3e29fde GIT binary patch literal 2856 zcmbtWU1%It6h1Svce45EPJY^$Hda@$HKk-GyQW~Pt&y@i8Ja!_E1@Xq{>=W=-PyP^ z6Ouwz+(z8yp($D^2&GS2d=L>S)Pe+jXnpjl0blk-Xnc?=2o(eI+?ji~lj(|x2kxBn zedp)ixpU8D-c6l&MHB?!BET_th&T&S>UwBTdFB)-7@5|aKkLnN_w}ZGPj9AMdgELR zl;u7Qxt-difg9i8L%*F`r$Apx-Pc!U)|K!2qG;dKSJG(j>`$y6{_(@qU1fRN3z}I+ z2iE#UNUZ6;r=f+?6Kjn>f##gw<$JIgEgXq99)NOr4P6&fcdrY|GC}{wfFHE3H`WBb znOfg?duwZ}y__2nT+WQYoEv=u2ktaen=7f!H@_DKgnh9gBE|Y28;uPJgED~l3`ntK zy}i8vl8XL8d1^$89qE0c_u1XkLoe+Hh!7ANH9Z7CCbvOZ0m^pm_f&Kkm7k6)`~pV= z2SC*O3UnVIl@?MWrK5sG6_pka;dN>WN&}w}@zT7HF8HXl4W0JUr>KZ{Y1Tsn6#0co zM81f2*T%G;$KAT^+LKAGTDHn|$*feg zN;z9_7JUV-WtWSVnUCj6nR=islr0DB1bDQa1PdxPTvt2XbC=JWa}Jc@zpWi$r~mFC zoP7<1#eQM5uPeHWpXhPq>7df0kC$WpABe|y$l^~J0q`qQ5jcfUK@k3m?VyT&Ssa4q z+I9L)TBWj39Zw`Z+uKad-$bo!CM*NVh=-4YJF7Dh3&G$Y_B)X^^K3vezK{-X~)Pa?l`S22sByi2|84 zNCIs`IevvqR; zRL5L&K+V;vRTFOo=EVCa&`F@y%}R#3%2uHUs#SAL_0^N=1k?Q?Omo9EX-J%rwGQz?>M(*%`4<`aWiYry>?Cr*K5U1xX1l`b#8@0&y`GFP zP5X_8OfbyVQFgd)ae`^SR<7wkMyLD-EMNVX{1nR%g~9$#AGJg5lF!Wtdx6#(WBJch z5D@A&B_72aV rMov1hMUUBgINHL`KPTw=sf6dhf?Rm-XxuDY)O89_XdYcsc>ccue0@#- literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_strnstr.o b/libftx/libft/ft_strnstr.o new file mode 100644 index 0000000000000000000000000000000000000000..b6699555db108ba2e9973cda7c5cb2f56f504c17 GIT binary patch literal 3088 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 literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_substr.o b/libftx/libft/ft_substr.o new file mode 100644 index 0000000000000000000000000000000000000000..da7cab46aebf5ded8ce64f533328c7e0a0cf1915 GIT binary patch literal 3320 zcmbtWU1%It6h1SvGdoF|-Az*aD-!UpB0HO=u~u7aw5(3HjffJd1zGoJk}S^d#+{jv z6w->(w(DZCKKW7ve-J@^Q1L-Q4XxJtAQ40spYot+AxOlRfI>Xy&b`U@cBP1i%$)mu z=kLz_Ih&K|BM+&H0zwox2pdSS0ITN4c$f``A%UJ_cKsK7etE#I&#lyhWxGDMWY5p7 zK>WpS^s+CdSIPOx=L8yaE58x4>*;1AyAQbBfT4rRsgXW_=+ITrjAJr@ zj@y`mA25Fe9{`i>&L%dNUwcWrg$`gdt_<4LA>ba>9y&EDoL?4Cd z=@8wCDyp74%23azA$pXdUdjUI8~9?i48{Ba#~tfLG@^Y)E+`RKTMS2_EiiB0gt2^3 z@q_+?o2yLpPdhcQRIT*y9<&Cmf#jZm8F!x;L^NdG1>=6!3-X>{vkH)^jC-lcYT5Bp zPR*H3<{dxf*K*UjU?z1asCj`mG?*%vDkX2yaov<#%8&aqp#ryx#e#}gny5I%{!+yU zuXNnW`WpqHFqx}?2cDm+`EZr1>r|L~n1zC~S&zpHJ>}QnzkM2P=1Zd-e+-nFgtBu} z)O-cE`bOmGA))Pq2V#j+>Y;8!{T)33is%!8kI|qg%3rZ=QglM_QBr|dqfbt`?sPf1 zdytLUQm4WtPL(PJHz+#5JUK|s?Ax2&JCt-wm0%`0Q3+D{lJ8x|#hdj2SF2cb#;r*z z-nv&f9e;Mp@zA1f3^k-9Ds&(fiWXONv(p^Z4dbY;854TnWxd15=+UEkr*T-1BHLxW z&#Wd|WAl0+TJf(Fk%>BiUN@lLkwgkd6?dKn`#`lgKDjcy6!XI;(cag6LicIyE> zp3$`fdKAqWT{ZUWoySmRbj3KVcH*LnNy_>)BqH#~n#>c{=yThM#;>w$(jY2R3~O-h zbss@XqK)^>$o00=WoHJtbN}K$z;n=r#6|{xW6L8s(ZW;v6+HQnbmBuhC`8PVcy_tD zp_gmHCpq5I!msxyAMzpS~n7_z>nt1`-&9&eIjt_Dz=Q$$zpXKG{XTYKcmdzE5`1>$%RUkGghZD|ZcD$A=J5bKK zZndyc6n`x&Ea>O*sAtQh|G&J2DO%6J$oL>#78J2hAqvl}7?Y-cPirae6LBQN?9F>U zACr>rI{m{z_v0Gj3B|o2KiWq=E!f5bs5U*a?BS#@8D!u4&@OWn@(w4P*NNYU_IC3h z;PYSNd1(IBALRK{A0ZdQh*Micfbv%^4m~>(eUY`vvzr4%)3>f;){q(9QbP&|1oKDOmTFir DeiK$wx zh>xm^x^pAA5`TfX6hyFlkuG)NUcp@p@tow|^maNT;s^Jhd%p9!bLPz4&7D1|Fa`n) zj>4KISb*io+Bw@eW+8!|6Q>uxFU+kz&8;rveht09Keu}Pac(8?ERH_!F5z}0x0-nQ z9=WHvUr)}h%ztBvw@byPul0I;|EDV-SU1}f@72_Ja$A4AoApEi6dlQ)Xtqy{kHwC} z_H94Ydu%&^s)53(Gra(j-Jr&g#$qw7aS>PZer=7rccQ)#S)>#}lfoztSYjM^Re64U zO>1V;A~2D!IDREnunlKARW-eG(RETo!}_2;m_Ar(7>Di*qc)-+0?VKDUE953dU^pe zj#bXgxFxfkF+FoOoj3iA?-^C2Qp=pEc;!lYWH?hQI>qvgY1$EgQR}@Uv4BNQhM=An8 z>l-cjZq{DgI1`GoX8>ZE#c3v0Ts{*EjW3=O@x--zZ!I-L|Wx zNn>gXzq9Fe?sm~JIbqIBTAoodrOY^uI@a=yJj&S;$^XS7CXnB|$T!Mg`YSZU)_;Lquy^Dq8v2G51jW%e60H9l9`(yq literal 0 HcmV?d00001 diff --git a/libftx/libft/ft_toupper.o b/libftx/libft/ft_toupper.o new file mode 100644 index 0000000000000000000000000000000000000000..d1a913452c6e44dc85d25b98d7b9bd17b95ef53d GIT binary patch literal 2200 zcmbtU%}*0i5TCc(MWE0Y@PiMdJs`%IZUHetNU(-fBtZ|DdN3N?mR;J|Zpn7H0Tjg$ zKM)Ui^J3!3_!k(DB*sMU#&FbwcTKoKQfKIUWm(o3<0S9>-u&k4?d8~esz24I}5+x$ZdS9R4VNA?T@U5oeH%nawu}FE7ZbT>i{Gb$=13=yBrz{4hK(n zjJI9v0FV`sI5pk|5a5;Q4{;(&!GahIi+_xH4F zHYEV5v}4*%G?UlNnP^$JO1YvL?dw;2)!x`SXV=*GpdYmX^*k8%lwEXYXLU=>K-@G+ z@ocf6m*Tpm&&Sfb9k(s5tT}V>QO7DdrGfr6$6UYe;U955%8_ci>-KTpdmm7z^|UiH zrKQuBUIx|H=WI|j#X>>HiRH$UZMkL!R7=lm+>|qoBB*B3*443VsaVO@GIv4E=gWmD zZF(BNvzdMF`JAb9LeEYamR8VRnQLBaKCqvZ;-$AH-g~k9qcgj z#ECf)?g@SnDENptaHLpoPBJaghLWs8ZTI@pTzENh{=_40aune89YBM7zJ*^qZ^}M7ilcADTmLsfB+GjM literal 0 HcmV?d00001 diff --git a/libftx/libft/libft.a b/libftx/libft/libft.a new file mode 100644 index 0000000000000000000000000000000000000000..9f91cb258aaeb4a3f4ae97529b91e9716320c1ca GIT binary patch literal 122044 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%0DC4LVvy(WZUit~R? zibA^Y9kj*ee;$*c{yp^k3y7JQH)%}1!L>!NI9}$X`iZ38)c}4#q3`Yxd%)mJcBHrg HTzdYu{mSPO literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_dprintarg.o b/libftx/printf/ft_dprintarg.o new file mode 100644 index 0000000000000000000000000000000000000000..b650ae45977f02491f0d94476531d0591f81e4da GIT binary patch literal 4776 zcmbtXU5p#m6~43M@jC0Qy+0u_nZTGzWqCnJAeFbaQjj)MRe_X;l}Nk&&YgS5 zv*TT%s#lsh_k8!e=Y02f>}QjYetSSsm@EprpY=S6GPV%w)lcy12{sC5+US02oc`w& z`gE5!yR92WH@$IY`9?XuG6WiGg?Oiqnv>k@COVqR^-idTaL0Z3lK(rao_aa93Ljx^Fm#WEiXPIKH8~GXIk6`h#LGNzz z=Joefo;efmSU`B@w?yX4l=-SZ^JOP}HIVtD%zU{&^F?QwVqJ7*ymT2iUE7!LS0dd7 zO82@y-32H8dLZ37neIY=x^vDl#X9FpcYT15t`+Y*D@NC`x3;$2jGZ>BlyrqBJq(87 zyvV`y%J#gS1yHZw)?@T#=L~1fjqW4tH4m%4eRQ53vcc;eHVBtVlh_c^ukvoq6iax}Aq%{dzdQ zN@zgO9e|`BBK7MbhO_48=#XRhmg!rrnx;?9K2G6k64VuHZin@&;rJ?{0W}doQVo&% z)eys3b8~da@vC_YGlID}67SqXbF;j8g_gscx>dKi?h||CKNNwB-9(kdh7i;*mgB30 z2E=ZlgA_}oezC-G*4!K&a{OWkq2|5hO}ue& zNNikFVMIpca1h)=j`BmQEAcAc>cC6w zZJxc&TX4M=8JWy;MHX9{9&!(%z=JY~s(P~ax4eQj= zoMlhj4RgtCwWl9yHJYvF@ww^6a<$xCuqu`5N;y}w+tWNiaa$~gkgQl>2un|smFn4A zvDmb1)~YtkrK(k!;uH_AL29v5`)L+*JeJ8CRw>&wmn_%IW|z!trQEc$wpn8T+bC)J zQ1-coDbIYLDeV#E;NHQ=d8{gZe(0e>i^m>}jhr2LXgI8vLZGnA;Dp#$(V!^G7qMY7 zv>EUy+eVEU2|?brRGmP%EJBvtd%|z7&iOPmAiBn(?UnL7f2gC!p@PVN&Y;6pRipKs^BJ z!SH!?A@aPMcm>8*6E;jnO{{Ctls~Gg^}Je)yrE94!`SMC4U>V#qdxBmkkkUGlj~{$ z)JYpA1CI}@r*#4X4naT;)I;kqwtC2h$-oOxDQYx~NqNOflmIk|-akg~!|O1%df0}^ zz!SX(Fn>yGU@sQRU67sM{{kFhpKtBds`k$Fwr15mXxlJyRHpS|E*{whAMV5HZW-xA z8T&P`F`pj3M}b}0g`e65|MxEV3%lSnc{}MT?t(wL3%&xJ3dO_EB(JIEg%q>zyt+e@7qCK|85!Mt!@m$j|zXk50^0sn(*Pozfbswgr({5ZXnd} z+y%c^;8M>i;Xe|M77F-HQ0g^RvN^M935jmpO1UZlYav@~ zn2T1Ak5Kr~dA}SW)HZWW_w1=f?l)=$(>4j7)n~;_{(oi|3n7l;wm|cA8KB%n3*{>T zm(8G!F#lO1`U!fW$a~fG`tLqENB;9Hc~8+sL;1`#{LZ9(ByawNz;8ox%0DN3Y2FY) z=`QjYsb5<9n`|k*9+YtTd zB~e&8ehL2#m7V5~f6UM(_X*7(O{wfJ@sEH7H34E%^pQmQQ=l>6vJb%7DStwoADM^p v6BNvU37Gom7G3Ml;ql6h=r8%ypGq+QEdYXZN4&p_j?ak>WN1h-p49bU<7ltZ literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_dprintflag.o b/libftx/printf/ft_dprintflag.o new file mode 100644 index 0000000000000000000000000000000000000000..52149fd57f13c1fe28b34dd25fb344646f8b4c70 GIT binary patch literal 3024 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 literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_dprintptr.o b/libftx/printf/ft_dprintptr.o new file mode 100644 index 0000000000000000000000000000000000000000..99eb28d48022897f2d1f677656ab29a5d4e10f24 GIT binary patch literal 2944 zcmbtWTW=dx5T4!jZZ2+|#6gf=1eUm!OV-Y%P-rNrB7<8hC`dsdRNQsEcC4<~mUlOD zK&6&K5ynWgZwQd6#2bho01sRQ65=0JJn@i9LE<62ArUFe?9OS9x9$UCq&+k9oo{B& z8J}~K%lWgK&}nB*}3_JV^2JJ{3)xnTDB{oOeznirgSYeanIq@q>?rO)N#zEJpfwj zWHOlqNSH`U8%xt#>gnW(7L9Ch_tyU%Mz-lM1t_1aqKO+FTR<vqelHQdbXoS8FoGxI?>Is48WdJE<;sQATlvsH8brr$DGA?sGW>{_F4ds(|> zZ_JczKkK)wbt`CRmxGoUcnfpcdd;nQYqsNLom#2lx3gh_3OEfc7`R@o>e}TD=IqN3 zAy5V^1Xj7+vON!K@ZVNT+XT2PQlPx`3MlOff6o5J82$zOqQ1!g72{W8 z{Eyksu%%7zYM~1;H+ohmdv`VFxy$)u}b}ZAk+di19je6b2r-KbS?GNv zOg@t|zeEE{Cmi>O_+6&Ii1NJ<%ySH0Wq{)7_ZBb8G~>UbruuX23-tpV;(iERtY6l` z797&QvGckNq8;bbJ&0ozGSA?LAr<_Z;`N z45BUS3r+nQ6z}lmqIX#q5hwH;I4NwI_lbNtrHMHAdKBM`)2}mdT#6-A>|em2qA{p{ zIX;l$oKXLgQoO)FLM*-}gy06(-y}zpIQIjb8&tnApg#T86YCfC>0Q*$?ln+#@Vg}! gI9~LH)=v_z|08086B2m1z?XW5eTt)hq2u-c1*{)3n*aa+ literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_dprintstrtab.o b/libftx/printf/ft_dprintstrtab.o new file mode 100644 index 0000000000000000000000000000000000000000..9402d5f06bea1e73dce92ff5eba4d30ea17bcc2c GIT binary patch literal 2872 zcmbtV-D@0G6hAYwcXpdJn`Be^VMG@{=!=<2VuaAfHl?g?Ln~5<_Qfu{JG0r*+1X`2 zLRxICq^L{$XcZAe@B<%w5)msEu@n?reDJw{Knf9jh|d<*b7t;MC)dq`cwqLN^EYv5#g?r_0w0WzvPQmi6 z(nhS;N}J`iQyb;gx!W*&`7mN@NEGPW%)p~i25$@?NhD+9O{Lr|ZT#_V zuh&~Et(RASDZccxGO9eDA7fg6WZ!sxR4M2H>M*8h21W|{{C+KeXz=jh!2>78jvfHW zFi<&kVhn)IY;*O;K+7K)92^A54g(Q#dr>7z;G$pRlfeh^xG=k8TmFdw|Sk!yNrsdSDUdn`eEW(u~(oxz&AriCfh}oeOCawlKTv864i()*&Hm^ zA}@@Jb+_s*6_;&4aN1sRYTB4ICMTYZ;^5T9Y4m1{r=Ss5td8$^VG#OZwPw`8^csQL zY`5&dw0-;BM9mJ((6266qZRXbzb}pYlJIiyhcM_4sc;;Sb!@- zy;=3qx9k;g+jz3b3!Ej-wu;0Fobz@i1PA`x>G8ey#BY!FJ%1XMl@VopcQ$tg@8?0p z=^>$8fMfZQH`L=py4pbozz+yzpn|`OqWqm7B1PAVk77oFPcLS=?s98lYC5*#dYVZc zO~K2;2F@~7pHp=_X|i13-%k+Dz+b(7K@GN!vMsFf z?|K`Ejs~e_PX#sj_qYEw#tW(SaO7w3t` z0Aghczry`^XrL|lA8_1~_;lYSexkPcKXU(~gul)G_ayuy?td)d-*NwQ3IBroMXsp^ z={mR^m+O2Q~3 zN#ZBj$%2m8XoKOkL)&=vxy6Yftkz!vgL=49wJe;2OMJ70?mC{$0lQgg_|=x(r=6t% z2}Uv~QJ-tkSo^F z;@~6)h)4HJJxQ`ZQSsjLnJ9FP$6H(rC38<>K*oss2nW9siCoLvQ;7FF|8)*t;t6zq z>TCJ@k0M4C@t$bL@*B_lNdR1n{e`Ca&@cZ@-V8M7(jxMNK8rzNr+L@X&6Enr-1n3G zj!eJKf!S0pnd1Eg{0Nm?jC~?nJKbl1%U*NAJCZ7o**yQ`~R6pX7&>ZZy|MPwJ wrjGJYUp>&QBtr^;g6MCnoTpZ+KJQ;XdWjlJfrl06yeHHvj+t literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_dprintul.o b/libftx/printf/ft_dprintul.o new file mode 100644 index 0000000000000000000000000000000000000000..d964808546845c86313d78cad9941cce9dab8fdd GIT binary patch literal 2536 zcmbVNO>7%g5T5ngPKX=FNf5LRDz2bH0%aXL38b`YQ&pudjS#97E(kg6cc4v~8^k#iG6IsKeMOo!v4*Rjd35`TwiRm~ zV$t5YY{W)JVYL~$L0DdQOt(|+Tb^(C+;X*M%o%gD^I>GHep^Fr!B~WL&}eOWHU>Dx zI#k@YU)kt&Ex%%U*3H?b6;uMx?3>}Bayj(;&|j!ky0&Zk8L29+qjt!@Rl zA+%fIg44qyq9t^FyW?7|GTHuHk<{dyv><7>Zh$r@X*0)0MtAWz-$9H%B04p=R4m=k zTprK2(E-&J{IYNcS54FYDUK7PTfk3KOUCXadgI^@^a(9DGxjp~ZvK33?DJga&rBYJ zW3S=$F+y4Rdw_l zjx$CL>Wcj|%QRh-eQ!S|dougp1tY+A0 zn9ZhV^}+Bg$20vk=CHSFOB9-HF`+imyMQ3k{91(tF3i`7{_FxNN1aGZX( zVYXWMThLKG8%@)wt^n3XqwSepOAWwRVqp5fY$CtejkwoqnSn`g)u?iJ|DQd< zP<8%frx!eAzX-sb&QT@$oghq|C9*Hmf+TYiYr}700uAasi{Ba-HOBzGA-Y$36GZZU zo}o7ufFc&8Et6XI9A>L=@iVC8f^qo(^DC9?4ka{sYSd;MvTGIO8<^IbY zK>gDhC;NX7F>;Y}LNTHbIqnAmm`i@)^zPH*e`5!#PbG;HejSY>tA2ZFV2bZ85lbs|iSvJnc9oL8x6qiD|JRiK^skZ3 s|21Oz%07+BclaI99~>|FsD2{RV-4Ub3PWdy*aHTCXGe+~!7rKrUuAveJOBUy literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_dprintul_base.o b/libftx/printf/ft_dprintul_base.o new file mode 100644 index 0000000000000000000000000000000000000000..ea0d551d52c10e378cb6dce4bc52b32993841a86 GIT binary patch literal 4640 zcmb_fZ){sv6~FJjT*t9f+fB;au2t*7&_E*3X~={&O2{_2HOG$p zC(0%QRa2^YMyTB<;LEqP0$qzdtY4+HtjBu5%72q7vcD!+5zxwdnY zeL&(w&-b3+Ip=rI{qyd9`9bo`S8dA@S}ZXm`kF?Ch)4SUS=F5tF?i0US|6k~Kb&lB z+)K5Z+o{%EH?_IZ711A#!s~YO{sYL?tLUfN8{O_})M+I<@aY&nmwcb?RJ+;f{sT%Y z`F^UMgnkz8TUP3c-$pNe1$Y~&fSBzWrBC&%RM#qI^EHHb>i98wpV)(Jcr^dg0ScoAhY=%ya z3n8a>sDa%6D!L;ox}y$d>(#M;C&%SJ$1xt6pZOSPuEIfB@rqylqS78w9K+O?L&5J* zQ4rfz$Z(LG5sFd$0M3zIv(jkBm&)17a(vCJ)l1b%{KS+y=}u03zNw5SzCQ(R+I?IU z8kziRt%QJbCYP;y?vhAU3iU*>y5iLnUd?-cBIh*{jaqgs+gwjP-K^D{_35d^N~uz+ z7rk;hQ7+{QjrD{gDeU4CpeB&GGxgF7o+wvQRSP~_?pa09eV3O%@Be7oiy0F$`){)WS;APD7 zQDF3t&~6n^MPirir}qWyKf=Seog^GWyRC0u=-JiQgo*Z5-(Kk1zehNP_DtX2R`y${ zVMr{(U|H6`Bm1bKeSybHH0w25kwm$?wlZ;IO7+!FNccM-QK~GJn|V*{S}CkNq~6Hq zy@FdLHoVAmKq_%&EEx_3r(_^7FP*@$JaSz|0%6Nn3PNeQAGMxD9Yr|`BL+K`mQi$E zDFe&brE^sVzAJ5K?V5x6vYNKUn(3L{)xHa4Nc`=AY4{NU8-E=(sJ(^0%lJ*ERC@;4 zdB)WVg1*{oXh|IK>?IDL*QU+!PZtvg&+aq*r|=pZ;8*VmurJ_=?P3sO{$uc$*q3gQ z5j^Vq2Y1}-19)fvzx^?IjOT@Ta8vbo^p!vyx=$2(M1-p|l|aat-w2Ju zF46KZceMX3>&LjIvLyGZ`5gC6{7J?&&j#x$1AmWob$Oz%{qHiKH~iH%53rhn|DE;o z2L2z`X&;j4Iy*`e;%D6Iyf3ruKD%;)#K3ozhb{XbE|Rf_o0F7 zasA7{L!4LV*Ln5(bb#%e{~eD1q=83SpEU4s)@Ka-6Rf8V{Kw2cXW(x#{;Yw&!uXPb z|DN%xf&Z29IJa~X4DQ2O1MjfDXyAHX&KtO%w-v@I{UHB{Jrr`n!p(cR=5i*R%hkL! z;nuuz)@^v}4dE_TS5`cH7qACi;QjA`MrO6ypi4hf$Y)kL&ZjC>3RUt%0Nws>rP}b^ zXTCN!QEz0Io)a$JiJ5FZk1wKS_UnCZ^uHiLu;YtpM~ZT(;xXVAGlg1q#oOy5bx}ei zn-gyR`4wvaFGA;N?=yLT(WU=pAb;_j-Y+kEPp9u0!UoSeGS1QugucTE#XPI&e+N24 zO*u!0Gh|Wy;(sr+M5WKdLyS{yvnDcK=DZi!PdBFT85m5Ae8+fF)(oSeif7=vSN*@_ z`t{^e{j^`r`acDXI4AK8%8N{T&`79N-O_!qSNtpda?m|KC^}BJIT&?+(C@v$mutXa z`rh>8S9!X7o_9I^Cq2aP=<#d#Iy!sK->C1g$c{9BbXMwkz5Z_iGi#!dB5%mshS5;P ztMJ_`e~kCP&O`aBBr`wVbIzFuRW#@E^yD)fuip!bCo%JX0L+{_@|)yDaSot{wv?Iw EzYB|;A^-pY literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_dprintx.o b/libftx/printf/ft_dprintx.o new file mode 100644 index 0000000000000000000000000000000000000000..6c83e2874ec2f72a74d1294aa371ef2bde04f7cf GIT binary patch literal 2528 zcmbVN&2Jl35TEthPKg`WNlbwxE|Q&&`#mwV5J7&OmUcxO7Y}UnpHH zy?p%2?CZw?^aA7GIO|M(su>GJn@T!fbQ8()Ir=$3=ai@vef^i0% zu+_QY_q=duw4vrXL2Yf&w}YDP+ne*29o9nM+%ThI?Na0iQLxag^?P0~ShHQX=JqTn z9M)oYN4W{`I&eDRLF5I!u4i|ug#5R}0G_4VkhELxf;OyZbB8AmeU1%$0Wn%c)F*hO zTzQbYG*xua0M)Cw@^BJ&P1F7pTeiKvZ;4hF3Y%fhsykI!qk^*AS^3K;yb$M#(4c z8QL9VTdGi3{9a<2=4k@g&Tc|D`!P-89?u%RdBhJpyw5w?zzDF zi_9s{y>ErG)RD%|v%SQ<$@=9K{($w>6h30zOyT!fr#=(O{ac9&RpykVnrDOYbeI?G(vkAg3%uI`!+rwwg^I>j}woc=M2E`2BB?SetUI32+j67 z7_Pg~Z<(DAKK|}FOyssKGqCshyFE_;d#&a8X5St=(2s(F5ku2LzS)ntKj@gDNpQoE z+PK93#lAr=b^hd%Cp=`o3c#HDsL}~k2vcW?&X;IIk~vAVgKvc9PMv45yUt0~8KAdC z-&J0uyr1t8qxel+Dy_3Jt%4{^{=(_~h^(5%KllhNt6+xhVg^PoKhcIXNZ8(kZS^kgMfbLgG{Di-Sha#(Xe`kRi zwx1=~4fV~^J=^SmjueHYet|wkA*+AiGAMIG{VU-Tf5Gn{mX&Iq6M6^FRZ81#;$c?& zA2Z_9zeYO#`-th+c4@V>seNL-M2llXU!l0rR`# AB>(^b literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_eprintf.o b/libftx/printf/ft_eprintf.o new file mode 100644 index 0000000000000000000000000000000000000000..d9ee39f7d3664b89bf42f6943c10c8be3cbb5bdc GIT binary patch literal 3376 zcmb_eU1%It6h5=Ff5|4ho21s%ibVWNkj$oO#aJaxDQhwV^`WR>OMQqBLNK7%J{BK*D%yuui-^>>fMPu7&b^!IxC(*?X1?=% z_uO;t+`rw|l2cFmBngB`Fb-Qxr~o4!TmA%dCm@cI)2aH6)X86#uup7gt^DWaW^8D6 zk-_;T2ItN)ICGJ~$~uGQ6$Z6y2vhauEe5p>gjBr=n*=Li2CH!fYyAkP)?=qMEFK%I zm8t(=lT{jASz_!At2B7-B4g)SrNPxJjIB{69N{5MgCm?_aK6kyUyKbMUy2P)pN$PY zbul)STu(J>R4>(Nvg!?IER9t*vc?*XbE;9hMNqG$D6+mb!C-Za!O94O<{*RQMygpG zaNJv|W-^|tCvRR#ULV14xs<#XMo2X(8(;d!X-;3ei3s)N)kgAa>g3lnx5vMddZY)U zeE~TdzjJ4_N9qj%_!Ja-gA@I7bZ_MG$U{3O`}XYskOSc3(qtcif6r|+(2u!;_k$cA zk3=E>p%_q9_(298+Yy{}0G$p2h)5E}blr=Mk7A$hK1q&J=V&+Pne3zLV@P8$%pIrP zk;pi5_!%ERKA4|vsxIbxUk0|(r!ylW9U)hWmGCY5mggN-MezHUXBg{w!(lHl)=QBA zz&Szihh9MlFXD>{L8;>%^vQhD&i5S;A|IjC^&`F{=q9Z{O7HLSk$S-8`0y^2 zce024u{d=MhhREgDcY5R*}PWF4ODg0GD^jPU8Bl~GBUio!WwtII*M$M@(5&YRWF-H z(atKfkSJ!Y#9XPMTM6CN7lzZiov=-4d78Iec^tOg*Ps zT2*(Ls#Y~MZ&&nJJ21JGZKbC6D2?oF(%4YGHWSDD&AWC7jhs7{%FqC8L9DE^$@REIWhKqRcsWVn=J2$}uV6>-1gl zZ4cZLUJe9ve>G2%Tc8@(12xWb9-i@5D#ON0_Kcx^wcKmR=qp z^kL4oyYv9}3GQ;~lxHvJ_i&_PwN?ZDhyOu;jO(KA3C<6C^wXSAdvtMgu-$-dB2O=$ zm$E1RbHe1;y0!nquqoHYl^DLP5uyj7M0u z$(x-XMlo9grC73c<>1rP!Ajix&BuFhcE*0=xJzPW$<<~~%uK8%LHYL6)X;d{8%@1>q3 zZP)hdJGH&7Gf=rRPXH>F-{EX+e>CivwAF9l7ZmjH&%t1TIVsUj?a{}7G^34{m-Mfm z`T)d?I8~lA^z!u4ljRvPYXWE%g0tqzF}?g|>1^rMp2NkOOSsD$towOshdJdz?N)NMo23@gZrV@+t1Rw%b3@3feB^#5;G0rPVYF zrq8m8rEDZYoK%~>6LhMZZWwvJpt`tZEm#Zlr<2sUcxwr@W$Sfl$7^2XgdM91cF>OO z^xOB*W9VkbDE?|p{%vTe70vIB3FPH-#>6?S zaB9#|iwKveYXGv{H%@!?}ghpER<8lzd| z+_Z*>y(m5DJ-U>M;S8iSiF?+-na&MNxH8I^J0r$vHi@3g7!b}m2|A(Rl;@1pUyz*c zGyF;@zxD+D4T8v@8M(A#W6}rA-#cn?atJ&*zU7Q-}5yhc2XAxe|?tvBbV%NI#?&^FLJI!mujt0y3 zH@j<2tA%6U8Hw|~z?FczzSa(%t~(6FL9pkEJ$8KuJ$dP@5xKi{{s=l(f8v?V*E$M z==>#ID*Y@K{EZ(WzQ4*@Rvmwn%10`Qa^Cm!7>q)WO2?QKh4S$h+Qz;AfqZ{e2GIMd z#`*WZj2O8r;8JNv#(k@TDD(NuX}-tBpOC{s_fv`Em|s96%c@^p9X7>~_x&P^-^jaj zJpbNs3VuK9*HIW(zdZ?ZpHTg%7dW2rYl!9Vgb-}W3+4Ma@7qS-apxE1{O~z+KKAq9}vsej{No|c%Kv`ikrZdKmUKiJ?N4E literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_isdigit.o b/libftx/printf/ft_isdigit.o new file mode 100644 index 0000000000000000000000000000000000000000..0b73c21d2f8287b03c6eba8cbc2fc92b2a7cfd8a GIT binary patch literal 2184 zcmbtV&1(};5TBRLrXOjO^h0f}NDdVh>84+TtxzMS)=KeEiJ%~LlWx+*WK;Gdrb1OL z6pMoOCZ0U{CkP%r*nh->H@y`s=uGxavsoh|4!k!rzxjGQJ8$>N!t%9<5Wpm04w@RH z0Q=FVoNb6%NTO%%`tFzAt%L2YgPG*3<7hx>Jo&N*rOyk8l<8}SFXIj`77p)y5`E%K zVn9_AsS_iKKG7coh-e7*$Ff68Vm5v`es*|i;L0$7qC!MMO9KGWQBV?d@pv3F-Nxk~ zsk3ohD)>81ArxVl6hUzyk}J3?k=OO6=4Vr*kjs0P>!k~2-72MPhV7VDD?Kr(jcem$ zQ(nV3@puxoY3(8u-Br_BGfSqc6(D03oy>Z*VmKMYHa5rdhMRG1y{3Eh%)Dnio-;j} zshF1OtQ+NWrflYmZauSMo0eM)WCGNo0RMK7L3$D-@n{7^JtanZIy(2TGp7)vMMMpN ztBKT3WWG0Mp#!QpTu~UsT?p|b(MyaPic18}giqI?uA^=$NuhRjdulRvLme!txGS-e z8u_RSFQQ@=-~W&MHd>U% z4p!m0B0O*fFo#c!k4c@b01@G8L-MziQfB{IsndCgs9#6DMfn1ONMU@&ha36nJP)P5 z7{Yg?ek+7OlX_Zmsu`?1A@Ois(AJE+S6bEcdE2Og<{EVuv_iE~F>qR&*MR*T*9Oft z%DRj*tzs24tLhrs;?3Ncn~}AKM7t1!?d7wLJ4^r5-fW~(9QxfDlRG+?z;rjF+P?mpIkv+wAL_GftP&`q%{u{)?y(7Q- P5`0ez62;LS3D^Gx;BdMD literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_printf.a b/libftx/printf/ft_printf.a new file mode 100644 index 0000000000000000000000000000000000000000..d872ae21a976bd55cfdd6434d1a2da52101cb072 GIT binary patch literal 56952 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∈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 BCA$Cs literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_printf.o b/libftx/printf/ft_printf.o new file mode 100644 index 0000000000000000000000000000000000000000..a23c7e54ebbe6e78838e0d976cb20efc85e34680 GIT binary patch literal 4120 zcmb_eZ)jUp6hANjnl){bwzGEsw4&2QY0`ERw>h_t5tl-zW7@HagOq(;|ta@e=aTg zg4Ic;=BAjMonh+iJX6!>nW`)>RlJUBpj268s(1@kv{Zp5Qqyjxs(z+w9jH#9_nkJd zxGzx5(ELD!RSHZ`G3zX=6quc7)*P!8s4g(8MwPI`Lzo6TJkHcyhADH>7aW@M1qWw* z!GrU@VB~zXT%>x@a)nhd^IpnT)>*kmeGZh1i=;}$C`FcPeN0t%Fg4xHR3*SvM=leKYR5ioY+$2-8Q%rF(g46TNsxUHw#RasGZz2ObzljR@USw*Tv(MI8sx@J^ zM0X5pBHgS|ppwBzUtpRQ3Y?u{7T@2%+&r_YtWcn~Kvs~Ef^>7%=Q!)Lob@4OeGpkc zh^$BEk#QooT%p3zGH<3_UBooea*Y~A!bRJh;u@#8$|;^EdP@iIAhXDD(N9@Qk?Vr& zs~00zIN1w+Tu}LyJIFW24K4_(FP9^ik!qrK=z`XwZS}S}?Oy-go4hSrs|&yuLa^1< z*J1bW@;vT&XhVP7-VFeDC)fnk-v;2=zRGlVU@g}JVE69vcsu|NKAP&-1F=KB)wcH5Z=Ze2pw4sQ%_Y3pu~1I6ZT{FRTu^9K%^c2aFk(;Mmzb$4yc zGiT4qUbMD{9)-B2XR?Wu6%UO-I2F%@$I|0wE^KDa6J5im6}GZQ!N^a9_vf>@d~SPh zcs!9x2*3Ouwib*-^Yq1G46*o-+z2w{*Q==*dLR(k){Ybba69!~2fu&-6bR(Vsnb zD5C3#4d)X{E0L0sSeMO!1jO+i_)i3_Cst9kmkxtA;ny}bHMr>@+l&}pB=r2jKCk}` z+x}*kJ*Hs@^X+C{{%EcEb>^Q#p97BJUDLGN_)?&vG_=9td@f7$hLg#{cvnv^8?*fk z^L-2_QX|QH%!C!%asNa@)m=z6wOc4h<^A zZ2KCAK>|Ikm_H*Lq}Q0l!i#VzY>&_w!i&8r(joK_F^`TO`i|YfgO}tBkwV4UJB@LT zc-iriB9AM=`7y>lts+3;UBYg!!<}MGYGWNvd3Fl>9-*n-mDK?}@(;M2C+ikO+yS8_ z{+6%@75qJ6v&Rd^GJccbi=B#y%YNiOoK*6h7WSJ8zD4ADSHWdJA1Ju&=Q9PD{ajG+ zNnu}6@OOm$gMzn-etuGL`2yTla5-Q4B|r2&kTi>Y60dR?HYoTxfp1mtZw20~;F6bJ z3jT|T?-ZJzk^1MPPr>DW#RX33>f_xIikZWCJc@^hvt|K8Su<&bEOWww&`5fG+{Dvf zMC7cjaPt|7R6Gr#RN68_2c8=2%2~$93lO3+O*djO{4R~s@l{y366o+M}Qc#*w(>c1<{D;McP=ECz z=SjU6opM|scU0X_;Z$Sa=JPYkHiMjhv_2`0<@zN|=iplW`Ni`mc_IGjjFI!@{=bfx z+7m)BFZ%z4j5<+c=^S6HexIl>>rj3A_Nn!sM$A62ltwj)*RmWH^JP7nPa#44j%Lj3C`@k2fNR`m^jIM^X507Z+6~3n!0u+BuT(Yf(h7@ zI0|qxvUkop$1Eh!ayGa2J-6~RkzM_@wzR!Ewe@UiJNMk)`b0rC$?yZ6aw}gGcfLq{ z(usI7BF7U4hvI!we-t33AlM(x4#@FyvGcLv!I|WxK>#@dAqLGP0m8>Yj!(p5F$^`2 zD~t=E(b;A*99nrAlT0t-XBp1(E;4yqz+W(VR>0SptP1#3CRYTUzAI76+1(nw zb&fM!tg{1@l2)+i@@k=AXf03-t)?oL*0w+?HtKZ^9|N;6EyF*F_*PtVH$qh}H$c%F zmZnT!pB*tRwKxw-t=6jN)lvx`^c>tXs+Q(+s#SFkXq9}~Q0tmM368shnJu+|e4$SK zf6yBY;+-EJ^EDfu_Z(oH`sO8i=Y;Wj%dnyb7(jOP9qAuI z#Bs_k)RDX`upJEPFKfN!p{$q%dNd}jf zjxxUuFNkNJpL2SrLH-|^0sU{h#QiwGfl7Y%+WiOu18mn^tm%DY6lat9pCQ3R{Qewz zjEA89RT#*>Gxd-DA>5ziZN!2~O|gRLeqIu7O;iTuUk=Dm|5h=79x?gaP6OF8u3g$- f{yZPmPsC+c0(grDv3I274gE|468X^^6Z8K8vA5Mc literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_putstr_fd.o b/libftx/printf/ft_putstr_fd.o new file mode 100644 index 0000000000000000000000000000000000000000..e740f2c8098d034966284cf63ab63eeee0619b9e GIT binary patch literal 2712 zcmbtW--{bn6h1SPJK1i!Np@Gq=RjO4oqN!A zekCHz!RF|P%^|tw{^rQ6Yz;HF5;Oh3AoJEq1otr(@%^pg;CBC8Ww1RoD?ep!6=r^? zkUxGLkH`C)L$m*V?xpV@aRbMB6qI@8!So{2(%Gfs>3L-Vvr{uj)(o6k&^MN~^qJHX zsfUl9UwrBqK!SnFq4SFXtT5r~4}g|Fn@Xhsk{KWZT*Z;V0WcF*<7jBdA8iCwO`zl{ zFOa8XTKG(;H!e?jM8LT&KAC#M3B7q@LReguNWLa)9V=T7TtCQF9LwF!b#1THXt}wy zbz{|7T{#tmlWVW9qgOBO{HUu}349+7tU9{U|zG zu;JEPV7M*cHlBTcd!^%Bl}lhaPPbXIs#W}~>`u^~hHG=cu9s?_)wCye!#*=G1K%p6 z-fM>1YgH}ZB6!VM;|Kho>QjuD@26O9z%Scv0dO5}So+=&Cf_xpZqNfoywAux+(YzZ z68!)OMx;kPsZ|bVQPcYs9lOl&Z&1_z>)aRWb8b+N$s+QXwXkL0m)v_R=g)EQG!LNjQ;p;2KZzJoM4iwK2!aQ_2nl#tZvg}Gz3!@{r*=FDKGOB-ef7Pn zS5@!TY$kpzZLGwkt=~-VdeMzE{ST^My&K6~-PoR~T0&bO6;ra6(_4 z)(X$&FXSITdu8&uvj7?cl|xr10W$M_CVLdL!a_cu2hfW^gzRIn%AG-#%!JFohhGLi zfLwgywDJ4pM}$-XlcBsqmQs8jTTR_rO{^BGjJnf~t?_kIEN(Koi#q#;0CXkSqX87v zh$-0|EY~70j7oLa@>-=e+Yg+sSDKwOW{jEglTkc4`_>#<^Tt!q3|E4i&T7-OT1FjA zuNj!_ZpRKx+qZ9(Yj$XczO`mW>*l4%529dx&g?jz6SQsDHC?CH4A;$7-|@m`dMZEw zg3yP0+w#Eyw~L`fUf{GmyHSb&hEsbs65+$5 z3eOkD-c>J+>gpac0DeU%1FvGMD9Yc3QBrhE_$g)-__Ptzb=NxO*}1qMpPiYUndx|S zH)`0B-XNY8N)R?0cGGAlMK*MDvszJMnc;7k-ebf162reyY%elRZ|yRD_dbxRyKG9o z&Zd{x)Djz7V(N94(RY~oH7nj=ljvWhSvFW+Z?RD{HKgF=N~8|qUMQ4-@(H3D`0IGk zpmv&weZv}0<311#4N{LrYEXlbl$CUEprRU;R>eNTGU#xYBk?p1H-pn%LwiD5R7`a)3Nbcz!%2}8cxeWEFsfFkuVe6@tR#Q zyl!Y4mtR^g2ccEJnYdYg3k)jM6|2#}hpm;a$-X&U$Fn(Lw^y3J)v?oDtX~6{4XqmL zTOHE>gM5y2r1MTpxxo{2R{&hgl}qm%VIq$OeUW!WT?kyRr6LZb^IPzK;@}Jih)4H{ zPh%|8T+`ZeOf)pY!7k?sC36>WK*ossCI`2LBiAyQ>S9p*$*&*4HSR$1Q(emO8;B7_ z>=V1O=sbD95CGR=eW9to2l;=={b~NR2tT2ha8UHqyx+Nh8l%3;D63cu%+h literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_strlen.o b/libftx/printf/ft_strlen.o new file mode 100644 index 0000000000000000000000000000000000000000..6912c72aba67fffc22e4b23073001d23d88c7489 GIT binary patch literal 2488 zcmbtV&5zqu5FgvIH`#QP{eaR^gmU0hBKGcfkxD@&s4RF(;ec9HkWgeNFNuZYto#wB zm9{J_i?phQXb(sT0fiI)0=G&W5Pt+mr1ZAjR^kw5?Dsa_r}Tgr$^Om!X6DU%lX=dk zn^)gb6$OMSa0#ZCU;&QwsoqG{22?Tfx_$7MeXw(A@9i8yb$gAl~Y?Q0Q$xW(>M)VD_H`-+%uq6E|tq= zfMOMSfYNg*z-PFA0UvavJvf!>^6Nt+R86pCDIbufR2_U5)Vtf66(Q*A-Ck-fkq-=? z-YBX$M=)0`ju1*aq!VFaN8KcdlUmDnf^Kcd!pIv0wY7C~)m*KgPg3XF?RB&^%$K1P zH={W8Szxxn3ObS18}wOZv5?)YyDYZi&>1?($hw?_Q4(#eTYWF^q8{^o%lF()JhHY! zFNizSg}@(R-6V*-Zot|#bVB6aVod~S^_&nq_-|XJV*xyt0VucL2W7OVoI5pF{2H75 z6!P?tP%Gh$%Ho&mPy1$N z{j$8EEP@=fqW*xJaje1EXjzp^}dU1YVH;fy)W_0z!A9`s|FB?~M^@?6F ze$>@p_4$u<6$!<7M>TLaS>hw#pQEP$e@|uwXmDKkgj<8->5_Q71T#bf9A!x^qP?73 zKkY4YVug9s^Hs#C6Q5lHR8W>P0KwO}eLBbIJ`M0>j;D2A;r7!UsbBe1zw`*6_D>?} z4l@&Mj)MP|+vyF=#oy9`CMSOnVWQ*j_ZbO z2xiPiF_^7Ezt8YSaVK6~Fhk}$-1dUbU^=Q`27{QHZ@+iF9>q@U6EJDcn@+op--Pao zMBfV-Cs?o937tNhu7e|QVx`z|5pVVh|G#{NOXTNAtayVD!w-VsDBlzMloKcBQG_?R zBIZ@_i$dW@x$>Ii67vxAI0163i4K{g*ac4Ri$soc?2E|f?}-RMA$kn*JPT_3s5fKcY|6zfvw=@LlBOJs}16dHtWr$cY^5qHk9H#*F&(brt&; r^{*kPU7ZXNcJVnDG5>;~{gcS`zd=s!9mUyvetsbXh4Sc*$o2mP`qlGV literal 0 HcmV?d00001 diff --git a/libftx/printf/ft_vdprintf.o b/libftx/printf/ft_vdprintf.o new file mode 100644 index 0000000000000000000000000000000000000000..041e48cad3e6e318a98d712a4871851cccff3663 GIT binary patch literal 3856 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%0Dvswh{v})?ldSKCUV*= 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 literal 0 HcmV?d00001 diff --git a/minishell.h b/minishell.h index 0b6ee63..b661154 100644 --- a/minishell.h +++ b/minishell.h @@ -6,7 +6,7 @@ /* By: cchauvet 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 KdMDAkitE1w5gWV! literal 0 HcmV?d00001 diff --git a/syntatics.o b/syntatics.o new file mode 100644 index 0000000000000000000000000000000000000000..5193d6095ff1d93885b348b646986d6a27a37c1e GIT binary patch literal 6440 zcmbtYe{5Sv9lz)2vmHCJleoXzt*;}6u_@0@*8*F!HdS%!nsr+{WuyV-`p0wpI>*lZ zp3|hXw9IL>EJCyr6Pttv1@RY~G=VhQ(sdmh%S1uye~2HN0&G&k(3S}Sl~yf$zxVF! z=Sw0D_*U`V_jBK0_r34EyX&d=1A9G+LIf#fCuwj3C1iF*qu^)ZWl!|5I^@A&xQ3GmjWdV)D(p_les;H}NW3KzfO=kxy)Y zI{pr-LF%}5a5r^e)=3@2{TCRVV-grheWa1pS)SBcmQ*eZd7G*>GBm*#pdtHvX8~Lm zA+r>HJ%Q0Q`8pAqXax`=WhvVQ{o2WQKwd{tdFG1%k%~tg8}N(v8=c zB64OEQ>xB4B9@BtvyN2=Ek1)aK8MTPv^H;kys!Z42XJG144Wm>Dj3D$ecHil*)}xO z(n@7p%NEO)kqZ*n_`~Lip$%6pTgw<)zFaJpj~O{FUCL=>q+(>DpBdNETDCkqj9|H< zRg9boBeq#C1<8rtoo;J(xvYWQxVG8S%o6BT%Ey94=}0%{9d|gBh?+k@Pg!m%_wE~}JP0K21 z9P@+(qly|1h0qrvp*B$2A4TR1z_vy(dGA57d9gzRxQ7TPdNIAPLhJ&52s+B6$SIHQ z1tryUe$3$xpfS(+5yl;P3=P(`PNBS`Rp45VTw%nqQD9mHv_WvcGfKfP*Xn4}>S&gG z6tuY9h9MWi;8R*m^Z?}18R8H4tAMne=CJpUAdar_-UbUo$cq4bHxkyz2)tT=_2;m^sh#+L z3LXE?;iu)7@Pnj2!Ys6_4>8HV0<0c%EZ|2`Jrp3VeiZg&SfoEwE!kDr5$V#9HfmHX zC}*u_tG-3w(tS^r4fcFvD{$NN?Zg@{*=gI%T6&hmN_i_*C=VM}%%~XS-5JA<*_HHY zx;hryQ>|E4YunaXeS?v_oic_;?C})%F!RJL*$4@P90lYF+@}q81h!?$v{LC}xnwYn z5hH7+i>YiOT}kDt8DiNLf($VU$P8)Kl4TB+V85aZ%RFwRY?4dcX=0Q{Nw!?F4Zusr z7!0P0rezb`X^b(`PG!qEgVcK|v~8uBw(T_8f{}fkjQ^K;BSc(Bl;ekpGS;rFZ}kVx zLH;+u65t;aZX>cg+l>n;OEfr0!vF`9v;*K5DDm~tmBD{dAAqW_ zMpydsly_G*y6aficZ#Zy(33>a8w{2V`i_H$cN87`2yDh*7;XNY?^>JHyoh0M7$R{ev_Fp8ZMG@H_MIA8y8i zpzrnBFvG9V00>izBM_y*E7UtmJ!DnY+&pMq+>eXQ!BD+LGgCH_Mqj|bINux>3*QQ?D zm8W+mX;+fojUnF;bIQ}m0PW1vRY?l^U@PF;LARSQn)E@`fh&+YNHs3mmna>Csg*9P zD+VCro)#!aEQ#gmJs9$m4;N&K%K&)b-xjXV_6A^2bNmKZV0#Ms|K|8PUVLn?a2d66 zrg6k+RDO;&fxxJZ6Q*fMC9vU_AeFQ&Lcb13r^_$>XNbK4QJmO&&{!i#5A&#>X@?O3k*sucp09a9p03$T_YdJ~#!5TOi`@D#h0;lEAwimaO6} z;w`+7%{tx}^7nH7cHUzC>vuiq-@Obj^n{%Pm)pl%fxpK2ehL3I=hM6uennlEC3)O$ zNGF}9KHqmaKPBP9?{_&a?BC%0k0tqUasFo#F6_L@abZV%w|*W6hZaoM~FMPq6x1O2QUh$ zd?h_>G~H`K*^(bDI?T{cXNYc%53{yX#uo;{J$et%iKDPK?K@o8tAcoY(ehI<%znj|K4D=)Lhi8jS&$cKMdH$aQ3~g?KKQ|rZhw|qohk_L?p0i8oKgAtkd~OnYqCEtIqVJY_Sp@0^myrFl zgN^WONnQFP*S}atoQ`bvPXI4fKN_!J_Ww&DgZabzpwJifa|5uY;veCcksnHd$+Fi$ ze<}aZa{s~)`p1%%{bvAEA6UR^#A*1e(@R`m$fG`z>>tkyDMTi>hF`=^a|LX~8H@rV GuKxh<^YUK+ literal 0 HcmV?d00001 diff --git a/test b/test new file mode 100644 index 0000000..76c9ab7 --- /dev/null +++ b/test @@ -0,0 +1,999 @@ +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Enim sit amet venenatis urna cursus eget nunc. Dignissim diam quis enim lobortis scelerisque fermentum. Nunc faucibus a pellentesque sit amet porttitor eget dolor. Non sodales neque sodales ut. Mi tempus imperdiet nulla malesuada pellentesque elit. Augue neque gravida in fermentum et sollicitudin ac. Semper quis lectus nulla at volutpat diam. Orci phasellus egestas tellus rutrum. Etiam erat velit scelerisque in. Vitae tempus quam pellentesque nec nam aliquam sem et. + +Consectetur adipiscing elit ut aliquam purus sit. Phasellus egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam. Suspendisse ultrices gravida dictum fusce ut. Sed faucibus turpis in eu mi bibendum neque egestas. Blandit libero volutpat sed cras ornare arcu. Donec massa sapien faucibus et molestie ac feugiat sed. Purus sit amet volutpat consequat mauris nunc congue nisi. Quam vulputate dignissim suspendisse in est ante in. Accumsan sit amet nulla facilisi morbi tempus iaculis urna id. Adipiscing elit pellentesque habitant morbi tristique senectus. Amet consectetur adipiscing elit ut aliquam purus sit. Eu lobortis elementum nibh tellus molestie nunc. Volutpat commodo sed egestas egestas fringilla phasellus. Facilisis magna etiam tempor orci eu lobortis elementum nibh. Tristique senectus et netus et malesuada fames. Cras semper auctor neque vitae tempus quam pellentesque nec. Ut eu sem integer vitae justo eget magna. Congue mauris rhoncus aenean vel elit scelerisque. Tellus mauris a diam maecenas sed enim ut sem viverra. Quam pellentesque nec nam aliquam sem et tortor consequat. + +Sollicitudin nibh sit amet commodo nulla facilisi nullam. Eget mauris pharetra et ultrices neque. Felis donec et odio pellentesque diam volutpat commodo sed. Amet nisl purus in mollis. Varius vel pharetra vel turpis nunc. Consectetur purus ut faucibus pulvinar elementum integer enim neque volutpat. Sed vulputate mi sit amet mauris commodo quis imperdiet. In est ante in nibh mauris cursus mattis molestie a. Vel quam elementum pulvinar etiam non quam. Mi ipsum faucibus vitae aliquet nec ullamcorper sit. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Arcu vitae elementum curabitur vitae nunc sed. Viverra tellus in hac habitasse platea dictumst. Nec dui nunc mattis enim ut tellus elementum. Scelerisque varius morbi enim nunc faucibus. Cursus eget nunc scelerisque viverra mauris in aliquam sem. Tristique risus nec feugiat in fermentum. Cras sed felis eget velit aliquet sagittis id consectetur. + +Sit amet volutpat consequat mauris nunc congue nisi. Magna eget est lorem ipsum dolor sit amet consectetur adipiscing. Aliquet enim tortor at auctor urna nunc id cursus. Ullamcorper sit amet risus nullam eget felis. Vel pharetra vel turpis nunc eget lorem dolor. Integer eget aliquet nibh praesent tristique. Pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Orci dapibus ultrices in iaculis nunc sed augue lacus. Neque viverra justo nec ultrices dui sapien eget mi proin. Habitant morbi tristique senectus et netus et. Aenean et tortor at risus viverra adipiscing at in tellus. + +Rhoncus dolor purus non enim praesent elementum facilisis. Eleifend mi in nulla posuere. Adipiscing elit pellentesque habitant morbi. Libero nunc consequat interdum varius sit amet mattis vulputate. In hac habitasse platea dictumst vestibulum rhoncus est. Gravida rutrum quisque non tellus orci ac auctor. Commodo ullamcorper a lacus vestibulum sed. Phasellus egestas tellus rutrum tellus pellentesque eu tincidunt tortor. Blandit libero volutpat sed cras ornare arcu. Mattis enim ut tellus elementum. Congue eu consequat ac felis donec et odio. Ultricies integer quis auctor elit sed vulputate. Fringilla ut morbi tincidunt augue interdum velit. Sagittis purus sit amet volutpat consequat mauris nunc. Tellus rutrum tellus pellentesque eu tincidunt tortor aliquam. Posuere sollicitudin aliquam ultrices sagittis orci a. Sed blandit libero volutpat sed cras ornare arcu. Dignissim enim sit amet venenatis urna. Accumsan tortor posuere ac ut consequat semper viverra nam. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. + +Lacus sed turpis tincidunt id aliquet risus feugiat in ante. Arcu dictum varius duis at consectetur lorem donec massa sapien. Enim diam vulputate ut pharetra sit amet aliquam. Non pulvinar neque laoreet suspendisse interdum. A iaculis at erat pellentesque adipiscing. Id neque aliquam vestibulum morbi blandit. Id eu nisl nunc mi ipsum. Eget felis eget nunc lobortis mattis aliquam faucibus. Vulputate sapien nec sagittis aliquam. Cursus eget nunc scelerisque viverra mauris in aliquam. Faucibus ornare suspendisse sed nisi. Convallis a cras semper auctor neque vitae tempus quam. Justo nec ultrices dui sapien eget mi proin. Odio ut sem nulla pharetra diam. Nibh mauris cursus mattis molestie a iaculis at. Ultricies lacus sed turpis tincidunt id aliquet. + +Sit amet consectetur adipiscing elit. Id aliquet lectus proin nibh nisl. Massa sed elementum tempus egestas sed sed. In arcu cursus euismod quis viverra nibh. Sit amet massa vitae tortor. Aliquet sagittis id consectetur purus. Urna cursus eget nunc scelerisque viverra mauris in aliquam sem. Volutpat sed cras ornare arcu dui vivamus. Risus sed vulputate odio ut enim blandit volutpat maecenas. Dictum varius duis at consectetur lorem donec massa sapien faucibus. Fames ac turpis egestas sed. Elit duis tristique sollicitudin nibh sit amet. + +Morbi enim nunc faucibus a. Id diam maecenas ultricies mi eget mauris pharetra et. Praesent semper feugiat nibh sed. Volutpat blandit aliquam etiam erat velit scelerisque. Aliquet porttitor lacus luctus accumsan tortor posuere ac. Eu scelerisque felis imperdiet proin. At augue eget arcu dictum varius duis at consectetur. Tristique magna sit amet purus gravida quis blandit turpis cursus. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper. Amet dictum sit amet justo donec enim. Rhoncus urna neque viverra justo nec ultrices. Nec feugiat in fermentum posuere urna nec tincidunt. Ultrices neque ornare aenean euismod elementum nisi quis eleifend quam. Lorem ipsum dolor sit amet consectetur adipiscing elit duis tristique. + +Aenean euismod elementum nisi quis eleifend quam adipiscing. Non blandit massa enim nec. Ultrices sagittis orci a scelerisque purus semper eget duis. Rhoncus urna neque viverra justo nec ultrices dui sapien. In est ante in nibh mauris. Faucibus ornare suspendisse sed nisi lacus. Purus in massa tempor nec feugiat nisl. Et tortor consequat id porta nibh. Nibh cras pulvinar mattis nunc sed blandit libero. Cursus risus at ultrices mi tempus imperdiet nulla. Senectus et netus et malesuada fames ac turpis egestas. Massa tincidunt nunc pulvinar sapien. Nunc id cursus metus aliquam eleifend mi in nulla. Porttitor massa id neque aliquam vestibulum morbi. Adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus. Blandit massa enim nec dui nunc. Nullam vehicula ipsum a arcu cursus vitae congue mauris rhoncus. Aenean sed adipiscing diam donec adipiscing tristique risus nec. Etiam erat velit scelerisque in dictum. Turpis cursus in hac habitasse platea dictumst quisque. + +Euismod nisi porta lorem mollis aliquam. Ut sem nulla pharetra diam sit amet nisl suscipit adipiscing. Turpis nunc eget lorem dolor. Dignissim diam quis enim lobortis scelerisque fermentum dui. Lorem ipsum dolor sit amet consectetur. Sem viverra aliquet eget sit amet tellus. Massa enim nec dui nunc mattis enim ut tellus elementum. Ante in nibh mauris cursus mattis. Sed cras ornare arcu dui vivamus arcu felis bibendum ut. Tristique senectus et netus et malesuada. Libero justo laoreet sit amet cursus sit amet. Dictum fusce ut placerat orci nulla pellentesque dignissim. Libero nunc consequat interdum varius sit amet mattis. Senectus et netus et malesuada fames. In metus vulputate eu scelerisque felis. Risus pretium quam vulputate dignissim suspendisse in est ante in. Varius duis at consectetur lorem donec massa sapien faucibus et. + +Facilisis leo vel fringilla est ullamcorper eget nulla facilisi. Risus sed vulputate odio ut enim blandit volutpat. Convallis aenean et tortor at risus. Eget aliquet nibh praesent tristique magna sit. Nunc sed augue lacus viverra vitae congue eu consequat. In ornare quam viverra orci sagittis eu volutpat odio. Ullamcorper a lacus vestibulum sed arcu non odio euismod. Non odio euismod lacinia at quis risus sed. Sit amet purus gravida quis. Aliquet risus feugiat in ante metus dictum. Ac felis donec et odio pellentesque. Aliquet eget sit amet tellus cras. Blandit aliquam etiam erat velit scelerisque in dictum non consectetur. Faucibus turpis in eu mi bibendum neque. Nisl tincidunt eget nullam non nisi est sit amet. Eu mi bibendum neque egestas congue quisque egestas. Id semper risus in hendrerit gravida rutrum quisque non tellus. Lacus vel facilisis volutpat est. + +Egestas sed tempus urna et. Turpis in eu mi bibendum. Viverra nam libero justo laoreet. Enim blandit volutpat maecenas volutpat blandit. Mauris commodo quis imperdiet massa. Sapien pellentesque habitant morbi tristique senectus et netus. Sed blandit libero volutpat sed cras ornare. Volutpat maecenas volutpat blandit aliquam etiam. Elementum sagittis vitae et leo duis ut. Molestie at elementum eu facilisis. Adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus. Nunc sed augue lacus viverra vitae congue eu consequat. + +Eget velit aliquet sagittis id. Nullam eget felis eget nunc lobortis mattis aliquam faucibus purus. Faucibus vitae aliquet nec ullamcorper sit amet risus nullam eget. Vitae tortor condimentum lacinia quis. Nibh tortor id aliquet lectus proin nibh nisl. Phasellus faucibus scelerisque eleifend donec pretium vulputate sapien nec sagittis. Natoque penatibus et magnis dis parturient montes. Quis imperdiet massa tincidunt nunc pulvinar sapien et ligula ullamcorper. Auctor eu augue ut lectus. Id diam maecenas ultricies mi. Nam aliquam sem et tortor. + +Massa enim nec dui nunc mattis. Accumsan in nisl nisi scelerisque eu ultrices vitae. Mattis molestie a iaculis at erat pellentesque adipiscing commodo elit. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Tortor vitae purus faucibus ornare suspendisse sed nisi lacus sed. Congue quisque egestas diam in. Tellus in hac habitasse platea dictumst vestibulum rhoncus. Imperdiet sed euismod nisi porta lorem mollis aliquam. Tincidunt arcu non sodales neque. In aliquam sem fringilla ut. Aliquet bibendum enim facilisis gravida neque convallis a cras. Tincidunt vitae semper quis lectus nulla. + +Id interdum velit laoreet id donec ultrices tincidunt arcu. Amet consectetur adipiscing elit ut aliquam purus sit amet luctus. Nec ullamcorper sit amet risus. Eu scelerisque felis imperdiet proin fermentum leo vel. Massa tincidunt nunc pulvinar sapien. Pulvinar sapien et ligula ullamcorper malesuada proin. Volutpat commodo sed egestas egestas fringilla phasellus. Volutpat odio facilisis mauris sit amet massa vitae tortor. Ultrices dui sapien eget mi proin sed. Lorem mollis aliquam ut porttitor. Velit dignissim sodales ut eu sem integer vitae. Vitae turpis massa sed elementum tempus egestas sed sed. Ut tristique et egestas quis ipsum suspendisse. Viverra justo nec ultrices dui. Lectus quam id leo in vitae turpis massa sed. + +Amet venenatis urna cursus eget nunc scelerisque. Tempor commodo ullamcorper a lacus vestibulum sed arcu. Pharetra magna ac placerat vestibulum lectus. Nunc mi ipsum faucibus vitae aliquet nec. Placerat vestibulum lectus mauris ultrices. Ultrices mi tempus imperdiet nulla malesuada pellentesque elit eget gravida. Gravida cum sociis natoque penatibus et magnis dis parturient. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu feugiat. Porttitor rhoncus dolor purus non enim praesent elementum facilisis leo. Egestas dui id ornare arcu odio ut. Scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Vivamus at augue eget arcu. Mi in nulla posuere sollicitudin aliquam ultrices sagittis orci a. Semper feugiat nibh sed pulvinar proin gravida hendrerit lectus a. Nunc sed blandit libero volutpat sed cras ornare arcu dui. + +Sit amet venenatis urna cursus eget nunc scelerisque. Eu mi bibendum neque egestas congue quisque egestas. Ultricies integer quis auctor elit sed. Augue eget arcu dictum varius duis at consectetur. Congue quisque egestas diam in arcu cursus euismod quis. At erat pellentesque adipiscing commodo elit. Eleifend donec pretium vulputate sapien nec sagittis aliquam. Ultrices neque ornare aenean euismod elementum nisi. Vitae tortor condimentum lacinia quis vel eros. Nibh sed pulvinar proin gravida. Scelerisque varius morbi enim nunc. Massa tempor nec feugiat nisl pretium fusce. Laoreet sit amet cursus sit amet dictum sit. Augue mauris augue neque gravida in fermentum. Feugiat sed lectus vestibulum mattis ullamcorper velit sed. Adipiscing bibendum est ultricies integer quis auctor elit sed. Nunc id cursus metus aliquam eleifend. Tristique senectus et netus et malesuada fames ac turpis. Dui faucibus in ornare quam viverra orci. + +Id venenatis a condimentum vitae sapien pellentesque habitant morbi tristique. Senectus et netus et malesuada fames ac turpis. Vitae tempus quam pellentesque nec nam. Euismod nisi porta lorem mollis aliquam. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Magna fringilla urna porttitor rhoncus dolor. Accumsan sit amet nulla facilisi morbi tempus iaculis urna id. Massa ultricies mi quis hendrerit dolor magna eget est. Id consectetur purus ut faucibus pulvinar elementum integer enim neque. Facilisi etiam dignissim diam quis enim. Nibh mauris cursus mattis molestie a. Malesuada pellentesque elit eget gravida cum sociis natoque penatibus et. Vel risus commodo viverra maecenas accumsan lacus vel facilisis volutpat. At consectetur lorem donec massa. Ipsum dolor sit amet consectetur adipiscing. Urna et pharetra pharetra massa massa ultricies mi. Orci nulla pellentesque dignissim enim sit amet venenatis. Massa enim nec dui nunc. Tincidunt praesent semper feugiat nibh sed. Sagittis id consectetur purus ut faucibus pulvinar elementum integer. + +Ipsum consequat nisl vel pretium lectus quam id leo. Pellentesque habitant morbi tristique senectus et netus et malesuada. Lacus vel facilisis volutpat est velit egestas. Tristique senectus et netus et malesuada. Mi bibendum neque egestas congue quisque egestas diam. Nec ullamcorper sit amet risus nullam eget felis. Interdum velit euismod in pellentesque massa placerat duis. Neque egestas congue quisque egestas diam in. Senectus et netus et malesuada fames ac turpis. Enim ut tellus elementum sagittis vitae et leo. Venenatis cras sed felis eget velit aliquet sagittis id consectetur. Nam at lectus urna duis convallis convallis tellus. Accumsan lacus vel facilisis volutpat est velit egestas dui. Ac feugiat sed lectus vestibulum mattis ullamcorper velit. Et pharetra pharetra massa massa. Sodales ut etiam sit amet nisl. + +Id eu nisl nunc mi ipsum faucibus vitae. Facilisi cras fermentum odio eu feugiat pretium nibh ipsum consequat. Ullamcorper a lacus vestibulum sed arcu non odio euismod. Ligula ullamcorper malesuada proin libero. Quis eleifend quam adipiscing vitae proin sagittis nisl rhoncus mattis. Enim diam vulputate ut pharetra sit amet aliquam. Facilisis sed odio morbi quis commodo odio. Volutpat sed cras ornare arcu. Suspendisse ultrices gravida dictum fusce ut placerat orci. Pretium nibh ipsum consequat nisl vel pretium lectus. Aliquam vestibulum morbi blandit cursus risus at. Id diam vel quam elementum pulvinar etiam non quam. Vitae purus faucibus ornare suspendisse sed nisi lacus. Feugiat sed lectus vestibulum mattis ullamcorper velit. Euismod in pellentesque massa placerat. Nibh sit amet commodo nulla facilisi. Vitae congue mauris rhoncus aenean vel elit scelerisque mauris pellentesque. + +Dictum at tempor commodo ullamcorper. Lorem mollis aliquam ut porttitor leo. Netus et malesuada fames ac turpis egestas. Consectetur adipiscing elit ut aliquam purus sit amet luctus venenatis. Magna sit amet purus gravida quis blandit turpis cursus. Urna porttitor rhoncus dolor purus non enim praesent. Massa tincidunt nunc pulvinar sapien et. Morbi leo urna molestie at. Pulvinar proin gravida hendrerit lectus a. Adipiscing bibendum est ultricies integer quis. Nunc mi ipsum faucibus vitae. Dui ut ornare lectus sit amet est. Eros donec ac odio tempor orci dapibus ultrices in. Risus in hendrerit gravida rutrum quisque. Viverra adipiscing at in tellus integer. Elit ut aliquam purus sit amet luctus venenatis. + +Ullamcorper velit sed ullamcorper morbi tincidunt ornare massa. Sed faucibus turpis in eu mi bibendum neque egestas congue. Vitae auctor eu augue ut lectus arcu bibendum. Sagittis id consectetur purus ut. Quam lacus suspendisse faucibus interdum posuere lorem ipsum. Ut etiam sit amet nisl purus in mollis nunc sed. Tincidunt nunc pulvinar sapien et ligula ullamcorper. Lacus luctus accumsan tortor posuere. Egestas maecenas pharetra convallis posuere. Cum sociis natoque penatibus et magnis dis parturient. Pretium lectus quam id leo in vitae turpis massa sed. Leo duis ut diam quam nulla. + +Venenatis lectus magna fringilla urna porttitor rhoncus dolor purus. Diam donec adipiscing tristique risus nec feugiat in. Egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam nulla. Aliquet lectus proin nibh nisl condimentum id venenatis. Sed elementum tempus egestas sed sed risus pretium quam vulputate. Cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Diam quis enim lobortis scelerisque fermentum dui faucibus. Placerat duis ultricies lacus sed turpis tincidunt. Rhoncus urna neque viverra justo nec ultrices dui sapien. Elementum sagittis vitae et leo duis ut diam quam. + +Odio morbi quis commodo odio aenean sed adipiscing. Convallis aenean et tortor at risus viverra adipiscing at. Mauris in aliquam sem fringilla ut morbi tincidunt. Lacinia at quis risus sed vulputate odio ut enim blandit. Mus mauris vitae ultricies leo integer malesuada nunc. Adipiscing at in tellus integer feugiat. Aliquam etiam erat velit scelerisque in dictum. Donec pretium vulputate sapien nec. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Fames ac turpis egestas sed tempus. + +Ultrices vitae auctor eu augue ut lectus arcu. Porta nibh venenatis cras sed felis. Ultricies tristique nulla aliquet enim. Nulla facilisi nullam vehicula ipsum. Vulputate mi sit amet mauris. Eu volutpat odio facilisis mauris sit amet massa vitae. Ultricies mi quis hendrerit dolor magna eget. Vel elit scelerisque mauris pellentesque. Eget dolor morbi non arcu risus quis varius quam quisque. Pulvinar neque laoreet suspendisse interdum. Dapibus ultrices in iaculis nunc sed augue lacus viverra. Eget duis at tellus at urna condimentum. Maecenas ultricies mi eget mauris. Quis lectus nulla at volutpat diam ut venenatis. In mollis nunc sed id semper risus in hendrerit. + +Eget velit aliquet sagittis id consectetur. Amet luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Neque ornare aenean euismod elementum nisi quis eleifend quam adipiscing. Consectetur a erat nam at lectus urna duis convallis convallis. Cursus eget nunc scelerisque viverra mauris in aliquam. Lacinia at quis risus sed vulputate odio. Morbi blandit cursus risus at ultrices. Potenti nullam ac tortor vitae purus faucibus ornare suspendisse sed. Sed enim ut sem viverra aliquet eget. Diam vel quam elementum pulvinar etiam. Ut ornare lectus sit amet. Penatibus et magnis dis parturient montes nascetur. Fermentum dui faucibus in ornare. Quam viverra orci sagittis eu volutpat. + +Ipsum dolor sit amet consectetur adipiscing. Vitae ultricies leo integer malesuada nunc vel. Lacus vel facilisis volutpat est velit egestas dui. Diam in arcu cursus euismod. Id aliquet risus feugiat in ante. Enim blandit volutpat maecenas volutpat blandit. Proin sed libero enim sed faucibus turpis in eu. Quisque non tellus orci ac auctor augue. Convallis posuere morbi leo urna. Facilisi nullam vehicula ipsum a arcu. In eu mi bibendum neque egestas. Est sit amet facilisis magna etiam tempor orci eu lobortis. Porttitor rhoncus dolor purus non enim praesent. Ultrices in iaculis nunc sed augue lacus viverra vitae congue. + +Sed vulputate mi sit amet mauris commodo quis imperdiet massa. Duis ultricies lacus sed turpis tincidunt id aliquet risus. Amet cursus sit amet dictum sit. Lorem ipsum dolor sit amet consectetur adipiscing elit pellentesque. Orci porta non pulvinar neque laoreet suspendisse. Odio morbi quis commodo odio aenean sed. Phasellus egestas tellus rutrum tellus. Morbi enim nunc faucibus a pellentesque sit amet porttitor. Sed elementum tempus egestas sed sed risus pretium quam vulputate. Sed viverra ipsum nunc aliquet bibendum enim facilisis. In pellentesque massa placerat duis. Volutpat maecenas volutpat blandit aliquam etiam erat velit. Tincidunt id aliquet risus feugiat in ante metus dictum at. Commodo sed egestas egestas fringilla phasellus faucibus. Quisque sagittis purus sit amet volutpat consequat mauris. Sed augue lacus viverra vitae congue eu consequat ac felis. + +Consectetur adipiscing elit pellentesque habitant morbi tristique senectus et netus. Elit ullamcorper dignissim cras tincidunt lobortis feugiat. Libero nunc consequat interdum varius. Nisi lacus sed viverra tellus in. Molestie a iaculis at erat pellentesque. Consequat nisl vel pretium lectus quam id. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae. Pulvinar sapien et ligula ullamcorper malesuada. Sed vulputate odio ut enim blandit volutpat maecenas volutpat blandit. Elit sed vulputate mi sit amet. + +Nisi est sit amet facilisis magna etiam tempor orci eu. Malesuada bibendum arcu vitae elementum curabitur vitae. Pellentesque elit ullamcorper dignissim cras tincidunt. Nibh ipsum consequat nisl vel pretium lectus quam id leo. Nunc faucibus a pellentesque sit amet porttitor eget dolor morbi. Nibh tellus molestie nunc non. Duis convallis convallis tellus id interdum. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Odio eu feugiat pretium nibh ipsum consequat nisl vel. Molestie ac feugiat sed lectus vestibulum mattis ullamcorper velit. Mus mauris vitae ultricies leo integer malesuada. Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Nec ultrices dui sapien eget. Montes nascetur ridiculus mus mauris vitae ultricies. + +Laoreet sit amet cursus sit amet dictum sit. Hac habitasse platea dictumst vestibulum rhoncus. Sit amet facilisis magna etiam tempor orci. Diam quis enim lobortis scelerisque fermentum. Viverra adipiscing at in tellus integer feugiat scelerisque varius morbi. Netus et malesuada fames ac turpis egestas sed tempus. Facilisis sed odio morbi quis commodo. Justo donec enim diam vulputate ut pharetra sit. Convallis a cras semper auctor neque vitae tempus quam. Felis donec et odio pellentesque diam volutpat commodo sed egestas. Proin sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Tellus elementum sagittis vitae et leo. Proin sagittis nisl rhoncus mattis. Habitant morbi tristique senectus et netus et. + +Duis at tellus at urna condimentum mattis. Integer feugiat scelerisque varius morbi enim nunc faucibus a. Imperdiet sed euismod nisi porta lorem mollis aliquam ut. Ipsum suspendisse ultrices gravida dictum. Cursus euismod quis viverra nibh cras. Velit scelerisque in dictum non consectetur a. Semper feugiat nibh sed pulvinar proin gravida hendrerit lectus. Netus et malesuada fames ac. Egestas diam in arcu cursus euismod. In ante metus dictum at tempor commodo ullamcorper a lacus. Amet venenatis urna cursus eget nunc scelerisque viverra mauris in. Libero nunc consequat interdum varius sit amet mattis vulputate enim. Turpis massa tincidunt dui ut ornare lectus sit. Laoreet id donec ultrices tincidunt arcu non sodales neque sodales. Pellentesque elit ullamcorper dignissim cras tincidunt. Vel fringilla est ullamcorper eget nulla facilisi etiam dignissim diam. Massa sapien faucibus et molestie ac feugiat sed. Commodo viverra maecenas accumsan lacus vel facilisis volutpat. + +Aliquet risus feugiat in ante. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Elit scelerisque mauris pellentesque pulvinar pellentesque. Rhoncus mattis rhoncus urna neque viverra. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant. Donec et odio pellentesque diam volutpat commodo. Ultrices gravida dictum fusce ut. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Consectetur libero id faucibus nisl tincidunt eget nullam non nisi. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci. + +Suscipit tellus mauris a diam maecenas. Lobortis feugiat vivamus at augue eget arcu. Quis eleifend quam adipiscing vitae proin. Aliquet bibendum enim facilisis gravida. Eu volutpat odio facilisis mauris. Penatibus et magnis dis parturient montes nascetur. Mi quis hendrerit dolor magna eget est lorem ipsum dolor. Nec feugiat nisl pretium fusce id velit ut tortor pretium. Massa id neque aliquam vestibulum. Fringilla ut morbi tincidunt augue interdum velit euismod. Tellus molestie nunc non blandit massa enim nec. Neque gravida in fermentum et sollicitudin. Risus nec feugiat in fermentum posuere urna nec. Fringilla est ullamcorper eget nulla. Blandit cursus risus at ultrices mi. Odio pellentesque diam volutpat commodo sed egestas egestas. Nunc sed augue lacus viverra vitae congue eu consequat. Nisi scelerisque eu ultrices vitae auctor eu augue ut lectus. Lacus vestibulum sed arcu non odio euismod lacinia at. + +Quis eleifend quam adipiscing vitae proin sagittis nisl rhoncus mattis. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper. Pellentesque habitant morbi tristique senectus et netus. Neque laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt. Et tortor consequat id porta nibh venenatis. Pharetra sit amet aliquam id. Vel turpis nunc eget lorem. Eget magna fermentum iaculis eu non diam phasellus. Nulla facilisi nullam vehicula ipsum a arcu cursus. Et magnis dis parturient montes. Lacus laoreet non curabitur gravida arcu ac tortor. Morbi leo urna molestie at elementum eu. Ultrices dui sapien eget mi proin sed libero. Aliquet nibh praesent tristique magna sit amet purus. Nibh cras pulvinar mattis nunc sed. Tempor commodo ullamcorper a lacus vestibulum sed. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper. + +In nisl nisi scelerisque eu ultrices vitae auctor eu. Iaculis at erat pellentesque adipiscing commodo elit. Ante in nibh mauris cursus mattis molestie a iaculis. Aliquet enim tortor at auctor urna. Ultrices in iaculis nunc sed. Congue eu consequat ac felis donec et. Nisl pretium fusce id velit ut tortor. Aliquet eget sit amet tellus cras adipiscing enim. Nulla malesuada pellentesque elit eget gravida cum sociis natoque. Sagittis purus sit amet volutpat consequat. Semper feugiat nibh sed pulvinar proin gravida hendrerit lectus. Velit ut tortor pretium viverra suspendisse potenti nullam ac tortor. Viverra mauris in aliquam sem fringilla ut morbi tincidunt augue. Donec pretium vulputate sapien nec. Neque ornare aenean euismod elementum nisi quis eleifend quam adipiscing. Egestas sed sed risus pretium. + +Pellentesque pulvinar pellentesque habitant morbi tristique. Hendrerit dolor magna eget est lorem ipsum dolor sit. Vitae congue eu consequat ac felis donec et. Eu turpis egestas pretium aenean pharetra magna. Venenatis lectus magna fringilla urna porttitor rhoncus dolor purus non. Arcu vitae elementum curabitur vitae nunc sed velit. Sed felis eget velit aliquet sagittis. Amet nisl purus in mollis nunc sed id semper. Accumsan lacus vel facilisis volutpat est velit egestas dui id. Quis auctor elit sed vulputate. + +Convallis tellus id interdum velit laoreet id donec ultrices tincidunt. Interdum consectetur libero id faucibus nisl tincidunt eget. Eget arcu dictum varius duis at consectetur. Justo donec enim diam vulputate ut. Nisl suscipit adipiscing bibendum est ultricies integer quis. Sit amet luctus venenatis lectus magna fringilla urna porttitor. Id neque aliquam vestibulum morbi blandit cursus risus. Pellentesque dignissim enim sit amet venenatis urna cursus eget. Enim sed faucibus turpis in eu mi. Massa eget egestas purus viverra. Pellentesque habitant morbi tristique senectus et netus. Ipsum dolor sit amet consectetur adipiscing. Consequat interdum varius sit amet. Viverra nam libero justo laoreet. Lobortis elementum nibh tellus molestie. Tortor aliquam nulla facilisi cras fermentum odio. + +Sit amet luctus venenatis lectus magna fringilla urna porttitor. Non diam phasellus vestibulum lorem sed risus ultricies tristique. Nec ullamcorper sit amet risus. Eget sit amet tellus cras adipiscing enim. Vitae tempus quam pellentesque nec nam aliquam. Et pharetra pharetra massa massa ultricies mi quis hendrerit. Tellus orci ac auctor augue. Neque egestas congue quisque egestas diam in arcu cursus euismod. Fusce ut placerat orci nulla. Massa eget egestas purus viverra accumsan in nisl nisi. Dignissim convallis aenean et tortor at. Arcu non odio euismod lacinia. Proin sagittis nisl rhoncus mattis rhoncus urna. Cras tincidunt lobortis feugiat vivamus at augue eget. Id venenatis a condimentum vitae sapien pellentesque habitant morbi tristique. Nisi porta lorem mollis aliquam ut porttitor. Sollicitudin ac orci phasellus egestas tellus rutrum tellus. Justo laoreet sit amet cursus sit amet dictum. Mollis nunc sed id semper risus in hendrerit gravida rutrum. + +Mauris nunc congue nisi vitae. At lectus urna duis convallis convallis tellus. Mattis rhoncus urna neque viverra justo nec ultrices dui sapien. Lobortis scelerisque fermentum dui faucibus. Ullamcorper malesuada proin libero nunc consequat interdum varius sit amet. Ut etiam sit amet nisl purus in mollis nunc sed. Accumsan tortor posuere ac ut. Convallis convallis tellus id interdum velit laoreet id donec ultrices. Id diam vel quam elementum pulvinar etiam. Vestibulum lorem sed risus ultricies. Vitae suscipit tellus mauris a diam. Mi ipsum faucibus vitae aliquet. Egestas tellus rutrum tellus pellentesque eu. Eu sem integer vitae justo eget magna fermentum. Pellentesque massa placerat duis ultricies. Mauris pharetra et ultrices neque ornare aenean euismod elementum. Integer vitae justo eget magna fermentum iaculis eu non diam. Consectetur purus ut faucibus pulvinar elementum integer enim neque. + +Quam viverra orci sagittis eu volutpat odio facilisis. Nibh tortor id aliquet lectus. Tempor nec feugiat nisl pretium fusce id velit. Ut sem nulla pharetra diam sit amet. Et molestie ac feugiat sed lectus vestibulum mattis. Sapien nec sagittis aliquam malesuada bibendum arcu. Tellus id interdum velit laoreet id. Imperdiet dui accumsan sit amet nulla facilisi morbi. Semper quis lectus nulla at volutpat diam ut venenatis tellus. Laoreet sit amet cursus sit amet dictum. Cras ornare arcu dui vivamus. Integer feugiat scelerisque varius morbi enim. Pulvinar pellentesque habitant morbi tristique. Varius sit amet mattis vulputate. Vel quam elementum pulvinar etiam. Eu augue ut lectus arcu bibendum at. Vitae ultricies leo integer malesuada nunc vel risus commodo. Euismod nisi porta lorem mollis aliquam. Ultricies mi quis hendrerit dolor. Maecenas sed enim ut sem viverra aliquet eget sit amet. + +Aliquam nulla facilisi cras fermentum odio. Convallis posuere morbi leo urna molestie at. Nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Sit amet dictum sit amet justo donec enim diam vulputate. Blandit cursus risus at ultrices mi tempus. Viverra nibh cras pulvinar mattis nunc. Non curabitur gravida arcu ac tortor dignissim convallis aenean et. Dolor sit amet consectetur adipiscing. Tellus orci ac auctor augue. Consequat mauris nunc congue nisi. Nisl nisi scelerisque eu ultrices vitae auctor. Bibendum at varius vel pharetra vel. Convallis a cras semper auctor. + +Non nisi est sit amet facilisis magna etiam tempor orci. Ultrices sagittis orci a scelerisque purus semper eget duis at. Donec massa sapien faucibus et. Nibh cras pulvinar mattis nunc sed blandit libero volutpat sed. Pellentesque id nibh tortor id aliquet lectus proin nibh. Mi tempus imperdiet nulla malesuada. Sollicitudin ac orci phasellus egestas tellus rutrum tellus pellentesque. Vel pharetra vel turpis nunc. Integer eget aliquet nibh praesent. In pellentesque massa placerat duis ultricies. Varius vel pharetra vel turpis nunc eget lorem. Egestas sed tempus urna et. Consectetur adipiscing elit ut aliquam. Quis varius quam quisque id. Adipiscing elit pellentesque habitant morbi. Ornare arcu odio ut sem. Felis eget velit aliquet sagittis id consectetur purus. + +Felis eget velit aliquet sagittis id consectetur purus ut. Montes nascetur ridiculus mus mauris vitae ultricies. Nisi scelerisque eu ultrices vitae auctor. Maecenas accumsan lacus vel facilisis. Risus at ultrices mi tempus imperdiet. Sagittis orci a scelerisque purus semper eget duis at tellus. Cursus metus aliquam eleifend mi in nulla posuere sollicitudin. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Nibh ipsum consequat nisl vel. Egestas egestas fringilla phasellus faucibus scelerisque eleifend. Fusce id velit ut tortor. Nisl condimentum id venenatis a condimentum vitae. Vitae auctor eu augue ut. Amet risus nullam eget felis eget nunc lobortis mattis aliquam. Adipiscing elit pellentesque habitant morbi tristique senectus et. Lectus urna duis convallis convallis tellus id interdum velit laoreet. Augue lacus viverra vitae congue eu consequat ac. Auctor elit sed vulputate mi. Dolor magna eget est lorem ipsum dolor sit amet consectetur. + +Non curabitur gravida arcu ac tortor dignissim convallis aenean et. Sit amet mattis vulputate enim nulla. Lectus urna duis convallis convallis tellus id. Sit amet aliquam id diam maecenas ultricies mi. Sit amet justo donec enim. Sem viverra aliquet eget sit amet tellus. Risus quis varius quam quisque id diam vel. Etiam erat velit scelerisque in dictum non consectetur. Sem integer vitae justo eget magna fermentum. Eu lobortis elementum nibh tellus molestie nunc non. Diam vel quam elementum pulvinar etiam non quam lacus. Adipiscing vitae proin sagittis nisl rhoncus. Lectus nulla at volutpat diam. Odio facilisis mauris sit amet massa vitae tortor condimentum. Adipiscing vitae proin sagittis nisl rhoncus mattis. Rhoncus est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. + +Neque egestas congue quisque egestas diam in. Porttitor leo a diam sollicitudin tempor id eu. Sed turpis tincidunt id aliquet risus feugiat in ante. Amet cursus sit amet dictum sit amet justo donec. Lectus sit amet est placerat in. Amet cursus sit amet dictum sit. Augue mauris augue neque gravida. Condimentum vitae sapien pellentesque habitant morbi tristique senectus. Elementum eu facilisis sed odio morbi quis commodo odio aenean. Vestibulum mattis ullamcorper velit sed ullamcorper morbi tincidunt ornare. Pharetra pharetra massa massa ultricies. Ac ut consequat semper viverra nam libero justo laoreet sit. Orci eu lobortis elementum nibh. Est placerat in egestas erat imperdiet. Eu scelerisque felis imperdiet proin fermentum leo vel. + +Lectus proin nibh nisl condimentum id venenatis. Neque sodales ut etiam sit amet. Mi quis hendrerit dolor magna eget est lorem ipsum. Mauris augue neque gravida in fermentum et. Ac felis donec et odio pellentesque diam. Diam vulputate ut pharetra sit amet aliquam id diam maecenas. Feugiat in ante metus dictum. Lobortis elementum nibh tellus molestie nunc. Amet est placerat in egestas erat imperdiet sed euismod. Morbi leo urna molestie at. Diam donec adipiscing tristique risus nec feugiat in fermentum posuere. Habitant morbi tristique senectus et netus et malesuada fames. A scelerisque purus semper eget duis at tellus at urna. Faucibus interdum posuere lorem ipsum dolor sit amet. Blandit turpis cursus in hac habitasse platea. Tristique senectus et netus et malesuada fames ac turpis. Lobortis elementum nibh tellus molestie nunc non. Ornare quam viverra orci sagittis eu volutpat odio facilisis mauris. + +Dui faucibus in ornare quam viverra orci. Vitae tortor condimentum lacinia quis vel eros. Varius quam quisque id diam vel quam elementum pulvinar etiam. Nunc sed augue lacus viverra. Porttitor rhoncus dolor purus non enim praesent elementum facilisis leo. Morbi tincidunt ornare massa eget egestas purus. Pellentesque nec nam aliquam sem. Pellentesque adipiscing commodo elit at imperdiet dui accumsan. Ullamcorper sit amet risus nullam eget felis eget nunc lobortis. Amet est placerat in egestas erat imperdiet. Dictumst quisque sagittis purus sit. Mauris a diam maecenas sed enim ut. Sed elementum tempus egestas sed sed risus. + +Faucibus interdum posuere lorem ipsum. Vel risus commodo viverra maecenas accumsan lacus vel facilisis volutpat. Egestas maecenas pharetra convallis posuere morbi leo urna. Viverra accumsan in nisl nisi. Diam in arcu cursus euismod quis. Eget dolor morbi non arcu risus quis. Aliquam sem fringilla ut morbi. Id venenatis a condimentum vitae sapien pellentesque habitant morbi. Ultrices vitae auctor eu augue. Lacus vestibulum sed arcu non odio euismod lacinia at. Auctor eu augue ut lectus arcu bibendum. Ultrices eros in cursus turpis massa tincidunt dui ut. Odio morbi quis commodo odio aenean sed adipiscing diam donec. + +Proin sed libero enim sed faucibus turpis in eu. Tortor vitae purus faucibus ornare suspendisse sed nisi lacus. Tristique risus nec feugiat in fermentum posuere. Tellus in hac habitasse platea. Leo integer malesuada nunc vel risus commodo. Consequat id porta nibh venenatis cras sed felis eget velit. Arcu dictum varius duis at consectetur. Mauris pharetra et ultrices neque ornare aenean euismod. Dolor sit amet consectetur adipiscing elit duis tristique. Lacus vel facilisis volutpat est velit egestas dui. Egestas diam in arcu cursus euismod quis viverra nibh. Iaculis at erat pellentesque adipiscing commodo elit at. Cum sociis natoque penatibus et magnis dis parturient montes nascetur. Adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus urna. Nulla malesuada pellentesque elit eget gravida cum sociis. Bibendum neque egestas congue quisque egestas diam. Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Sodales neque sodales ut etiam sit amet. Aenean sed adipiscing diam donec adipiscing tristique risus nec feugiat. Condimentum lacinia quis vel eros donec. + +Lobortis mattis aliquam faucibus purus in massa tempor. Nulla aliquet enim tortor at auctor urna nunc id cursus. Turpis egestas sed tempus urna et. Integer malesuada nunc vel risus commodo. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Eu sem integer vitae justo eget magna. Dolor purus non enim praesent elementum facilisis leo vel. Faucibus interdum posuere lorem ipsum dolor sit. Fusce ut placerat orci nulla. Scelerisque eleifend donec pretium vulputate sapien. Suscipit tellus mauris a diam maecenas sed. Pulvinar pellentesque habitant morbi tristique. Et tortor consequat id porta nibh. Elementum nisi quis eleifend quam. Metus aliquam eleifend mi in nulla posuere sollicitudin. Vitae semper quis lectus nulla at volutpat. Donec ultrices tincidunt arcu non. Integer quis auctor elit sed vulputate mi. Est placerat in egestas erat imperdiet. + +Vitae proin sagittis nisl rhoncus mattis rhoncus. Vel pharetra vel turpis nunc eget lorem. Tortor at auctor urna nunc id cursus. Varius quam quisque id diam vel quam elementum. Fermentum posuere urna nec tincidunt praesent semper feugiat. Purus semper eget duis at. Ac turpis egestas sed tempus urna et. Arcu vitae elementum curabitur vitae nunc. Cursus risus at ultrices mi tempus imperdiet. Amet aliquam id diam maecenas ultricies mi eget mauris. Velit dignissim sodales ut eu sem integer. Malesuada nunc vel risus commodo. Nunc lobortis mattis aliquam faucibus. Massa ultricies mi quis hendrerit dolor magna eget. Pharetra et ultrices neque ornare aenean euismod elementum. Sed arcu non odio euismod lacinia at. Varius vel pharetra vel turpis nunc eget lorem dolor sed. + +Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu feugiat. Urna cursus eget nunc scelerisque viverra mauris in aliquam. Magna etiam tempor orci eu lobortis elementum nibh tellus molestie. Facilisis volutpat est velit egestas dui id ornare. Ac turpis egestas sed tempus urna et. Morbi tincidunt ornare massa eget egestas purus viverra. A arcu cursus vitae congue mauris rhoncus. Et odio pellentesque diam volutpat commodo sed egestas egestas. In vitae turpis massa sed elementum. Quam quisque id diam vel quam. At risus viverra adipiscing at in tellus integer feugiat scelerisque. Quis varius quam quisque id diam vel quam elementum pulvinar. Risus at ultrices mi tempus. Maecenas sed enim ut sem viverra. Neque volutpat ac tincidunt vitae semper quis lectus. Purus in mollis nunc sed. Pretium fusce id velit ut tortor pretium. Amet consectetur adipiscing elit pellentesque habitant morbi tristique senectus et. + +Lorem ipsum dolor sit amet consectetur. A condimentum vitae sapien pellentesque habitant morbi tristique senectus et. Et tortor consequat id porta nibh venenatis. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Dolor purus non enim praesent. Amet porttitor eget dolor morbi non arcu. Viverra vitae congue eu consequat ac felis donec et. Tortor posuere ac ut consequat semper viverra nam. Ac placerat vestibulum lectus mauris ultrices. Amet tellus cras adipiscing enim eu turpis egestas. Viverra nam libero justo laoreet sit amet cursus. + +Velit sed ullamcorper morbi tincidunt ornare massa eget. Scelerisque felis imperdiet proin fermentum leo vel orci porta. Pulvinar sapien et ligula ullamcorper. Mattis rhoncus urna neque viverra justo. Enim nec dui nunc mattis enim ut. Natoque penatibus et magnis dis parturient montes nascetur ridiculus mus. Egestas sed sed risus pretium quam vulputate. Ac tortor vitae purus faucibus ornare suspendisse sed nisi. In cursus turpis massa tincidunt dui ut ornare. Scelerisque eu ultrices vitae auctor eu augue ut lectus. + +Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Consectetur a erat nam at lectus. Curabitur gravida arcu ac tortor dignissim. Turpis massa sed elementum tempus. Facilisi cras fermentum odio eu feugiat pretium nibh. Iaculis nunc sed augue lacus viverra. Tellus molestie nunc non blandit massa. Egestas maecenas pharetra convallis posuere morbi leo urna. Placerat duis ultricies lacus sed turpis. Diam maecenas sed enim ut sem viverra aliquet eget. Neque egestas congue quisque egestas diam in arcu cursus. Arcu vitae elementum curabitur vitae nunc sed. In metus vulputate eu scelerisque felis. Venenatis urna cursus eget nunc. Nibh nisl condimentum id venenatis a condimentum vitae sapien pellentesque. Ac turpis egestas maecenas pharetra convallis posuere. Nunc sed augue lacus viverra vitae congue eu. + +Sit amet luctus venenatis lectus magna fringilla urna. Aliquam faucibus purus in massa tempor nec. Risus pretium quam vulputate dignissim suspendisse in. Mauris cursus mattis molestie a iaculis at erat pellentesque adipiscing. Quam vulputate dignissim suspendisse in est ante. Vel eros donec ac odio tempor. Sagittis purus sit amet volutpat consequat mauris nunc congue nisi. Vulputate odio ut enim blandit volutpat maecenas volutpat blandit. Vestibulum lorem sed risus ultricies tristique nulla aliquet enim. Tellus integer feugiat scelerisque varius morbi enim nunc. Vitae semper quis lectus nulla at volutpat. Sed sed risus pretium quam vulputate dignissim suspendisse in est. Quam viverra orci sagittis eu volutpat odio. Vestibulum lorem sed risus ultricies tristique nulla aliquet. Ipsum consequat nisl vel pretium lectus quam. + +Neque ornare aenean euismod elementum nisi quis eleifend. Adipiscing bibendum est ultricies integer quis. Ac placerat vestibulum lectus mauris. Penatibus et magnis dis parturient montes nascetur. Turpis massa sed elementum tempus. Id leo in vitae turpis. Parturient montes nascetur ridiculus mus mauris vitae ultricies leo. Mollis aliquam ut porttitor leo a diam sollicitudin tempor. Tempor commodo ullamcorper a lacus vestibulum. Vitae auctor eu augue ut lectus arcu. Dui faucibus in ornare quam viverra orci. Varius morbi enim nunc faucibus a pellentesque. Nulla facilisi nullam vehicula ipsum. + +Scelerisque purus semper eget duis at. Elementum eu facilisis sed odio morbi quis commodo odio. Facilisi nullam vehicula ipsum a. Ante in nibh mauris cursus mattis. Quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Condimentum mattis pellentesque id nibh tortor id aliquet lectus. Scelerisque in dictum non consectetur a erat. Viverra orci sagittis eu volutpat. Mauris nunc congue nisi vitae suscipit tellus mauris a. Feugiat pretium nibh ipsum consequat nisl vel pretium. Amet luctus venenatis lectus magna fringilla. Pulvinar elementum integer enim neque volutpat ac tincidunt vitae semper. Molestie a iaculis at erat pellentesque. In cursus turpis massa tincidunt dui. Ut morbi tincidunt augue interdum velit euismod in. Vestibulum lectus mauris ultrices eros in. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et netus. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Neque viverra justo nec ultrices dui sapien eget. + +Semper risus in hendrerit gravida rutrum quisque non tellus orci. Ipsum dolor sit amet consectetur adipiscing elit duis tristique. Odio tempor orci dapibus ultrices in. Massa massa ultricies mi quis hendrerit dolor. Mi in nulla posuere sollicitudin aliquam ultrices sagittis orci a. Maecenas accumsan lacus vel facilisis volutpat est velit egestas. Dolor sit amet consectetur adipiscing elit. Nibh praesent tristique magna sit amet purus gravida quis blandit. Accumsan tortor posuere ac ut consequat semper viverra. Donec et odio pellentesque diam volutpat commodo sed. Mattis aliquam faucibus purus in massa tempor. Sagittis aliquam malesuada bibendum arcu vitae elementum. Velit dignissim sodales ut eu sem integer vitae. Elementum sagittis vitae et leo. Vel facilisis volutpat est velit egestas. Adipiscing tristique risus nec feugiat in fermentum posuere. Tortor pretium viverra suspendisse potenti nullam. + +Leo duis ut diam quam nulla porttitor massa id. Faucibus a pellentesque sit amet porttitor eget. Turpis egestas sed tempus urna. Amet mattis vulputate enim nulla aliquet. Hendrerit gravida rutrum quisque non. Vehicula ipsum a arcu cursus. Nisi quis eleifend quam adipiscing vitae proin sagittis. Neque convallis a cras semper auctor neque vitae tempus. Volutpat lacus laoreet non curabitur gravida arcu ac. Malesuada pellentesque elit eget gravida. Sollicitudin aliquam ultrices sagittis orci. Diam volutpat commodo sed egestas egestas fringilla phasellus. Gravida arcu ac tortor dignissim convallis aenean et tortor. + +Libero enim sed faucibus turpis. Amet consectetur adipiscing elit pellentesque. Proin fermentum leo vel orci porta non pulvinar. Consectetur a erat nam at lectus urna duis convallis convallis. Integer quis auctor elit sed vulputate mi sit. Sit amet purus gravida quis blandit. Lobortis elementum nibh tellus molestie nunc non blandit massa enim. Pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus. Nulla facilisi cras fermentum odio. Lacus sed turpis tincidunt id aliquet. Quis commodo odio aenean sed adipiscing diam donec adipiscing. + +Elit duis tristique sollicitudin nibh. Ultrices tincidunt arcu non sodales neque sodales ut etiam sit. Ipsum faucibus vitae aliquet nec ullamcorper sit. Nec feugiat nisl pretium fusce. Turpis egestas sed tempus urna et pharetra pharetra. Aliquam faucibus purus in massa tempor nec feugiat. Etiam sit amet nisl purus in mollis. Tempor orci dapibus ultrices in iaculis. At tempor commodo ullamcorper a lacus vestibulum sed arcu non. Penatibus et magnis dis parturient montes nascetur ridiculus mus. Pulvinar proin gravida hendrerit lectus a. Nascetur ridiculus mus mauris vitae ultricies leo integer. Risus nullam eget felis eget nunc lobortis mattis aliquam. Morbi blandit cursus risus at ultrices mi tempus imperdiet. Nunc faucibus a pellentesque sit. Venenatis cras sed felis eget. Phasellus egestas tellus rutrum tellus pellentesque eu. Lectus quam id leo in vitae. Lacus vestibulum sed arcu non odio euismod lacinia at quis. + +Eget dolor morbi non arcu risus quis varius quam quisque. Egestas erat imperdiet sed euismod nisi porta. Sed id semper risus in hendrerit gravida. Iaculis urna id volutpat lacus laoreet non curabitur gravida arcu. Ante in nibh mauris cursus mattis molestie a iaculis at. Velit egestas dui id ornare arcu odio ut sem. Nulla facilisi nullam vehicula ipsum a arcu. Eu mi bibendum neque egestas congue quisque egestas diam. Viverra nibh cras pulvinar mattis nunc sed blandit libero volutpat. Faucibus et molestie ac feugiat sed. Vulputate odio ut enim blandit volutpat maecenas volutpat. Eu augue ut lectus arcu bibendum. + +Elementum curabitur vitae nunc sed. Eget arcu dictum varius duis at consectetur lorem donec. Feugiat vivamus at augue eget arcu dictum varius duis at. Id aliquet lectus proin nibh nisl condimentum id venenatis. Dui accumsan sit amet nulla facilisi. Scelerisque varius morbi enim nunc faucibus a pellentesque sit. Aliquam malesuada bibendum arcu vitae elementum. Dui id ornare arcu odio ut sem. Odio facilisis mauris sit amet. Nulla facilisi cras fermentum odio. Mi sit amet mauris commodo. Urna molestie at elementum eu facilisis sed odio morbi. Mattis pellentesque id nibh tortor id aliquet lectus proin. Integer eget aliquet nibh praesent. Quis eleifend quam adipiscing vitae proin sagittis. Fringilla est ullamcorper eget nulla facilisi etiam dignissim. + +Eu feugiat pretium nibh ipsum consequat nisl vel. Cursus euismod quis viverra nibh cras. Malesuada bibendum arcu vitae elementum curabitur vitae nunc sed velit. Mollis nunc sed id semper risus in. Tortor at auctor urna nunc id cursus. Sem integer vitae justo eget magna fermentum iaculis. Arcu non odio euismod lacinia at quis risus sed. Ultricies lacus sed turpis tincidunt id aliquet risus feugiat in. Neque gravida in fermentum et sollicitudin ac orci. Sagittis orci a scelerisque purus. Cras sed felis eget velit aliquet. Eget est lorem ipsum dolor sit amet consectetur adipiscing. Sit amet massa vitae tortor condimentum. Donec et odio pellentesque diam volutpat commodo sed. Integer eget aliquet nibh praesent. Arcu cursus vitae congue mauris rhoncus aenean vel elit. At consectetur lorem donec massa sapien faucibus et molestie ac. + +Scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Lobortis mattis aliquam faucibus purus in massa tempor nec feugiat. Facilisi nullam vehicula ipsum a. Consequat ac felis donec et odio pellentesque diam. Sagittis vitae et leo duis ut diam. Molestie ac feugiat sed lectus vestibulum. Amet justo donec enim diam. Enim lobortis scelerisque fermentum dui faucibus. Eget est lorem ipsum dolor sit amet consectetur adipiscing elit. Sit amet tellus cras adipiscing enim. Bibendum est ultricies integer quis auctor elit sed vulputate mi. + +Porttitor lacus luctus accumsan tortor posuere. Donec ac odio tempor orci. Euismod in pellentesque massa placerat duis ultricies lacus sed. Sed viverra tellus in hac habitasse platea dictumst vestibulum. Nunc sed velit dignissim sodales ut. Tempus egestas sed sed risus pretium quam vulputate dignissim suspendisse. In dictum non consectetur a erat. Dolor sit amet consectetur adipiscing. Porttitor leo a diam sollicitudin. Aliquet enim tortor at auctor urna nunc id. Blandit volutpat maecenas volutpat blandit. Sit amet consectetur adipiscing elit ut aliquam purus sit. Lorem dolor sed viverra ipsum nunc. + +Euismod lacinia at quis risus sed. Id diam maecenas ultricies mi eget mauris pharetra. Risus viverra adipiscing at in tellus integer feugiat. Tempus iaculis urna id volutpat lacus laoreet non. Eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Molestie at elementum eu facilisis sed odio morbi quis. Integer feugiat scelerisque varius morbi enim nunc faucibus a. Pellentesque elit ullamcorper dignissim cras tincidunt lobortis. Duis ut diam quam nulla porttitor massa id. Risus at ultrices mi tempus imperdiet. Eu volutpat odio facilisis mauris sit. Non diam phasellus vestibulum lorem. Amet volutpat consequat mauris nunc congue nisi vitae suscipit. Pretium aenean pharetra magna ac placerat vestibulum lectus. Ultricies tristique nulla aliquet enim tortor at auctor urna nunc. Id porta nibh venenatis cras sed felis eget velit. Vitae proin sagittis nisl rhoncus mattis rhoncus urna neque. Risus pretium quam vulputate dignissim suspendisse in. Aliquam nulla facilisi cras fermentum. Amet massa vitae tortor condimentum lacinia. + +Eros in cursus turpis massa tincidunt dui. Ut ornare lectus sit amet est placerat. Augue lacus viverra vitae congue eu consequat ac. Tortor dignissim convallis aenean et tortor at risus viverra. Platea dictumst quisque sagittis purus sit amet volutpat consequat mauris. Arcu risus quis varius quam quisque. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Vestibulum lectus mauris ultrices eros in cursus. At imperdiet dui accumsan sit amet nulla. Arcu non odio euismod lacinia at quis. Ut sem viverra aliquet eget. + +Lectus nulla at volutpat diam ut venenatis tellus in metus. Orci dapibus ultrices in iaculis nunc. Quam adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus urna. A cras semper auctor neque vitae tempus quam. Feugiat pretium nibh ipsum consequat nisl vel. Sapien nec sagittis aliquam malesuada bibendum arcu vitae. Platea dictumst quisque sagittis purus sit amet volutpat consequat mauris. Libero enim sed faucibus turpis in eu mi bibendum neque. Lorem sed risus ultricies tristique nulla. Ac auctor augue mauris augue neque gravida in fermentum et. Diam vulputate ut pharetra sit amet. Risus pretium quam vulputate dignissim suspendisse in. Non consectetur a erat nam at lectus urna duis convallis. Ipsum nunc aliquet bibendum enim facilisis gravida. Dolor purus non enim praesent elementum facilisis. Ultrices eros in cursus turpis. Eleifend quam adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus. Magna eget est lorem ipsum dolor. Purus semper eget duis at tellus at urna. + +Mauris vitae ultricies leo integer malesuada nunc vel risus. Ut ornare lectus sit amet est placerat in. Eget arcu dictum varius duis at consectetur lorem donec. Donec et odio pellentesque diam volutpat commodo sed egestas. Neque aliquam vestibulum morbi blandit cursus risus at ultrices. Nibh tellus molestie nunc non blandit massa. Imperdiet dui accumsan sit amet nulla facilisi morbi. Sed viverra tellus in hac habitasse platea. Magna fringilla urna porttitor rhoncus dolor purus non enim praesent. Sed pulvinar proin gravida hendrerit lectus. Lorem donec massa sapien faucibus et molestie. Elit at imperdiet dui accumsan sit amet. Volutpat odio facilisis mauris sit amet massa vitae tortor. Nisi lacus sed viverra tellus in hac. Ultricies tristique nulla aliquet enim tortor at auctor. + +Tortor at risus viverra adipiscing. Eget mauris pharetra et ultrices neque ornare aenean. At volutpat diam ut venenatis tellus. Ut eu sem integer vitae justo. Enim nulla aliquet porttitor lacus luctus accumsan tortor posuere. Mauris commodo quis imperdiet massa tincidunt nunc pulvinar. Semper eget duis at tellus at urna condimentum mattis pellentesque. Ante metus dictum at tempor commodo ullamcorper a lacus vestibulum. Et tortor consequat id porta nibh venenatis cras sed. Aliquet lectus proin nibh nisl. Tristique senectus et netus et malesuada fames ac. Massa enim nec dui nunc mattis enim ut tellus elementum. + +Consequat interdum varius sit amet mattis vulputate enim. Lorem ipsum dolor sit amet. Hac habitasse platea dictumst vestibulum. Posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nulla facilisi morbi tempus iaculis urna id volutpat lacus laoreet. Nulla aliquet porttitor lacus luctus accumsan tortor posuere. Netus et malesuada fames ac turpis egestas integer eget aliquet. Elit duis tristique sollicitudin nibh sit amet. Et egestas quis ipsum suspendisse ultrices gravida dictum. Mi sit amet mauris commodo quis imperdiet massa tincidunt. Magna fermentum iaculis eu non diam. Quam id leo in vitae turpis massa sed. At consectetur lorem donec massa sapien faucibus. Nisi porta lorem mollis aliquam. Elementum eu facilisis sed odio morbi quis. Lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit amet. Ut consequat semper viverra nam. Interdum posuere lorem ipsum dolor sit amet consectetur adipiscing elit. + +Nec ullamcorper sit amet risus. Id cursus metus aliquam eleifend mi in nulla. Arcu felis bibendum ut tristique et egestas quis ipsum suspendisse. Non sodales neque sodales ut etiam sit amet nisl. Nunc sed velit dignissim sodales ut eu sem. Neque convallis a cras semper auctor neque. Nisl vel pretium lectus quam id leo in vitae turpis. Lobortis feugiat vivamus at augue eget arcu dictum varius duis. Tristique senectus et netus et. Etiam dignissim diam quis enim lobortis scelerisque fermentum. Blandit cursus risus at ultrices mi tempus imperdiet nulla malesuada. At consectetur lorem donec massa sapien faucibus et molestie. Condimentum mattis pellentesque id nibh tortor id aliquet. Aenean et tortor at risus. + +Maecenas volutpat blandit aliquam etiam erat velit scelerisque in. Sed velit dignissim sodales ut eu. Pulvinar elementum integer enim neque volutpat ac tincidunt vitae semper. Cras ornare arcu dui vivamus arcu. Tristique nulla aliquet enim tortor at auctor urna nunc id. Eget aliquet nibh praesent tristique magna sit amet purus gravida. Mauris augue neque gravida in fermentum et. Mi ipsum faucibus vitae aliquet nec ullamcorper sit amet. Tortor pretium viverra suspendisse potenti nullam ac tortor vitae. Mattis ullamcorper velit sed ullamcorper morbi tincidunt ornare. Sollicitudin tempor id eu nisl nunc mi ipsum faucibus vitae. Cursus euismod quis viverra nibh cras pulvinar mattis nunc. Porttitor leo a diam sollicitudin tempor. In nisl nisi scelerisque eu ultrices vitae auctor eu augue. Potenti nullam ac tortor vitae purus faucibus. Id cursus metus aliquam eleifend mi in nulla. Molestie nunc non blandit massa. Quisque non tellus orci ac auctor augue. At tellus at urna condimentum mattis pellentesque id nibh tortor. Tortor consequat id porta nibh venenatis. + +Mauris augue neque gravida in fermentum. Aenean et tortor at risus viverra. Eu augue ut lectus arcu bibendum. Neque viverra justo nec ultrices dui. Feugiat nisl pretium fusce id. Elit pellentesque habitant morbi tristique senectus et. Purus gravida quis blandit turpis. Morbi non arcu risus quis. Dignissim convallis aenean et tortor at risus viverra adipiscing at. Amet purus gravida quis blandit turpis. + +Tempor nec feugiat nisl pretium fusce id velit ut. Odio facilisis mauris sit amet massa vitae. Dolor sit amet consectetur adipiscing elit ut aliquam. Nunc aliquet bibendum enim facilisis gravida. Gravida dictum fusce ut placerat orci nulla. Sollicitudin aliquam ultrices sagittis orci. Diam ut venenatis tellus in metus vulputate eu. Vitae sapien pellentesque habitant morbi tristique senectus et netus et. Vestibulum morbi blandit cursus risus at. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl rhoncus. Sapien nec sagittis aliquam malesuada bibendum. Urna duis convallis convallis tellus id interdum velit. Quisque id diam vel quam elementum pulvinar. Neque gravida in fermentum et sollicitudin ac orci phasellus. Sodales neque sodales ut etiam sit amet nisl. Orci phasellus egestas tellus rutrum tellus pellentesque eu tincidunt tortor. + +Tempor id eu nisl nunc mi ipsum faucibus vitae aliquet. Eu non diam phasellus vestibulum. Interdum varius sit amet mattis. Faucibus nisl tincidunt eget nullam non. Duis at tellus at urna condimentum mattis pellentesque id. Tellus elementum sagittis vitae et leo. Amet facilisis magna etiam tempor orci. Posuere ac ut consequat semper viverra nam libero justo laoreet. Sem nulla pharetra diam sit amet nisl suscipit. Consectetur a erat nam at lectus urna duis. Interdum posuere lorem ipsum dolor sit. Tempor id eu nisl nunc mi ipsum faucibus. Velit scelerisque in dictum non consectetur a erat nam at. Nunc mattis enim ut tellus. Convallis convallis tellus id interdum velit laoreet. Accumsan in nisl nisi scelerisque. Tempor commodo ullamcorper a lacus vestibulum sed arcu non. Elementum eu facilisis sed odio morbi quis commodo. + +Consectetur purus ut faucibus pulvinar elementum integer enim neque. Commodo quis imperdiet massa tincidunt. Elementum nibh tellus molestie nunc. Bibendum enim facilisis gravida neque convallis a cras semper. Eros donec ac odio tempor orci dapibus ultrices in iaculis. Massa sapien faucibus et molestie ac. In mollis nunc sed id. Urna et pharetra pharetra massa. Egestas diam in arcu cursus euismod quis viverra nibh cras. Pretium nibh ipsum consequat nisl vel pretium lectus quam. Arcu felis bibendum ut tristique et egestas quis ipsum suspendisse. Elit duis tristique sollicitudin nibh. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Aliquet nibh praesent tristique magna sit. Mauris augue neque gravida in fermentum et sollicitudin ac. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Sollicitudin tempor id eu nisl. Tortor dignissim convallis aenean et. + +Tortor vitae purus faucibus ornare suspendisse. Porta lorem mollis aliquam ut porttitor leo. Nunc pulvinar sapien et ligula ullamcorper malesuada proin libero. Dui vivamus arcu felis bibendum. Praesent semper feugiat nibh sed pulvinar proin gravida. Sed augue lacus viverra vitae congue eu consequat ac felis. Tortor at auctor urna nunc id cursus. Nibh tortor id aliquet lectus. Phasellus egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam. Arcu non sodales neque sodales ut etiam. Dolor magna eget est lorem ipsum dolor sit. Phasellus egestas tellus rutrum tellus pellentesque eu. Venenatis tellus in metus vulputate. Maecenas sed enim ut sem viverra aliquet eget. Eu ultrices vitae auctor eu augue ut lectus arcu bibendum. Massa sapien faucibus et molestie ac feugiat. + +Euismod in pellentesque massa placerat duis ultricies. Neque gravida in fermentum et sollicitudin ac orci phasellus egestas. Quis lectus nulla at volutpat diam ut venenatis tellus. Orci ac auctor augue mauris augue neque gravida in. Lectus proin nibh nisl condimentum id venenatis a condimentum. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar. Tellus id interdum velit laoreet id donec. Placerat duis ultricies lacus sed turpis tincidunt id aliquet. Tellus in hac habitasse platea dictumst vestibulum rhoncus est pellentesque. Cras pulvinar mattis nunc sed blandit libero volutpat sed. Et pharetra pharetra massa massa ultricies mi quis hendrerit dolor. Sem nulla pharetra diam sit amet nisl. Aliquam malesuada bibendum arcu vitae. Vel facilisis volutpat est velit egestas dui id. Vitae tortor condimentum lacinia quis. Purus sit amet volutpat consequat mauris nunc congue nisi. Lacus sed viverra tellus in hac habitasse platea. Eros in cursus turpis massa tincidunt dui ut ornare lectus. + +Nulla pharetra diam sit amet nisl suscipit adipiscing bibendum est. Tellus rutrum tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Faucibus vitae aliquet nec ullamcorper sit amet. Mattis aliquam faucibus purus in. Scelerisque in dictum non consectetur a erat. Congue eu consequat ac felis donec et. In massa tempor nec feugiat. Est sit amet facilisis magna etiam. Pretium vulputate sapien nec sagittis aliquam malesuada bibendum arcu vitae. Nisi lacus sed viverra tellus in. Eu facilisis sed odio morbi quis commodo odio. Lorem donec massa sapien faucibus et molestie ac. Dictumst quisque sagittis purus sit. Quis lectus nulla at volutpat diam. Pellentesque id nibh tortor id aliquet. + +At tellus at urna condimentum mattis. Ipsum suspendisse ultrices gravida dictum fusce. Odio morbi quis commodo odio aenean sed adipiscing diam. Amet consectetur adipiscing elit duis tristique. Porta nibh venenatis cras sed felis eget velit aliquet sagittis. Elementum nibh tellus molestie nunc non blandit. Phasellus faucibus scelerisque eleifend donec. Scelerisque varius morbi enim nunc faucibus a pellentesque sit amet. Nibh tortor id aliquet lectus proin nibh. Tincidunt praesent semper feugiat nibh. Sodales ut etiam sit amet nisl purus in. Enim neque volutpat ac tincidunt vitae. Massa tempor nec feugiat nisl pretium fusce id. Mi quis hendrerit dolor magna eget est lorem. Massa enim nec dui nunc mattis enim ut. Quam elementum pulvinar etiam non quam lacus. Cras sed felis eget velit. + +Pellentesque adipiscing commodo elit at imperdiet dui. Sapien nec sagittis aliquam malesuada. Ut lectus arcu bibendum at. Tristique senectus et netus et malesuada fames ac turpis. Elementum facilisis leo vel fringilla est ullamcorper eget nulla facilisi. Tempus iaculis urna id volutpat lacus laoreet. Egestas sed tempus urna et. Quis ipsum suspendisse ultrices gravida dictum fusce. Nisl rhoncus mattis rhoncus urna. Nisi scelerisque eu ultrices vitae auctor eu. In iaculis nunc sed augue lacus. Volutpat odio facilisis mauris sit. Lorem ipsum dolor sit amet consectetur adipiscing elit duis tristique. Arcu vitae elementum curabitur vitae nunc sed. + +Lorem ipsum dolor sit amet consectetur adipiscing elit pellentesque. Nullam eget felis eget nunc lobortis mattis aliquam. Posuere sollicitudin aliquam ultrices sagittis orci. Sit amet porttitor eget dolor morbi non arcu. Augue mauris augue neque gravida. In ante metus dictum at tempor. Amet tellus cras adipiscing enim. Orci nulla pellentesque dignissim enim sit amet venenatis urna. Nibh tellus molestie nunc non blandit massa enim. Nibh ipsum consequat nisl vel pretium lectus quam id. Sodales ut etiam sit amet nisl. A arcu cursus vitae congue mauris rhoncus aenean vel. Scelerisque viverra mauris in aliquam sem fringilla ut morbi tincidunt. Fringilla phasellus faucibus scelerisque eleifend donec pretium vulputate sapien. + +Praesent semper feugiat nibh sed pulvinar proin. Molestie nunc non blandit massa enim. Magna ac placerat vestibulum lectus. Tortor at auctor urna nunc id cursus. Aliquet risus feugiat in ante metus dictum at tempor commodo. Diam sit amet nisl suscipit. Maecenas accumsan lacus vel facilisis volutpat est velit egestas dui. Sapien eget mi proin sed. Felis eget velit aliquet sagittis. Morbi tristique senectus et netus et malesuada fames ac turpis. Leo vel orci porta non pulvinar neque laoreet. Eu consequat ac felis donec et odio pellentesque diam. Morbi leo urna molestie at elementum eu facilisis sed. Diam quam nulla porttitor massa id neque. Sed viverra tellus in hac habitasse. Odio morbi quis commodo odio aenean sed adipiscing diam. Nulla pharetra diam sit amet nisl suscipit. + +Quis imperdiet massa tincidunt nunc pulvinar sapien et ligula. Egestas diam in arcu cursus euismod quis viverra nibh cras. Felis eget velit aliquet sagittis id consectetur purus ut. Lorem mollis aliquam ut porttitor leo. Dignissim diam quis enim lobortis scelerisque fermentum dui faucibus. Dis parturient montes nascetur ridiculus mus mauris vitae ultricies leo. Purus viverra accumsan in nisl nisi scelerisque. Ullamcorper sit amet risus nullam eget felis eget nunc. Turpis egestas sed tempus urna et pharetra pharetra massa. Vulputate mi sit amet mauris commodo quis imperdiet massa tincidunt. Tempor id eu nisl nunc. Nunc sed blandit libero volutpat sed cras ornare arcu. Maecenas volutpat blandit aliquam etiam erat. Adipiscing diam donec adipiscing tristique risus nec. Enim praesent elementum facilisis leo. Interdum velit laoreet id donec ultrices tincidunt. Ullamcorper malesuada proin libero nunc consequat interdum varius sit amet. Ac feugiat sed lectus vestibulum mattis. Commodo odio aenean sed adipiscing diam donec adipiscing tristique. + +Quam viverra orci sagittis eu volutpat odio. Iaculis at erat pellentesque adipiscing commodo elit at. Non quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Posuere lorem ipsum dolor sit amet. Nunc faucibus a pellentesque sit amet porttitor eget. Mi sit amet mauris commodo. Orci porta non pulvinar neque. Vulputate odio ut enim blandit volutpat maecenas volutpat blandit. Non tellus orci ac auctor augue mauris augue neque gravida. Id aliquet risus feugiat in ante metus dictum at. Et molestie ac feugiat sed lectus vestibulum mattis ullamcorper velit. Vitae semper quis lectus nulla at. Odio ut enim blandit volutpat maecenas. + +Eget felis eget nunc lobortis mattis aliquam. Quam vulputate dignissim suspendisse in est ante in nibh. Aenean sed adipiscing diam donec adipiscing tristique risus nec. Curabitur vitae nunc sed velit dignissim. Arcu ac tortor dignissim convallis aenean. Ut aliquam purus sit amet luctus venenatis lectus magna. Dui id ornare arcu odio ut sem nulla pharetra diam. Egestas quis ipsum suspendisse ultrices gravida dictum. Gravida arcu ac tortor dignissim. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Est sit amet facilisis magna. + +Arcu vitae elementum curabitur vitae nunc sed velit dignissim. At ultrices mi tempus imperdiet nulla malesuada pellentesque elit. Adipiscing bibendum est ultricies integer quis. Amet consectetur adipiscing elit pellentesque habitant morbi tristique senectus et. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Maecenas accumsan lacus vel facilisis volutpat est velit egestas. Malesuada fames ac turpis egestas integer. Tristique senectus et netus et malesuada fames ac turpis. Orci nulla pellentesque dignissim enim sit amet venenatis urna. Lectus nulla at volutpat diam ut venenatis tellus. Netus et malesuada fames ac turpis. Urna porttitor rhoncus dolor purus non enim praesent. Diam maecenas ultricies mi eget. In dictum non consectetur a erat nam at lectus urna. Diam maecenas ultricies mi eget. Id donec ultrices tincidunt arcu non sodales neque sodales. Aliquam sem fringilla ut morbi tincidunt augue interdum. Vitae elementum curabitur vitae nunc sed velit dignissim sodales ut. + +Purus sit amet volutpat consequat mauris. Odio aenean sed adipiscing diam donec adipiscing tristique risus nec. Vitae et leo duis ut. Porttitor rhoncus dolor purus non enim praesent elementum. Bibendum at varius vel pharetra vel turpis nunc eget. Tristique senectus et netus et malesuada fames. Blandit libero volutpat sed cras ornare. Adipiscing diam donec adipiscing tristique risus nec feugiat in. Neque vitae tempus quam pellentesque nec nam aliquam sem et. Orci nulla pellentesque dignissim enim sit amet. Commodo nulla facilisi nullam vehicula ipsum a arcu cursus vitae. Gravida neque convallis a cras semper auctor neque vitae. + +Ornare arcu dui vivamus arcu. Ac auctor augue mauris augue neque gravida in. Et egestas quis ipsum suspendisse ultrices. Adipiscing elit ut aliquam purus sit amet. Et malesuada fames ac turpis egestas integer. Varius vel pharetra vel turpis nunc eget lorem dolor sed. Dui nunc mattis enim ut tellus elementum sagittis. Sociis natoque penatibus et magnis. Dui sapien eget mi proin sed. Eget gravida cum sociis natoque penatibus et magnis dis parturient. Ullamcorper dignissim cras tincidunt lobortis. + +Diam maecenas sed enim ut sem viverra aliquet. Ut etiam sit amet nisl purus in mollis. Dolor sit amet consectetur adipiscing. Fames ac turpis egestas maecenas pharetra convallis posuere. Nisi scelerisque eu ultrices vitae auctor. Duis at consectetur lorem donec massa sapien faucibus et molestie. Purus in massa tempor nec feugiat nisl. Nunc id cursus metus aliquam. Dictum varius duis at consectetur. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Quam lacus suspendisse faucibus interdum. Posuere morbi leo urna molestie at elementum eu facilisis. Accumsan tortor posuere ac ut. Suspendisse sed nisi lacus sed viverra tellus in. Arcu cursus euismod quis viverra nibh cras pulvinar mattis nunc. Nulla aliquet enim tortor at auctor urna. Sed tempus urna et pharetra. Lectus nulla at volutpat diam ut venenatis tellus in metus. Erat velit scelerisque in dictum. + +Lobortis scelerisque fermentum dui faucibus in ornare quam. Vitae tempus quam pellentesque nec. Non diam phasellus vestibulum lorem sed risus ultricies tristique nulla. Ut venenatis tellus in metus vulputate eu scelerisque felis imperdiet. Nec feugiat in fermentum posuere. Pharetra magna ac placerat vestibulum. Scelerisque viverra mauris in aliquam. Pulvinar proin gravida hendrerit lectus. Nunc sed velit dignissim sodales ut. Porttitor lacus luctus accumsan tortor. Mauris rhoncus aenean vel elit scelerisque mauris. + +Odio facilisis mauris sit amet massa. Massa sed elementum tempus egestas sed sed risus. Mi tempus imperdiet nulla malesuada pellentesque. Gravida arcu ac tortor dignissim convallis aenean et. Sit amet mauris commodo quis. Orci phasellus egestas tellus rutrum. Id diam maecenas ultricies mi eget. Consectetur a erat nam at lectus urna duis convallis. Penatibus et magnis dis parturient montes nascetur. Urna nec tincidunt praesent semper feugiat. Metus dictum at tempor commodo ullamcorper a lacus vestibulum sed. Lorem ipsum dolor sit amet consectetur. Dolor magna eget est lorem ipsum. Nullam ac tortor vitae purus faucibus ornare. Vel eros donec ac odio tempor orci dapibus ultrices in. Viverra orci sagittis eu volutpat odio facilisis mauris sit. In egestas erat imperdiet sed euismod nisi porta lorem mollis. Proin libero nunc consequat interdum varius sit. Massa id neque aliquam vestibulum morbi blandit cursus. Mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus et. + +Vivamus arcu felis bibendum ut tristique et egestas quis. Augue interdum velit euismod in pellentesque massa placerat. Gravida cum sociis natoque penatibus et. Amet nisl suscipit adipiscing bibendum est ultricies integer quis auctor. Faucibus ornare suspendisse sed nisi lacus sed. Tempus imperdiet nulla malesuada pellentesque elit eget gravida. Duis ultricies lacus sed turpis. Convallis a cras semper auctor neque vitae tempus quam pellentesque. Bibendum arcu vitae elementum curabitur. Scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis. Elementum sagittis vitae et leo duis ut diam. Nunc lobortis mattis aliquam faucibus purus in massa. Et malesuada fames ac turpis. Mi eget mauris pharetra et. At imperdiet dui accumsan sit amet. Nulla pharetra diam sit amet. Est lorem ipsum dolor sit amet consectetur. Vitae tortor condimentum lacinia quis vel. Pretium viverra suspendisse potenti nullam. Tincidunt augue interdum velit euismod. + +Faucibus et molestie ac feugiat sed lectus vestibulum mattis. Est ullamcorper eget nulla facilisi etiam dignissim diam quis enim. Scelerisque viverra mauris in aliquam. Sed odio morbi quis commodo odio aenean sed adipiscing diam. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Laoreet sit amet cursus sit amet dictum sit amet justo. A diam maecenas sed enim ut sem. Morbi tristique senectus et netus et. Morbi tincidunt augue interdum velit euismod in pellentesque massa. Rhoncus dolor purus non enim praesent. Blandit cursus risus at ultrices mi tempus imperdiet nulla. Arcu cursus vitae congue mauris rhoncus aenean vel elit scelerisque. Condimentum id venenatis a condimentum vitae sapien. Vivamus arcu felis bibendum ut tristique et. + +Sit amet purus gravida quis blandit turpis cursus in. Nibh cras pulvinar mattis nunc sed blandit. Bibendum arcu vitae elementum curabitur. Diam vel quam elementum pulvinar etiam non quam. Cursus vitae congue mauris rhoncus aenean vel elit. Egestas dui id ornare arcu odio ut sem. Volutpat diam ut venenatis tellus in metus vulputate eu scelerisque. Donec enim diam vulputate ut. Tincidunt ornare massa eget egestas. Scelerisque fermentum dui faucibus in. In nisl nisi scelerisque eu ultrices vitae. + +A iaculis at erat pellentesque adipiscing commodo elit at. Eu consequat ac felis donec et odio pellentesque diam. Aliquam purus sit amet luctus venenatis. Id aliquet lectus proin nibh. Mi bibendum neque egestas congue quisque egestas diam. Amet consectetur adipiscing elit duis tristique sollicitudin. Sed libero enim sed faucibus turpis. Faucibus purus in massa tempor nec feugiat nisl. Magna fermentum iaculis eu non diam phasellus vestibulum lorem. Urna porttitor rhoncus dolor purus non enim. In ornare quam viverra orci sagittis eu volutpat odio facilisis. Massa enim nec dui nunc mattis enim. Risus pretium quam vulputate dignissim suspendisse in est. + +A scelerisque purus semper eget duis at tellus at. Viverra accumsan in nisl nisi scelerisque eu. Laoreet suspendisse interdum consectetur libero. Vitae tortor condimentum lacinia quis vel eros donec ac odio. Nibh cras pulvinar mattis nunc sed blandit. Hendrerit gravida rutrum quisque non tellus orci ac auctor augue. Turpis egestas integer eget aliquet nibh praesent tristique magna. Aenean vel elit scelerisque mauris pellentesque. Pulvinar sapien et ligula ullamcorper malesuada. In dictum non consectetur a erat. Cras ornare arcu dui vivamus arcu felis bibendum ut. Cras semper auctor neque vitae tempus quam pellentesque nec. Nibh nisl condimentum id venenatis. Felis donec et odio pellentesque diam volutpat commodo. + +Et malesuada fames ac turpis egestas maecenas. Nibh praesent tristique magna sit amet purus gravida quis. Nunc sed blandit libero volutpat sed cras ornare. Eros in cursus turpis massa tincidunt dui ut. Quis varius quam quisque id. Aenean euismod elementum nisi quis eleifend quam adipiscing. Pharetra diam sit amet nisl. Risus quis varius quam quisque id diam vel. Montes nascetur ridiculus mus mauris vitae ultricies. Lacus vestibulum sed arcu non. Consectetur adipiscing elit duis tristique sollicitudin nibh sit. Nulla pellentesque dignissim enim sit amet venenatis. Turpis egestas pretium aenean pharetra magna. Consequat ac felis donec et odio pellentesque. Nec feugiat nisl pretium fusce id velit ut. Risus nec feugiat in fermentum. + +Velit ut tortor pretium viverra suspendisse. Ut consequat semper viverra nam libero justo laoreet sit amet. Id donec ultrices tincidunt arcu non sodales neque sodales ut. Urna et pharetra pharetra massa massa ultricies mi quis hendrerit. Scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis. Eget est lorem ipsum dolor. Purus non enim praesent elementum. Nam libero justo laoreet sit amet cursus sit amet. Aliquet bibendum enim facilisis gravida. Dui vivamus arcu felis bibendum ut tristique et. Egestas maecenas pharetra convallis posuere morbi leo. Volutpat consequat mauris nunc congue nisi vitae. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Ultricies integer quis auctor elit sed vulputate mi. Neque aliquam vestibulum morbi blandit cursus risus at. Leo duis ut diam quam nulla porttitor. Nunc sed id semper risus in hendrerit. + +Sit amet commodo nulla facilisi. Purus sit amet luctus venenatis. Pellentesque eu tincidunt tortor aliquam nulla facilisi cras fermentum. Cursus eget nunc scelerisque viverra mauris in aliquam sem. Id eu nisl nunc mi ipsum faucibus vitae aliquet. Dapibus ultrices in iaculis nunc sed augue lacus. Quisque id diam vel quam elementum pulvinar etiam. Turpis egestas maecenas pharetra convallis posuere morbi. Semper auctor neque vitae tempus quam pellentesque nec. Ultrices mi tempus imperdiet nulla malesuada pellentesque elit eget gravida. Vel risus commodo viverra maecenas accumsan lacus vel facilisis. Risus feugiat in ante metus dictum at tempor commodo ullamcorper. Dui vivamus arcu felis bibendum. Quis enim lobortis scelerisque fermentum dui. + +Semper viverra nam libero justo laoreet sit amet cursus sit. Vitae congue eu consequat ac felis donec et odio. Dui ut ornare lectus sit amet est placerat in egestas. Odio aenean sed adipiscing diam donec adipiscing. Tincidunt ornare massa eget egestas. Et malesuada fames ac turpis egestas maecenas. At erat pellentesque adipiscing commodo elit. Proin sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Fermentum dui faucibus in ornare quam. Odio facilisis mauris sit amet massa vitae. Posuere sollicitudin aliquam ultrices sagittis. Nisl tincidunt eget nullam non nisi est sit amet. Magna ac placerat vestibulum lectus. Fermentum posuere urna nec tincidunt. Venenatis cras sed felis eget. Nisl nisi scelerisque eu ultrices vitae auctor. Morbi tristique senectus et netus et malesuada. Ultricies mi quis hendrerit dolor magna eget. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc. Platea dictumst quisque sagittis purus sit amet volutpat consequat. + +Ac turpis egestas integer eget aliquet. Phasellus vestibulum lorem sed risus ultricies. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Senectus et netus et malesuada fames. Consequat semper viverra nam libero justo. Bibendum arcu vitae elementum curabitur. Egestas integer eget aliquet nibh praesent tristique. Aliquet sagittis id consectetur purus ut. Eu volutpat odio facilisis mauris sit. In ante metus dictum at. Consequat interdum varius sit amet mattis vulputate enim. Accumsan in nisl nisi scelerisque eu. Diam maecenas sed enim ut sem viverra aliquet eget. Laoreet sit amet cursus sit amet. Proin nibh nisl condimentum id. Amet nisl suscipit adipiscing bibendum est ultricies. + +At in tellus integer feugiat. Dictumst quisque sagittis purus sit amet volutpat consequat mauris. Lacus vestibulum sed arcu non odio euismod. Ut eu sem integer vitae justo eget. Amet luctus venenatis lectus magna. Porta non pulvinar neque laoreet suspendisse interdum consectetur libero id. Lectus arcu bibendum at varius. Sit amet facilisis magna etiam tempor orci. A lacus vestibulum sed arcu non odio euismod lacinia at. Vitae tortor condimentum lacinia quis. Cursus eget nunc scelerisque viverra mauris in aliquam. + +Euismod in pellentesque massa placerat duis ultricies lacus sed turpis. Velit euismod in pellentesque massa placerat duis. Lacinia quis vel eros donec ac odio tempor orci. Platea dictumst quisque sagittis purus. Bibendum est ultricies integer quis auctor. Habitant morbi tristique senectus et netus et malesuada fames ac. Consequat semper viverra nam libero justo laoreet sit amet cursus. Sagittis id consectetur purus ut faucibus pulvinar elementum integer enim. Sit amet consectetur adipiscing elit ut aliquam purus sit amet. Mattis pellentesque id nibh tortor id aliquet lectus proin. Donec ac odio tempor orci dapibus ultrices in iaculis nunc. Sed id semper risus in hendrerit gravida rutrum quisque. Sodales ut etiam sit amet nisl purus in mollis nunc. Lacinia quis vel eros donec ac odio tempor orci. Sit amet risus nullam eget felis eget nunc. + +Congue mauris rhoncus aenean vel. Et tortor at risus viverra adipiscing at in tellus. Parturient montes nascetur ridiculus mus. Urna molestie at elementum eu facilisis sed. Nam libero justo laoreet sit amet cursus sit. Id aliquet lectus proin nibh nisl condimentum id. Tortor aliquam nulla facilisi cras fermentum odio eu. Adipiscing bibendum est ultricies integer quis auctor elit sed vulputate. Ullamcorper sit amet risus nullam eget felis eget nunc. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Faucibus nisl tincidunt eget nullam non nisi. In arcu cursus euismod quis. Ultrices gravida dictum fusce ut placerat orci. Eget lorem dolor sed viverra ipsum. Diam donec adipiscing tristique risus nec feugiat in. Mattis molestie a iaculis at erat pellentesque adipiscing commodo elit. Egestas diam in arcu cursus euismod. Nisl condimentum id venenatis a condimentum vitae sapien pellentesque. + +Fermentum dui faucibus in ornare quam viverra orci sagittis. Tempus egestas sed sed risus pretium quam vulputate dignissim. Ut sem viverra aliquet eget sit amet tellus. Vivamus at augue eget arcu dictum. Viverra suspendisse potenti nullam ac tortor vitae purus faucibus. Egestas tellus rutrum tellus pellentesque. Ullamcorper a lacus vestibulum sed arcu. Nibh tortor id aliquet lectus proin nibh nisl. Sed arcu non odio euismod lacinia at quis risus sed. Nulla facilisi cras fermentum odio eu feugiat. Dictum fusce ut placerat orci nulla pellentesque dignissim. Id eu nisl nunc mi ipsum faucibus vitae aliquet nec. + +Amet consectetur adipiscing elit duis tristique. Eu mi bibendum neque egestas congue. Elementum curabitur vitae nunc sed velit dignissim sodales ut eu. Bibendum at varius vel pharetra vel turpis nunc. Urna condimentum mattis pellentesque id nibh tortor id. Potenti nullam ac tortor vitae purus. Facilisis mauris sit amet massa vitae tortor condimentum lacinia quis. Tellus cras adipiscing enim eu turpis egestas pretium. Elit at imperdiet dui accumsan. Sit amet est placerat in. + +Facilisis mauris sit amet massa vitae tortor. Nullam ac tortor vitae purus faucibus ornare suspendisse. Viverra aliquet eget sit amet tellus cras adipiscing. Massa ultricies mi quis hendrerit dolor magna eget est lorem. Blandit libero volutpat sed cras ornare arcu dui. Massa sed elementum tempus egestas sed sed risus pretium quam. Lacus sed turpis tincidunt id aliquet. Cras adipiscing enim eu turpis egestas pretium. Elementum nisi quis eleifend quam adipiscing vitae. Quis enim lobortis scelerisque fermentum dui faucibus in. Libero justo laoreet sit amet cursus sit amet. Arcu cursus euismod quis viverra nibh cras. Tempus urna et pharetra pharetra massa. Placerat vestibulum lectus mauris ultrices eros in cursus. Pulvinar sapien et ligula ullamcorper malesuada proin libero. Dolor sit amet consectetur adipiscing elit ut. + +In iaculis nunc sed augue lacus viverra vitae congue eu. Vulputate sapien nec sagittis aliquam malesuada bibendum arcu vitae elementum. Nulla at volutpat diam ut venenatis. A scelerisque purus semper eget duis at tellus at urna. Nibh nisl condimentum id venenatis a condimentum. Quis eleifend quam adipiscing vitae. Sed tempus urna et pharetra pharetra massa massa ultricies mi. Lorem ipsum dolor sit amet consectetur adipiscing elit. Nulla pellentesque dignissim enim sit amet venenatis. Aliquam sem fringilla ut morbi tincidunt augue interdum. Ut pharetra sit amet aliquam id diam. Pellentesque adipiscing commodo elit at. Suspendisse interdum consectetur libero id. Lectus sit amet est placerat in egestas. Dui id ornare arcu odio. Urna nec tincidunt praesent semper feugiat nibh sed. Egestas dui id ornare arcu odio ut. + +Vitae suscipit tellus mauris a diam maecenas sed. Sagittis eu volutpat odio facilisis mauris sit amet massa. Ultrices gravida dictum fusce ut. Tellus id interdum velit laoreet id. Morbi enim nunc faucibus a pellentesque sit amet. Nisl vel pretium lectus quam id leo in vitae. Viverra orci sagittis eu volutpat. Quis hendrerit dolor magna eget est lorem. Et netus et malesuada fames. Tortor condimentum lacinia quis vel eros donec. Pretium quam vulputate dignissim suspendisse in est ante in nibh. At erat pellentesque adipiscing commodo elit at imperdiet dui accumsan. Scelerisque felis imperdiet proin fermentum leo vel orci porta non. Vitae aliquet nec ullamcorper sit. + +Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque. Sagittis orci a scelerisque purus semper eget duis at tellus. Pharetra massa massa ultricies mi quis hendrerit. Elementum curabitur vitae nunc sed velit dignissim. Et tortor at risus viverra adipiscing at in. Morbi leo urna molestie at. Mollis aliquam ut porttitor leo a diam sollicitudin tempor. Bibendum enim facilisis gravida neque. Purus ut faucibus pulvinar elementum integer enim neque volutpat ac. Nunc faucibus a pellentesque sit amet porttitor eget. Vitae et leo duis ut. Faucibus a pellentesque sit amet porttitor eget dolor morbi. + +At quis risus sed vulputate odio ut enim. Sit amet tellus cras adipiscing enim eu turpis. Ac felis donec et odio pellentesque diam volutpat. Aliquet risus feugiat in ante metus dictum at. Sapien faucibus et molestie ac feugiat sed lectus. Commodo elit at imperdiet dui accumsan sit. Porttitor massa id neque aliquam vestibulum. Amet justo donec enim diam vulputate ut pharetra sit. Ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at augue eget. Facilisi cras fermentum odio eu feugiat pretium. Tincidunt tortor aliquam nulla facilisi. Egestas dui id ornare arcu odio ut sem. Venenatis lectus magna fringilla urna porttitor rhoncus dolor purus non. Morbi enim nunc faucibus a pellentesque sit amet porttitor eget. Vulputate ut pharetra sit amet aliquam id diam. + +Ultricies mi quis hendrerit dolor magna. Odio aenean sed adipiscing diam donec adipiscing. Odio euismod lacinia at quis. Lobortis mattis aliquam faucibus purus in massa tempor. Posuere sollicitudin aliquam ultrices sagittis orci a. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Accumsan tortor posuere ac ut consequat semper viverra nam libero. Nam at lectus urna duis convallis convallis. Augue interdum velit euismod in pellentesque. Sem fringilla ut morbi tincidunt augue. Ipsum dolor sit amet consectetur adipiscing elit pellentesque. Quisque sagittis purus sit amet volutpat consequat. + +Sed risus pretium quam vulputate dignissim. Eu feugiat pretium nibh ipsum consequat nisl vel. Sed risus ultricies tristique nulla aliquet. Leo a diam sollicitudin tempor id. Arcu bibendum at varius vel pharetra vel turpis nunc. Vitae congue eu consequat ac felis. Nulla facilisi cras fermentum odio eu feugiat pretium nibh ipsum. In nulla posuere sollicitudin aliquam ultrices sagittis orci a. Purus faucibus ornare suspendisse sed nisi lacus. Nunc pulvinar sapien et ligula ullamcorper malesuada. At ultrices mi tempus imperdiet. + +Lectus urna duis convallis convallis tellus id. Diam vulputate ut pharetra sit amet aliquam id diam maecenas. Nisi scelerisque eu ultrices vitae auctor eu augue. Netus et malesuada fames ac turpis egestas. Aliquam purus sit amet luctus venenatis lectus magna fringilla urna. Quisque id diam vel quam elementum pulvinar etiam non quam. Habitasse platea dictumst vestibulum rhoncus est. Integer vitae justo eget magna fermentum iaculis eu. Etiam non quam lacus suspendisse faucibus interdum posuere lorem ipsum. Porttitor lacus luctus accumsan tortor posuere ac ut. At in tellus integer feugiat scelerisque varius morbi enim nunc. Pulvinar neque laoreet suspendisse interdum consectetur. + +Consectetur lorem donec massa sapien faucibus. Ac feugiat sed lectus vestibulum mattis. Fusce ut placerat orci nulla pellentesque dignissim enim. Cras tincidunt lobortis feugiat vivamus at augue eget arcu dictum. Hac habitasse platea dictumst quisque sagittis purus. Id diam maecenas ultricies mi eget mauris pharetra. Bibendum ut tristique et egestas quis ipsum. Arcu dictum varius duis at consectetur lorem. Id velit ut tortor pretium viverra suspendisse potenti. Dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim cras. Nisi vitae suscipit tellus mauris a diam maecenas sed. Sollicitudin aliquam ultrices sagittis orci a scelerisque. Quis eleifend quam adipiscing vitae proin sagittis nisl rhoncus mattis. Id eu nisl nunc mi ipsum faucibus vitae. Euismod in pellentesque massa placerat duis. Tortor condimentum lacinia quis vel eros donec ac. + +Rutrum tellus pellentesque eu tincidunt tortor aliquam nulla facilisi cras. In fermentum posuere urna nec. Id faucibus nisl tincidunt eget nullam non nisi est sit. Dictum sit amet justo donec. Facilisis gravida neque convallis a cras. Aenean vel elit scelerisque mauris pellentesque pulvinar. Quam nulla porttitor massa id neque aliquam. Bibendum ut tristique et egestas. Bibendum at varius vel pharetra vel turpis nunc eget lorem. Ornare lectus sit amet est placerat in egestas erat. In tellus integer feugiat scelerisque varius morbi enim nunc. Felis donec et odio pellentesque diam volutpat commodo sed. Malesuada fames ac turpis egestas integer eget aliquet. Eros in cursus turpis massa tincidunt dui ut. Consectetur adipiscing elit pellentesque habitant morbi. Enim ut sem viverra aliquet eget sit amet tellus. + +Egestas quis ipsum suspendisse ultrices gravida dictum fusce. Vulputate odio ut enim blandit. Proin fermentum leo vel orci porta non pulvinar neque. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Mauris rhoncus aenean vel elit scelerisque mauris. Egestas pretium aenean pharetra magna ac. Ipsum a arcu cursus vitae congue. Feugiat nibh sed pulvinar proin. Et sollicitudin ac orci phasellus egestas tellus rutrum tellus. Euismod in pellentesque massa placerat duis ultricies lacus sed. Id semper risus in hendrerit gravida rutrum quisque. Lectus quam id leo in vitae turpis massa sed elementum. Enim nulla aliquet porttitor lacus luctus accumsan tortor posuere. + +Diam vel quam elementum pulvinar etiam non quam lacus. Risus at ultrices mi tempus. Blandit massa enim nec dui. Vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor posuere. Duis ultricies lacus sed turpis tincidunt id aliquet. Faucibus et molestie ac feugiat. In est ante in nibh mauris cursus mattis molestie. Risus pretium quam vulputate dignissim suspendisse in est. Velit ut tortor pretium viverra suspendisse potenti. Eleifend quam adipiscing vitae proin sagittis nisl rhoncus mattis. Pretium lectus quam id leo in vitae turpis massa sed. Facilisis leo vel fringilla est ullamcorper eget nulla facilisi. Penatibus et magnis dis parturient montes nascetur ridiculus mus. Ipsum dolor sit amet consectetur. + +Sit amet consectetur adipiscing elit. A pellentesque sit amet porttitor. Ac tincidunt vitae semper quis. Turpis nunc eget lorem dolor sed. Amet aliquam id diam maecenas ultricies. Fermentum et sollicitudin ac orci. Elementum integer enim neque volutpat ac tincidunt vitae semper quis. Sagittis aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc. Odio aenean sed adipiscing diam donec adipiscing. Felis donec et odio pellentesque. Maecenas volutpat blandit aliquam etiam erat velit scelerisque in. At tellus at urna condimentum mattis pellentesque id nibh tortor. Risus pretium quam vulputate dignissim suspendisse in est. Dui vivamus arcu felis bibendum ut tristique et egestas quis. Id diam maecenas ultricies mi eget mauris pharetra et. Adipiscing elit ut aliquam purus sit. Urna condimentum mattis pellentesque id nibh. Ultrices gravida dictum fusce ut. Facilisis gravida neque convallis a. Leo integer malesuada nunc vel risus commodo viverra maecenas. + +Aliquet risus feugiat in ante metus. Vel risus commodo viverra maecenas accumsan lacus. Libero enim sed faucibus turpis in eu mi. Ac ut consequat semper viverra nam libero. Ut ornare lectus sit amet est. Tellus orci ac auctor augue mauris augue neque. Dui faucibus in ornare quam viverra. Dolor sit amet consectetur adipiscing elit duis tristique sollicitudin. Ultricies mi eget mauris pharetra et ultrices neque. Id neque aliquam vestibulum morbi. Consequat id porta nibh venenatis cras sed felis. Massa tincidunt nunc pulvinar sapien. Ipsum suspendisse ultrices gravida dictum. At consectetur lorem donec massa. Sit amet aliquam id diam. Hendrerit gravida rutrum quisque non. Nam aliquam sem et tortor consequat id. + +Pulvinar elementum integer enim neque volutpat ac tincidunt. Sapien eget mi proin sed libero enim sed faucibus. Imperdiet massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada. Luctus accumsan tortor posuere ac ut. Amet nulla facilisi morbi tempus iaculis urna id volutpat lacus. Urna molestie at elementum eu facilisis sed odio morbi. Congue nisi vitae suscipit tellus mauris a diam maecenas sed. Nisl nisi scelerisque eu ultrices. Amet aliquam id diam maecenas ultricies. Sit amet consectetur adipiscing elit ut. Ut pharetra sit amet aliquam id diam. Non enim praesent elementum facilisis leo vel fringilla est ullamcorper. Dui faucibus in ornare quam viverra orci sagittis. Sed velit dignissim sodales ut eu sem integer. Quisque sagittis purus sit amet volutpat consequat mauris nunc congue. + +Fringilla est ullamcorper eget nulla facilisi etiam dignissim diam. Egestas quis ipsum suspendisse ultrices. Ut ornare lectus sit amet est placerat in egestas. Massa tempor nec feugiat nisl pretium fusce id. Fames ac turpis egestas maecenas pharetra convallis. Euismod quis viverra nibh cras pulvinar mattis nunc. Ipsum dolor sit amet consectetur adipiscing elit ut. Sit amet tellus cras adipiscing enim eu turpis egestas. Sit amet commodo nulla facilisi nullam vehicula ipsum a arcu. Amet nulla facilisi morbi tempus iaculis urna id volutpat lacus. Eu lobortis elementum nibh tellus molestie nunc non blandit massa. + +Nunc consequat interdum varius sit amet. Ornare suspendisse sed nisi lacus sed viverra. Nisi vitae suscipit tellus mauris a diam maecenas. A scelerisque purus semper eget. Duis convallis convallis tellus id interdum. Tincidunt tortor aliquam nulla facilisi cras. Curabitur vitae nunc sed velit. Fames ac turpis egestas integer eget aliquet nibh praesent tristique. Turpis cursus in hac habitasse platea dictumst quisque sagittis. Pellentesque diam volutpat commodo sed egestas. Ut etiam sit amet nisl purus. Non tellus orci ac auctor augue mauris augue. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at augue. Pretium viverra suspendisse potenti nullam ac. Amet nulla facilisi morbi tempus iaculis urna id volutpat. + +In dictum non consectetur a erat. Ultrices eros in cursus turpis massa tincidunt dui ut. In egestas erat imperdiet sed euismod. Varius duis at consectetur lorem. Faucibus in ornare quam viverra orci. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi cras fermentum. Proin nibh nisl condimentum id venenatis a. Semper quis lectus nulla at volutpat diam ut venenatis tellus. Porttitor eget dolor morbi non arcu risus quis varius quam. Sapien et ligula ullamcorper malesuada proin libero nunc consequat. Sit amet nisl purus in mollis. Enim sit amet venenatis urna cursus eget nunc scelerisque viverra. Viverra orci sagittis eu volutpat odio. At volutpat diam ut venenatis tellus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Vestibulum mattis ullamcorper velit sed ullamcorper morbi tincidunt ornare. + +Volutpat maecenas volutpat blandit aliquam etiam. Pretium viverra suspendisse potenti nullam ac tortor vitae purus. Dignissim convallis aenean et tortor at risus viverra adipiscing at. Sem viverra aliquet eget sit amet tellus cras adipiscing. Diam ut venenatis tellus in metus vulputate eu. Mattis ullamcorper velit sed ullamcorper morbi tincidunt ornare massa eget. Orci ac auctor augue mauris augue. Tellus mauris a diam maecenas sed enim ut sem. Vel orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Tincidunt lobortis feugiat vivamus at. + +Vitae turpis massa sed elementum. Commodo quis imperdiet massa tincidunt. At auctor urna nunc id cursus metus aliquam. Velit sed ullamcorper morbi tincidunt ornare massa. Vitae semper quis lectus nulla at volutpat diam. Fermentum et sollicitudin ac orci phasellus. Rutrum quisque non tellus orci ac. Leo duis ut diam quam nulla porttitor massa id. Euismod in pellentesque massa placerat. Quisque sagittis purus sit amet volutpat consequat mauris. Aenean euismod elementum nisi quis eleifend quam. Elementum sagittis vitae et leo duis ut diam quam nulla. + +Nulla pharetra diam sit amet nisl suscipit adipiscing. Fringilla est ullamcorper eget nulla facilisi etiam dignissim diam quis. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec. Ut ornare lectus sit amet est placerat in egestas. In nibh mauris cursus mattis. Volutpat odio facilisis mauris sit amet massa vitae tortor condimentum. Nunc faucibus a pellentesque sit. Mauris cursus mattis molestie a iaculis at erat. Ut tortor pretium viverra suspendisse potenti nullam ac tortor. Enim eu turpis egestas pretium aenean pharetra magna. Egestas fringilla phasellus faucibus scelerisque eleifend donec. Eleifend donec pretium vulputate sapien nec sagittis aliquam malesuada bibendum. Et netus et malesuada fames ac. + +Velit laoreet id donec ultrices tincidunt arcu non sodales neque. Sit amet dictum sit amet justo donec enim. Suspendisse in est ante in. Vitae auctor eu augue ut lectus. Bibendum arcu vitae elementum curabitur vitae nunc sed. Scelerisque eleifend donec pretium vulputate sapien nec. Odio morbi quis commodo odio aenean sed adipiscing diam donec. Fames ac turpis egestas maecenas pharetra convallis posuere morbi leo. Vivamus arcu felis bibendum ut. Scelerisque fermentum dui faucibus in ornare quam viverra. Enim facilisis gravida neque convallis. Suspendisse faucibus interdum posuere lorem. Maecenas accumsan lacus vel facilisis. Id diam maecenas ultricies mi eget mauris pharetra et ultrices. Dui sapien eget mi proin sed libero enim sed. Praesent semper feugiat nibh sed pulvinar. Quis blandit turpis cursus in hac habitasse platea dictumst. Sollicitudin ac orci phasellus egestas. Dui ut ornare lectus sit amet est placerat in. + +At tempor commodo ullamcorper a lacus vestibulum sed arcu non. Amet mauris commodo quis imperdiet massa tincidunt. Mattis molestie a iaculis at erat pellentesque adipiscing. Semper quis lectus nulla at volutpat diam ut venenatis. Tellus in hac habitasse platea dictumst vestibulum rhoncus est pellentesque. Sed enim ut sem viverra aliquet eget sit amet tellus. Tempus imperdiet nulla malesuada pellentesque elit eget. Eget magna fermentum iaculis eu non diam phasellus. Nec tincidunt praesent semper feugiat. Nec dui nunc mattis enim ut tellus elementum sagittis vitae. Scelerisque fermentum dui faucibus in ornare quam viverra. Ultricies mi eget mauris pharetra et ultrices neque ornare aenean. Sit amet justo donec enim diam vulputate ut pharetra. Faucibus in ornare quam viverra. Eu non diam phasellus vestibulum lorem sed. In iaculis nunc sed augue lacus viverra vitae. In eu mi bibendum neque egestas congue quisque egestas diam. + +Vivamus at augue eget arcu dictum varius duis at. Sed cras ornare arcu dui vivamus arcu felis. Placerat duis ultricies lacus sed turpis tincidunt. Egestas purus viverra accumsan in nisl nisi scelerisque. Malesuada fames ac turpis egestas sed tempus urna. Dignissim convallis aenean et tortor at risus viverra adipiscing. Aliquet sagittis id consectetur purus. Amet cursus sit amet dictum sit amet justo donec. Blandit cursus risus at ultrices mi tempus imperdiet. Scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Tempor nec feugiat nisl pretium fusce id velit ut. Pellentesque id nibh tortor id aliquet. + +Massa id neque aliquam vestibulum. Euismod quis viverra nibh cras pulvinar mattis nunc sed blandit. Ac felis donec et odio. Mauris pellentesque pulvinar pellentesque habitant. Viverra nibh cras pulvinar mattis nunc sed. Pulvinar mattis nunc sed blandit libero volutpat sed cras ornare. Mi bibendum neque egestas congue quisque egestas diam in. A arcu cursus vitae congue mauris rhoncus aenean. Adipiscing diam donec adipiscing tristique. Et odio pellentesque diam volutpat commodo sed egestas egestas fringilla. In massa tempor nec feugiat nisl pretium fusce. Faucibus a pellentesque sit amet porttitor. Facilisis leo vel fringilla est ullamcorper eget. Sed odio morbi quis commodo. + +Convallis a cras semper auctor. Vel turpis nunc eget lorem dolor sed viverra ipsum. In est ante in nibh mauris cursus. Elit at imperdiet dui accumsan sit amet. Habitasse platea dictumst quisque sagittis purus sit amet. Ullamcorper sit amet risus nullam. Sed viverra tellus in hac. Sollicitudin tempor id eu nisl nunc mi ipsum faucibus. Senectus et netus et malesuada fames ac turpis egestas maecenas. Vitae auctor eu augue ut lectus arcu bibendum at varius. Nunc sed velit dignissim sodales ut. Ut diam quam nulla porttitor massa id neque. Quis imperdiet massa tincidunt nunc pulvinar sapien et ligula ullamcorper. Risus pretium quam vulputate dignissim suspendisse. In vitae turpis massa sed elementum tempus egestas sed sed. Vehicula ipsum a arcu cursus. + +Venenatis cras sed felis eget. Elementum facilisis leo vel fringilla est ullamcorper eget nulla. Eu non diam phasellus vestibulum lorem. Hac habitasse platea dictumst quisque sagittis purus sit. Venenatis cras sed felis eget velit aliquet sagittis id consectetur. Vel fringilla est ullamcorper eget nulla facilisi etiam dignissim. Sit amet porttitor eget dolor. Tortor posuere ac ut consequat semper viverra. Adipiscing elit duis tristique sollicitudin nibh sit. Ornare quam viverra orci sagittis eu volutpat odio facilisis mauris. Eu mi bibendum neque egestas. + +Nec ullamcorper sit amet risus nullam eget felis. In metus vulputate eu scelerisque felis imperdiet proin. Duis at consectetur lorem donec massa sapien. Risus nullam eget felis eget nunc lobortis mattis aliquam. Sit amet nisl suscipit adipiscing bibendum est ultricies integer. Metus vulputate eu scelerisque felis imperdiet proin fermentum leo. Massa eget egestas purus viverra accumsan in nisl. Vulputate ut pharetra sit amet aliquam. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Consectetur lorem donec massa sapien. Varius morbi enim nunc faucibus a pellentesque. + +Vulputate mi sit amet mauris commodo quis. Quis varius quam quisque id diam vel quam. Volutpat consequat mauris nunc congue nisi vitae suscipit tellus mauris. Fringilla ut morbi tincidunt augue interdum velit. Pellentesque elit ullamcorper dignissim cras tincidunt. Fames ac turpis egestas maecenas pharetra convallis posuere morbi leo. Commodo ullamcorper a lacus vestibulum sed arcu non odio euismod. Scelerisque eu ultrices vitae auctor eu augue ut lectus. Tellus elementum sagittis vitae et leo. Elementum integer enim neque volutpat ac tincidunt. Risus feugiat in ante metus dictum at tempor commodo ullamcorper. Lobortis scelerisque fermentum dui faucibus in ornare quam. + +Et ligula ullamcorper malesuada proin libero nunc. Elit pellentesque habitant morbi tristique senectus et. Imperdiet sed euismod nisi porta lorem mollis aliquam ut porttitor. Amet luctus venenatis lectus magna fringilla urna porttitor rhoncus. Eu scelerisque felis imperdiet proin. Vel pretium lectus quam id leo in vitae. Vel turpis nunc eget lorem dolor sed. Mattis enim ut tellus elementum sagittis. Ut sem nulla pharetra diam sit amet. Purus in massa tempor nec feugiat nisl pretium fusce. Id donec ultrices tincidunt arcu. Suspendisse interdum consectetur libero id faucibus nisl tincidunt. Sit amet nisl purus in mollis nunc sed id. Fringilla ut morbi tincidunt augue interdum velit euismod. Dictum sit amet justo donec enim diam. Mauris sit amet massa vitae tortor. Ut sem viverra aliquet eget. Morbi enim nunc faucibus a pellentesque sit. Elit pellentesque habitant morbi tristique. Lorem sed risus ultricies tristique nulla aliquet. + +Quisque sagittis purus sit amet. Eget mauris pharetra et ultrices neque ornare aenean euismod elementum. Lectus quam id leo in vitae turpis massa sed elementum. Nibh nisl condimentum id venenatis a condimentum vitae sapien. Dignissim diam quis enim lobortis scelerisque fermentum dui. Amet venenatis urna cursus eget nunc scelerisque viverra mauris in. Euismod quis viverra nibh cras pulvinar mattis nunc sed. Elit duis tristique sollicitudin nibh sit. Enim neque volutpat ac tincidunt. Donec ultrices tincidunt arcu non sodales. + +Lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Sapien faucibus et molestie ac. Risus sed vulputate odio ut enim blandit volutpat. Id diam maecenas ultricies mi eget mauris. Condimentum id venenatis a condimentum vitae. Orci phasellus egestas tellus rutrum tellus pellentesque eu. Urna molestie at elementum eu. Elementum nibh tellus molestie nunc. Viverra mauris in aliquam sem fringilla ut morbi tincidunt. Mattis ullamcorper velit sed ullamcorper morbi tincidunt. Nisl purus in mollis nunc sed id semper risus. Posuere ac ut consequat semper viverra. Nisl nisi scelerisque eu ultrices vitae auctor eu augue ut. At risus viverra adipiscing at in tellus integer. Imperdiet massa tincidunt nunc pulvinar sapien. Habitasse platea dictumst quisque sagittis purus sit amet volutpat consequat. Ultricies lacus sed turpis tincidunt id. Consequat mauris nunc congue nisi. Tempor orci eu lobortis elementum nibh. Neque sodales ut etiam sit. + +At elementum eu facilisis sed odio morbi quis commodo odio. Urna porttitor rhoncus dolor purus. Ullamcorper velit sed ullamcorper morbi. In nibh mauris cursus mattis molestie a iaculis at. Nascetur ridiculus mus mauris vitae ultricies. Dolor sit amet consectetur adipiscing elit. Quam lacus suspendisse faucibus interdum posuere lorem ipsum. Bibendum arcu vitae elementum curabitur. Amet mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan. Nunc scelerisque viverra mauris in aliquam sem fringilla ut morbi. + +Iaculis urna id volutpat lacus laoreet non curabitur. Velit scelerisque in dictum non. Etiam erat velit scelerisque in dictum non consectetur a. Vulputate sapien nec sagittis aliquam malesuada bibendum. Semper eget duis at tellus. Ipsum a arcu cursus vitae congue mauris. Porttitor eget dolor morbi non arcu risus. Faucibus turpis in eu mi. Feugiat sed lectus vestibulum mattis ullamcorper. Cras semper auctor neque vitae tempus. Ac orci phasellus egestas tellus rutrum tellus pellentesque. Amet facilisis magna etiam tempor orci eu. Arcu cursus vitae congue mauris rhoncus aenean vel elit scelerisque. Aliquam ultrices sagittis orci a scelerisque purus semper eget. Tellus orci ac auctor augue mauris. Sed elementum tempus egestas sed sed risus pretium quam. Adipiscing diam donec adipiscing tristique risus nec feugiat. Turpis massa sed elementum tempus egestas sed sed risus pretium. Venenatis lectus magna fringilla urna. Dignissim convallis aenean et tortor at risus viverra. + +Integer feugiat scelerisque varius morbi. Donec et odio pellentesque diam. Erat imperdiet sed euismod nisi porta. Dui vivamus arcu felis bibendum ut tristique et. Lacinia quis vel eros donec. Dui nunc mattis enim ut tellus elementum sagittis vitae. Gravida arcu ac tortor dignissim convallis aenean et tortor at. Ante metus dictum at tempor commodo. Dictum at tempor commodo ullamcorper a lacus. Faucibus pulvinar elementum integer enim neque volutpat ac. A condimentum vitae sapien pellentesque habitant morbi tristique senectus. Quis auctor elit sed vulputate mi sit amet. Lacus laoreet non curabitur gravida arcu. Nullam vehicula ipsum a arcu. Pulvinar etiam non quam lacus suspendisse faucibus. Fames ac turpis egestas integer. + +Aenean pharetra magna ac placerat vestibulum lectus mauris ultrices eros. Sit amet cursus sit amet dictum. Ultrices tincidunt arcu non sodales. Feugiat nisl pretium fusce id. Nisl rhoncus mattis rhoncus urna neque viverra justo nec. Egestas sed sed risus pretium. Etiam erat velit scelerisque in dictum. Felis imperdiet proin fermentum leo. Pretium fusce id velit ut tortor. Cursus euismod quis viverra nibh. Mauris in aliquam sem fringilla ut. Et ultrices neque ornare aenean euismod elementum nisi quis eleifend. Magna eget est lorem ipsum dolor sit amet consectetur adipiscing. Fringilla ut morbi tincidunt augue interdum velit euismod in pellentesque. Nunc faucibus a pellentesque sit amet porttitor eget dolor. + +Commodo viverra maecenas accumsan lacus. Nulla aliquet enim tortor at auctor urna nunc id. A arcu cursus vitae congue mauris rhoncus aenean vel. Ut sem nulla pharetra diam sit amet nisl suscipit. Turpis cursus in hac habitasse platea. Aenean sed adipiscing diam donec adipiscing tristique risus nec feugiat. Tempor nec feugiat nisl pretium fusce id velit. Odio aenean sed adipiscing diam donec adipiscing tristique risus nec. Diam maecenas sed enim ut sem viverra. Consectetur adipiscing elit duis tristique sollicitudin nibh sit amet commodo. + +Urna duis convallis convallis tellus id interdum velit. Vitae tempus quam pellentesque nec nam aliquam. Amet nulla facilisi morbi tempus iaculis urna id. Tristique magna sit amet purus. Eget sit amet tellus cras adipiscing enim eu turpis egestas. Enim nunc faucibus a pellentesque sit amet. Nulla malesuada pellentesque elit eget gravida cum sociis natoque penatibus. Enim praesent elementum facilisis leo vel fringilla est. Libero enim sed faucibus turpis. Sagittis vitae et leo duis ut diam. Bibendum ut tristique et egestas quis. Aliquam id diam maecenas ultricies mi eget. Cras sed felis eget velit aliquet sagittis. Scelerisque varius morbi enim nunc faucibus a pellentesque. Lorem ipsum dolor sit amet consectetur adipiscing. Nunc mi ipsum faucibus vitae aliquet nec. Nibh ipsum consequat nisl vel. + +Facilisis leo vel fringilla est ullamcorper eget. Orci porta non pulvinar neque laoreet suspendisse. Volutpat sed cras ornare arcu dui vivamus. Commodo odio aenean sed adipiscing. Arcu cursus euismod quis viverra nibh cras pulvinar. Vestibulum rhoncus est pellentesque elit. Duis ut diam quam nulla porttitor massa id neque. Eget aliquet nibh praesent tristique magna sit amet purus. Nisi lacus sed viverra tellus in hac habitasse. Vestibulum lectus mauris ultrices eros in cursus. Tristique senectus et netus et malesuada fames ac turpis. Purus sit amet volutpat consequat mauris. Lacinia quis vel eros donec ac odio tempor orci. Libero enim sed faucibus turpis. Suspendisse potenti nullam ac tortor. Sodales ut etiam sit amet nisl. Viverra aliquet eget sit amet. Orci porta non pulvinar neque laoreet suspendisse interdum consectetur. Egestas sed sed risus pretium quam vulputate dignissim. Enim sed faucibus turpis in eu. + +Bibendum neque egestas congue quisque egestas diam in arcu. Donec enim diam vulputate ut pharetra sit amet aliquam. Nullam eget felis eget nunc lobortis mattis aliquam faucibus purus. Purus ut faucibus pulvinar elementum integer enim neque volutpat. Eu turpis egestas pretium aenean. Nunc sed velit dignissim sodales. Nunc pulvinar sapien et ligula. Pulvinar mattis nunc sed blandit libero volutpat sed. In hendrerit gravida rutrum quisque non tellus orci ac. A cras semper auctor neque vitae tempus. Tristique senectus et netus et. Quisque non tellus orci ac auctor. Sit amet risus nullam eget felis. Sit amet massa vitae tortor. Molestie ac feugiat sed lectus vestibulum mattis ullamcorper velit sed. Risus at ultrices mi tempus imperdiet nulla malesuada. Faucibus et molestie ac feugiat sed lectus vestibulum. Vitae et leo duis ut. Eget dolor morbi non arcu risus. Condimentum vitae sapien pellentesque habitant morbi tristique senectus. + +Fusce ut placerat orci nulla pellentesque dignissim enim. Nec dui nunc mattis enim ut tellus elementum. Placerat orci nulla pellentesque dignissim enim sit amet venenatis. Erat pellentesque adipiscing commodo elit at. Amet porttitor eget dolor morbi. Elementum tempus egestas sed sed risus pretium quam vulputate dignissim. Id consectetur purus ut faucibus pulvinar elementum integer enim. Egestas quis ipsum suspendisse ultrices gravida dictum fusce ut. Consequat mauris nunc congue nisi vitae suscipit tellus mauris a. Felis donec et odio pellentesque. Aliquet nec ullamcorper sit amet risus nullam eget. Amet nulla facilisi morbi tempus iaculis. + +Vitae tempus quam pellentesque nec nam. Fermentum leo vel orci porta non. A erat nam at lectus urna duis. Tortor vitae purus faucibus ornare suspendisse sed. Consequat semper viverra nam libero justo. Ultrices eros in cursus turpis massa tincidunt dui ut. Imperdiet massa tincidunt nunc pulvinar sapien et ligula ullamcorper. Aliquam purus sit amet luctus venenatis lectus. Eget felis eget nunc lobortis mattis aliquam. Semper risus in hendrerit gravida. Neque sodales ut etiam sit. In nisl nisi scelerisque eu ultrices. Elementum curabitur vitae nunc sed velit dignissim sodales ut eu. Sem fringilla ut morbi tincidunt. + +Quis vel eros donec ac odio tempor orci. Pretium quam vulputate dignissim suspendisse in est ante. Sit amet justo donec enim. Diam vulputate ut pharetra sit amet aliquam. Ultrices vitae auctor eu augue. Accumsan tortor posuere ac ut consequat semper viverra. Gravida dictum fusce ut placerat orci. Lacus sed viverra tellus in hac habitasse platea dictumst. Consequat semper viverra nam libero justo laoreet sit amet cursus. At tempor commodo ullamcorper a lacus vestibulum sed arcu non. Placerat duis ultricies lacus sed. Dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim cras tincidunt. Non sodales neque sodales ut etiam sit amet. Interdum velit euismod in pellentesque massa placerat. Egestas sed sed risus pretium quam vulputate dignissim suspendisse. Vitae congue mauris rhoncus aenean vel elit. Elementum facilisis leo vel fringilla est ullamcorper eget nulla facilisi. Pretium lectus quam id leo. + +Congue nisi vitae suscipit tellus mauris a diam. Nunc aliquet bibendum enim facilisis gravida. Non enim praesent elementum facilisis leo vel fringilla est. Ut porttitor leo a diam sollicitudin tempor id. Mauris a diam maecenas sed enim ut sem. Posuere morbi leo urna molestie. Commodo elit at imperdiet dui accumsan sit. Sed tempus urna et pharetra pharetra massa massa. Arcu risus quis varius quam quisque id. Enim eu turpis egestas pretium. Justo laoreet sit amet cursus sit amet. + +Senectus et netus et malesuada fames ac turpis egestas. Id faucibus nisl tincidunt eget nullam non nisi est. Tincidunt eget nullam non nisi. Sociis natoque penatibus et magnis dis. Felis eget velit aliquet sagittis. Accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Et netus et malesuada fames ac turpis egestas maecenas pharetra. Dictumst quisque sagittis purus sit amet. Libero enim sed faucibus turpis in eu mi bibendum neque. Aliquam ut porttitor leo a diam sollicitudin tempor id. Porttitor lacus luctus accumsan tortor posuere ac ut consequat semper. Turpis cursus in hac habitasse platea dictumst. Sed turpis tincidunt id aliquet risus feugiat in. Dolor morbi non arcu risus quis varius quam quisque id. Vulputate mi sit amet mauris. Morbi blandit cursus risus at ultrices mi tempus. Suspendisse interdum consectetur libero id faucibus nisl. + +Quisque egestas diam in arcu cursus. Morbi tristique senectus et netus et malesuada fames. Sed enim ut sem viverra aliquet eget sit amet tellus. Tortor id aliquet lectus proin nibh. Ipsum dolor sit amet consectetur adipiscing. Nullam vehicula ipsum a arcu cursus vitae. Quis vel eros donec ac odio tempor orci dapibus. Enim facilisis gravida neque convallis a cras semper auctor neque. Est ullamcorper eget nulla facilisi. Arcu non odio euismod lacinia at quis. Eu ultrices vitae auctor eu augue ut lectus arcu. Vulputate mi sit amet mauris commodo quis. Nunc congue nisi vitae suscipit. Egestas dui id ornare arcu odio ut. Placerat orci nulla pellentesque dignissim enim sit amet. Risus nullam eget felis eget. Tempor nec feugiat nisl pretium fusce. Sit amet consectetur adipiscing elit duis tristique. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Pellentesque adipiscing commodo elit at imperdiet dui accumsan. + +Nunc non blandit massa enim nec dui nunc mattis. Leo duis ut diam quam nulla porttitor. Pharetra diam sit amet nisl suscipit adipiscing bibendum est ultricies. Faucibus turpis in eu mi bibendum neque. Urna neque viverra justo nec ultrices dui. Non sodales neque sodales ut etiam sit amet nisl purus. Ut tristique et egestas quis. Justo laoreet sit amet cursus sit amet. Quis hendrerit dolor magna eget est. Consequat interdum varius sit amet mattis vulputate enim. Ac placerat vestibulum lectus mauris ultrices eros in cursus. Ac turpis egestas maecenas pharetra. Eleifend donec pretium vulputate sapien nec sagittis aliquam malesuada. Placerat in egestas erat imperdiet. Tempor orci dapibus ultrices in iaculis nunc sed augue. Habitant morbi tristique senectus et netus et malesuada fames. Proin libero nunc consequat interdum. Malesuada fames ac turpis egestas sed tempus urna et pharetra. + +Turpis egestas sed tempus urna et. Ut eu sem integer vitae justo eget magna fermentum. Pretium lectus quam id leo. Ut etiam sit amet nisl purus in mollis nunc. Ac auctor augue mauris augue neque gravida in fermentum. Gravida quis blandit turpis cursus. Facilisis magna etiam tempor orci eu lobortis elementum nibh. Congue nisi vitae suscipit tellus mauris a diam maecenas. Donec et odio pellentesque diam volutpat commodo. Purus gravida quis blandit turpis. Tristique senectus et netus et malesuada fames ac turpis egestas. Enim facilisis gravida neque convallis a cras semper auctor. Iaculis nunc sed augue lacus viverra. Habitant morbi tristique senectus et netus et malesuada. Imperdiet nulla malesuada pellentesque elit. Pellentesque id nibh tortor id aliquet lectus. Montes nascetur ridiculus mus mauris vitae ultricies. Velit scelerisque in dictum non. + +Faucibus scelerisque eleifend donec pretium vulputate sapien nec. Massa enim nec dui nunc. Tincidunt eget nullam non nisi. Non odio euismod lacinia at quis risus sed. Cras tincidunt lobortis feugiat vivamus at augue. Pretium quam vulputate dignissim suspendisse. Cursus eget nunc scelerisque viverra mauris in aliquam. Egestas quis ipsum suspendisse ultrices. Velit egestas dui id ornare arcu odio ut sem. Adipiscing diam donec adipiscing tristique risus. Odio facilisis mauris sit amet massa vitae tortor condimentum lacinia. Viverra aliquet eget sit amet tellus cras. A cras semper auctor neque vitae tempus quam. Sociis natoque penatibus et magnis dis parturient montes. A condimentum vitae sapien pellentesque habitant. + +Enim ut tellus elementum sagittis. Amet nisl suscipit adipiscing bibendum. Posuere urna nec tincidunt praesent semper feugiat nibh sed. Mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus et netus. Malesuada fames ac turpis egestas maecenas pharetra convallis posuere. Etiam dignissim diam quis enim lobortis scelerisque fermentum dui. Erat pellentesque adipiscing commodo elit at imperdiet dui accumsan. Etiam sit amet nisl purus in mollis. Nibh praesent tristique magna sit amet. Fusce id velit ut tortor pretium. Semper quis lectus nulla at volutpat diam. Volutpat lacus laoreet non curabitur gravida arcu ac tortor. Non tellus orci ac auctor augue. Erat imperdiet sed euismod nisi porta. Phasellus vestibulum lorem sed risus ultricies tristique. Id nibh tortor id aliquet lectus. Mi sit amet mauris commodo quis imperdiet massa. In mollis nunc sed id semper risus. Fusce ut placerat orci nulla pellentesque. Donec enim diam vulputate ut. + +Diam maecenas sed enim ut sem viverra. Aliquam ultrices sagittis orci a. Donec enim diam vulputate ut pharetra. Id semper risus in hendrerit gravida rutrum quisque. Urna id volutpat lacus laoreet non. Elementum eu facilisis sed odio morbi quis. Vestibulum sed arcu non odio euismod lacinia at quis risus. Quis risus sed vulputate odio ut enim blandit volutpat maecenas. Interdum velit laoreet id donec ultrices. Lacus vestibulum sed arcu non. Arcu odio ut sem nulla pharetra diam sit amet nisl. + +Lectus magna fringilla urna porttitor rhoncus. Etiam erat velit scelerisque in dictum non consectetur. Fusce ut placerat orci nulla. Pharetra convallis posuere morbi leo urna molestie. Dui faucibus in ornare quam viverra orci sagittis. Mi sit amet mauris commodo quis imperdiet. Semper feugiat nibh sed pulvinar proin gravida hendrerit. Elit ullamcorper dignissim cras tincidunt lobortis. Quisque egestas diam in arcu cursus euismod quis viverra nibh. Ornare arcu odio ut sem nulla pharetra diam. Ultrices gravida dictum fusce ut placerat orci. Purus gravida quis blandit turpis. Tristique nulla aliquet enim tortor at. Ut venenatis tellus in metus vulputate eu scelerisque felis imperdiet. Potenti nullam ac tortor vitae purus. Urna molestie at elementum eu facilisis sed. Sit amet aliquam id diam maecenas ultricies mi eget. Non consectetur a erat nam. + +Arcu felis bibendum ut tristique et egestas quis ipsum. Tincidunt dui ut ornare lectus sit. Massa placerat duis ultricies lacus sed. Euismod nisi porta lorem mollis aliquam ut porttitor. Leo integer malesuada nunc vel risus commodo viverra. Euismod elementum nisi quis eleifend. Porttitor massa id neque aliquam. Massa id neque aliquam vestibulum morbi. Sed velit dignissim sodales ut. Faucibus vitae aliquet nec ullamcorper sit. Accumsan lacus vel facilisis volutpat est velit egestas dui id. + +Auctor eu augue ut lectus arcu bibendum at varius vel. Vulputate dignissim suspendisse in est ante. Nibh tellus molestie nunc non blandit massa. Mauris nunc congue nisi vitae suscipit. Ipsum dolor sit amet consectetur adipiscing elit duis tristique. Aliquam ultrices sagittis orci a scelerisque purus semper. Nisi scelerisque eu ultrices vitae auctor eu augue. Phasellus vestibulum lorem sed risus. Placerat in egestas erat imperdiet. Congue quisque egestas diam in. + +Semper viverra nam libero justo laoreet sit amet. Quis commodo odio aenean sed adipiscing diam. Id leo in vitae turpis massa sed elementum tempus. Amet luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Eros donec ac odio tempor orci dapibus ultrices. Dui vivamus arcu felis bibendum ut tristique et egestas quis. Sapien faucibus et molestie ac feugiat sed. Magna sit amet purus gravida. Feugiat nibh sed pulvinar proin gravida hendrerit. Amet consectetur adipiscing elit pellentesque habitant. Risus commodo viverra maecenas accumsan lacus vel. Etiam non quam lacus suspendisse. Proin nibh nisl condimentum id venenatis a condimentum. Libero justo laoreet sit amet cursus sit amet dictum. Diam donec adipiscing tristique risus nec. Orci eu lobortis elementum nibh tellus molestie nunc non. + +Quis lectus nulla at volutpat diam. Tempus egestas sed sed risus pretium. Et sollicitudin ac orci phasellus. Egestas fringilla phasellus faucibus scelerisque eleifend donec pretium vulputate. Nisi lacus sed viverra tellus in hac habitasse. Diam ut venenatis tellus in metus vulputate. Integer quis auctor elit sed vulputate. Consectetur adipiscing elit pellentesque habitant morbi. Commodo ullamcorper a lacus vestibulum sed arcu. Faucibus turpis in eu mi bibendum. Imperdiet sed euismod nisi porta. Porttitor lacus luctus accumsan tortor posuere ac ut consequat. Lobortis scelerisque fermentum dui faucibus in ornare quam. Id aliquet lectus proin nibh nisl condimentum. Etiam non quam lacus suspendisse. Viverra justo nec ultrices dui. Lectus quam id leo in vitae. Aliquet bibendum enim facilisis gravida neque. + +Consectetur lorem donec massa sapien faucibus et molestie ac feugiat. Lectus vestibulum mattis ullamcorper velit sed. Egestas quis ipsum suspendisse ultrices gravida dictum fusce ut placerat. Senectus et netus et malesuada fames ac turpis. Non nisi est sit amet facilisis magna etiam tempor orci. Amet risus nullam eget felis eget nunc. Amet dictum sit amet justo donec enim diam. Ut lectus arcu bibendum at varius vel pharetra vel. Mauris augue neque gravida in fermentum. Turpis egestas integer eget aliquet. Pulvinar neque laoreet suspendisse interdum consectetur libero id faucibus. Vehicula ipsum a arcu cursus vitae congue mauris rhoncus. Sagittis aliquam malesuada bibendum arcu. Arcu felis bibendum ut tristique et egestas quis. Dui sapien eget mi proin sed libero. Consectetur libero id faucibus nisl. Facilisi morbi tempus iaculis urna id volutpat lacus. + +Varius duis at consectetur lorem donec. Ullamcorper morbi tincidunt ornare massa eget. Suscipit adipiscing bibendum est ultricies integer quis. Facilisis leo vel fringilla est ullamcorper eget. Tellus elementum sagittis vitae et leo duis ut. Purus sit amet luctus venenatis lectus magna. Rutrum tellus pellentesque eu tincidunt tortor aliquam. Auctor augue mauris augue neque gravida in fermentum et. Dignissim sodales ut eu sem integer vitae justo eget. Odio eu feugiat pretium nibh. + +Id aliquet risus feugiat in ante metus dictum. Amet luctus venenatis lectus magna fringilla urna porttitor rhoncus. Viverra vitae congue eu consequat. Lectus quam id leo in. Varius quam quisque id diam vel quam. Vitae tempus quam pellentesque nec nam aliquam sem. Sed viverra ipsum nunc aliquet. Dignissim suspendisse in est ante in nibh mauris cursus. Risus ultricies tristique nulla aliquet enim. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Nisi quis eleifend quam adipiscing vitae proin sagittis nisl. Molestie at elementum eu facilisis sed odio morbi quis commodo. + +Eleifend donec pretium vulputate sapien nec sagittis aliquam malesuada bibendum. Consequat interdum varius sit amet mattis. Ullamcorper a lacus vestibulum sed arcu. Faucibus pulvinar elementum integer enim neque. Risus quis varius quam quisque. Sapien pellentesque habitant morbi tristique senectus et netus. Faucibus nisl tincidunt eget nullam. Quis imperdiet massa tincidunt nunc pulvinar sapien et ligula ullamcorper. Mauris vitae ultricies leo integer malesuada nunc. Facilisis mauris sit amet massa vitae tortor condimentum lacinia. Malesuada fames ac turpis egestas integer eget. Tempor id eu nisl nunc mi. Scelerisque varius morbi enim nunc faucibus. Condimentum id venenatis a condimentum vitae sapien pellentesque. Nisi scelerisque eu ultrices vitae auctor. Urna cursus eget nunc scelerisque viverra mauris. Non blandit massa enim nec dui nunc. Nascetur ridiculus mus mauris vitae ultricies. A iaculis at erat pellentesque adipiscing commodo elit at. Sagittis aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc. + +Morbi tristique senectus et netus et. Massa sapien faucibus et molestie ac feugiat sed lectus. Nullam vehicula ipsum a arcu cursus vitae congue mauris rhoncus. Velit euismod in pellentesque massa placerat duis. Eget sit amet tellus cras adipiscing. Urna nunc id cursus metus aliquam eleifend mi in nulla. Morbi leo urna molestie at. Et ligula ullamcorper malesuada proin libero nunc consequat interdum varius. Convallis convallis tellus id interdum velit laoreet. Fames ac turpis egestas maecenas pharetra convallis. Velit sed ullamcorper morbi tincidunt. Neque laoreet suspendisse interdum consectetur libero id faucibus nisl. Eu feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Aenean et tortor at risus viverra. Sit amet est placerat in egestas erat imperdiet. Nisi quis eleifend quam adipiscing vitae proin. Scelerisque purus semper eget duis at tellus at. Mattis ullamcorper velit sed ullamcorper morbi tincidunt ornare. Sed euismod nisi porta lorem. Morbi tincidunt ornare massa eget egestas purus viverra. + +Ipsum dolor sit amet consectetur. Aenean pharetra magna ac placerat vestibulum lectus. Massa tincidunt nunc pulvinar sapien et ligula. Faucibus interdum posuere lorem ipsum dolor. Arcu dictum varius duis at. At urna condimentum mattis pellentesque id nibh tortor id. Tincidunt tortor aliquam nulla facilisi. Elementum curabitur vitae nunc sed velit. Sit amet porttitor eget dolor. At elementum eu facilisis sed odio. Lorem dolor sed viverra ipsum nunc aliquet. Dolor purus non enim praesent elementum facilisis leo vel. Neque sodales ut etiam sit amet nisl purus in mollis. Magna etiam tempor orci eu lobortis elementum nibh tellus. Consectetur adipiscing elit duis tristique sollicitudin nibh sit amet. Sit amet consectetur adipiscing elit duis tristique. Ultrices eros in cursus turpis massa tincidunt. Dignissim enim sit amet venenatis. Ipsum dolor sit amet consectetur adipiscing elit pellentesque habitant morbi. Dignissim sodales ut eu sem integer vitae justo. + +Odio ut enim blandit volutpat maecenas volutpat. Suspendisse faucibus interdum posuere lorem ipsum. Vitae tempus quam pellentesque nec nam aliquam sem. Bibendum neque egestas congue quisque egestas diam in arcu. Posuere morbi leo urna molestie at elementum. Pharetra massa massa ultricies mi quis hendrerit dolor magna eget. Volutpat consequat mauris nunc congue nisi. Lacinia at quis risus sed vulputate odio ut enim blandit. Ultrices dui sapien eget mi proin sed. Urna porttitor rhoncus dolor purus. Suspendisse faucibus interdum posuere lorem ipsum dolor sit amet. Sit amet mattis vulputate enim. Sit amet tellus cras adipiscing enim eu turpis egestas. Velit scelerisque in dictum non. Sem nulla pharetra diam sit amet nisl suscipit adipiscing. + +Nec ullamcorper sit amet risus nullam eget felis. Quis blandit turpis cursus in hac. Nibh ipsum consequat nisl vel pretium. Erat nam at lectus urna duis convallis. Odio aenean sed adipiscing diam donec adipiscing tristique risus nec. Gravida arcu ac tortor dignissim. Semper risus in hendrerit gravida. Id neque aliquam vestibulum morbi blandit cursus risus at. Morbi tincidunt augue interdum velit euismod in pellentesque massa. Libero volutpat sed cras ornare arcu dui. Dictum non consectetur a erat nam at lectus. Nunc vel risus commodo viverra maecenas accumsan lacus. + +Dictumst quisque sagittis purus sit amet volutpat consequat. Posuere ac ut consequat semper viverra nam. Sapien nec sagittis aliquam malesuada bibendum arcu vitae elementum curabitur. Feugiat in ante metus dictum at tempor. Consectetur libero id faucibus nisl tincidunt. Risus pretium quam vulputate dignissim suspendisse in est. Urna id volutpat lacus laoreet non curabitur gravida. Sed vulputate mi sit amet mauris. Ut tortor pretium viverra suspendisse potenti. Egestas erat imperdiet sed euismod nisi porta. + +Pretium viverra suspendisse potenti nullam ac. Auctor eu augue ut lectus arcu bibendum at varius. In pellentesque massa placerat duis ultricies. Diam quis enim lobortis scelerisque fermentum. Aenean sed adipiscing diam donec adipiscing. Pellentesque habitant morbi tristique senectus et netus et malesuada fames. In tellus integer feugiat scelerisque varius. Integer malesuada nunc vel risus commodo viverra maecenas. Vitae et leo duis ut diam quam nulla porttitor. Quis lectus nulla at volutpat diam ut venenatis tellus in. Adipiscing elit duis tristique sollicitudin nibh sit amet. Nunc mattis enim ut tellus. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. Amet volutpat consequat mauris nunc congue nisi vitae. Arcu cursus euismod quis viverra nibh cras pulvinar. Sed viverra tellus in hac habitasse platea dictumst. Maecenas pharetra convallis posuere morbi leo urna. Sed pulvinar proin gravida hendrerit lectus a. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque. Sed viverra tellus in hac habitasse. + +Pretium lectus quam id leo. Eget sit amet tellus cras adipiscing enim eu turpis egestas. Aliquam vestibulum morbi blandit cursus risus at ultrices mi tempus. Sit amet venenatis urna cursus eget nunc scelerisque viverra. Quam pellentesque nec nam aliquam sem et tortor consequat id. Vitae turpis massa sed elementum tempus egestas sed sed risus. Integer feugiat scelerisque varius morbi enim nunc. Venenatis urna cursus eget nunc. Non curabitur gravida arcu ac tortor dignissim. In nisl nisi scelerisque eu ultrices. Vestibulum mattis ullamcorper velit sed ullamcorper morbi tincidunt. Enim nulla aliquet porttitor lacus luctus accumsan tortor posuere. Tellus in hac habitasse platea dictumst vestibulum rhoncus. Faucibus purus in massa tempor nec feugiat nisl. Massa sapien faucibus et molestie ac feugiat sed lectus. Hac habitasse platea dictumst vestibulum rhoncus. + +Leo urna molestie at elementum. Nunc sed velit dignissim sodales ut eu sem integer vitae. Consequat interdum varius sit amet mattis vulputate. Nisi lacus sed viverra tellus in. Elit at imperdiet dui accumsan sit. Metus aliquam eleifend mi in nulla. Venenatis cras sed felis eget velit aliquet sagittis id. Enim tortor at auctor urna nunc id cursus metus. Adipiscing commodo elit at imperdiet dui accumsan. Elit duis tristique sollicitudin nibh sit amet commodo. Massa placerat duis ultricies lacus sed turpis tincidunt id. Feugiat in ante metus dictum at tempor commodo. Neque laoreet suspendisse interdum consectetur. Habitant morbi tristique senectus et netus et. Ac odio tempor orci dapibus ultrices. + +Congue mauris rhoncus aenean vel elit scelerisque mauris pellentesque. Tristique risus nec feugiat in fermentum. Vitae turpis massa sed elementum tempus egestas sed sed risus. Sollicitudin ac orci phasellus egestas. A erat nam at lectus. Velit euismod in pellentesque massa placerat duis ultricies lacus. Scelerisque in dictum non consectetur a erat nam at lectus. Bibendum ut tristique et egestas quis ipsum suspendisse ultrices. Egestas integer eget aliquet nibh praesent tristique. In massa tempor nec feugiat nisl pretium. Lacus luctus accumsan tortor posuere ac ut consequat. + +Proin nibh nisl condimentum id venenatis a condimentum. Risus in hendrerit gravida rutrum quisque non tellus orci. Urna et pharetra pharetra massa. Quis hendrerit dolor magna eget est lorem. Cursus metus aliquam eleifend mi in nulla posuere sollicitudin aliquam. Netus et malesuada fames ac turpis. Vel fringilla est ullamcorper eget nulla facilisi etiam dignissim. Arcu risus quis varius quam quisque id diam vel. Ultricies mi quis hendrerit dolor magna. Urna nunc id cursus metus aliquam eleifend mi in. + +A iaculis at erat pellentesque adipiscing commodo. Sit amet tellus cras adipiscing. Non nisi est sit amet facilisis magna. Molestie ac feugiat sed lectus. Nisi quis eleifend quam adipiscing vitae. Aliquet risus feugiat in ante metus dictum at tempor. Egestas congue quisque egestas diam. Neque volutpat ac tincidunt vitae semper quis lectus nulla. Dui ut ornare lectus sit amet. Viverra mauris in aliquam sem fringilla. Nibh cras pulvinar mattis nunc sed blandit. Quam pellentesque nec nam aliquam sem. Vitae aliquet nec ullamcorper sit amet risus. Nulla facilisi morbi tempus iaculis urna id volutpat. Viverra vitae congue eu consequat. Ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at augue eget. Dictum sit amet justo donec enim diam vulputate ut. Posuere morbi leo urna molestie at elementum eu facilisis sed. Nunc non blandit massa enim nec dui nunc. Diam donec adipiscing tristique risus nec feugiat in fermentum. + +Convallis posuere morbi leo urna molestie at elementum eu. Mi in nulla posuere sollicitudin. Sit amet nisl purus in mollis. Eget nunc scelerisque viverra mauris in aliquam sem fringilla. Sit amet luctus venenatis lectus magna. Viverra maecenas accumsan lacus vel facilisis volutpat est velit egestas. Sapien pellentesque habitant morbi tristique senectus et. Neque aliquam vestibulum morbi blandit. Magnis dis parturient montes nascetur. Quam lacus suspendisse faucibus interdum posuere. Eget nulla facilisi etiam dignissim diam quis enim lobortis. Vitae semper quis lectus nulla at volutpat diam ut venenatis. Id nibh tortor id aliquet lectus. Egestas fringilla phasellus faucibus scelerisque eleifend donec. Elit ullamcorper dignissim cras tincidunt lobortis feugiat. Eu scelerisque felis imperdiet proin fermentum leo vel. Cursus sit amet dictum sit amet justo donec enim. Feugiat nibh sed pulvinar proin gravida hendrerit. Mattis nunc sed blandit libero volutpat sed cras ornare arcu. Viverra nibh cras pulvinar mattis nunc sed. + +Turpis egestas integer eget aliquet nibh. Cras adipiscing enim eu turpis egestas. Nec ullamcorper sit amet risus nullam eget felis. Amet justo donec enim diam. Augue ut lectus arcu bibendum at varius vel pharetra vel. Vulputate sapien nec sagittis aliquam malesuada bibendum arcu vitae. Eu mi bibendum neque egestas congue quisque egestas. Non nisi est sit amet facilisis magna etiam. Lorem ipsum dolor sit amet consectetur adipiscing. Tristique et egestas quis ipsum suspendisse ultrices gravida dictum fusce. Id aliquet lectus proin nibh nisl. Ligula ullamcorper malesuada proin libero nunc consequat interdum varius. + +Nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Sagittis vitae et leo duis ut diam quam nulla porttitor. Id velit ut tortor pretium viverra suspendisse. Feugiat vivamus at augue eget arcu dictum varius duis. Placerat vestibulum lectus mauris ultrices eros in. Cras pulvinar mattis nunc sed blandit libero volutpat sed. Augue interdum velit euismod in pellentesque. Vestibulum morbi blandit cursus risus at ultrices mi tempus imperdiet. Egestas quis ipsum suspendisse ultrices gravida dictum fusce. Et odio pellentesque diam volutpat commodo sed. Praesent tristique magna sit amet. Urna nunc id cursus metus aliquam eleifend mi in nulla. Aliquet eget sit amet tellus cras adipiscing enim eu. Vitae auctor eu augue ut lectus arcu bibendum at. Feugiat nibh sed pulvinar proin gravida hendrerit lectus a. Turpis egestas maecenas pharetra convallis posuere morbi leo. Eget velit aliquet sagittis id consectetur purus ut. Pretium quam vulputate dignissim suspendisse in est ante in. Sed sed risus pretium quam vulputate dignissim suspendisse in est. + +Mauris in aliquam sem fringilla ut morbi tincidunt augue interdum. Scelerisque felis imperdiet proin fermentum leo vel orci. Adipiscing enim eu turpis egestas pretium. Volutpat maecenas volutpat blandit aliquam. Viverra vitae congue eu consequat ac felis donec et odio. Pellentesque massa placerat duis ultricies lacus sed turpis tincidunt id. Elementum curabitur vitae nunc sed velit. Tempus quam pellentesque nec nam aliquam sem et tortor consequat. Lectus mauris ultrices eros in cursus turpis massa tincidunt. Lorem ipsum dolor sit amet consectetur adipiscing. Arcu dictum varius duis at consectetur lorem donec. + +Viverra aliquet eget sit amet tellus cras adipiscing enim. Quam id leo in vitae turpis massa sed elementum. Eu lobortis elementum nibh tellus molestie. Neque gravida in fermentum et sollicitudin ac orci phasellus. Dignissim enim sit amet venenatis urna cursus eget nunc. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Et malesuada fames ac turpis egestas. Magnis dis parturient montes nascetur ridiculus mus mauris. Ac turpis egestas maecenas pharetra convallis. Neque laoreet suspendisse interdum consectetur libero id faucibus nisl. Risus nec feugiat in fermentum posuere urna nec tincidunt praesent. Fermentum leo vel orci porta non pulvinar neque laoreet. + +Varius quam quisque id diam vel quam. Vitae auctor eu augue ut lectus arcu bibendum. Ipsum consequat nisl vel pretium lectus quam. Pellentesque elit eget gravida cum sociis natoque. Pellentesque habitant morbi tristique senectus et. Platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim cras. Etiam erat velit scelerisque in dictum non. Facilisis sed odio morbi quis commodo odio aenean. Scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis. Ultrices sagittis orci a scelerisque purus semper eget duis at. Vulputate odio ut enim blandit. Fringilla est ullamcorper eget nulla facilisi etiam dignissim diam quis. Sapien faucibus et molestie ac feugiat sed lectus vestibulum. Blandit volutpat maecenas volutpat blandit aliquam etiam. Iaculis urna id volutpat lacus laoreet non curabitur gravida. Libero nunc consequat interdum varius. Vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Mattis rhoncus urna neque viverra. Vitae tempus quam pellentesque nec. + +Consectetur adipiscing elit duis tristique sollicitudin. Felis imperdiet proin fermentum leo vel orci. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Sagittis id consectetur purus ut faucibus pulvinar elementum integer. Dui vivamus arcu felis bibendum ut. Lobortis elementum nibh tellus molestie nunc non. Viverra aliquet eget sit amet tellus cras adipiscing. Egestas dui id ornare arcu odio ut. Enim praesent elementum facilisis leo vel. Eu nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper. Magna etiam tempor orci eu lobortis elementum nibh tellus. Nulla facilisi morbi tempus iaculis urna. Id semper risus in hendrerit gravida rutrum quisque non tellus. Dictum varius duis at consectetur. Donec ac odio tempor orci dapibus ultrices in. Semper viverra nam libero justo laoreet sit. Sociis natoque penatibus et magnis dis parturient. Quis risus sed vulputate odio. + +Egestas maecenas pharetra convallis posuere. Feugiat vivamus at augue eget arcu dictum varius. Fringilla est ullamcorper eget nulla. Nunc vel risus commodo viverra maecenas accumsan lacus. Pellentesque elit eget gravida cum sociis natoque penatibus. Amet mauris commodo quis imperdiet massa tincidunt nunc. Dictum sit amet justo donec enim diam vulputate. Nibh mauris cursus mattis molestie a iaculis at. Nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit amet. Vitae purus faucibus ornare suspendisse sed nisi lacus sed viverra. Ornare suspendisse sed nisi lacus sed viverra tellus in. Sed viverra ipsum nunc aliquet bibendum enim. Et magnis dis parturient montes nascetur. Adipiscing at in tellus integer feugiat scelerisque varius morbi. Etiam dignissim diam quis enim lobortis scelerisque fermentum dui. + +Libero volutpat sed cras ornare arcu dui vivamus arcu felis. Etiam non quam lacus suspendisse faucibus interdum posuere. Suspendisse in est ante in nibh. Lacus vestibulum sed arcu non odio. Enim eu turpis egestas pretium. Mollis aliquam ut porttitor leo a diam sollicitudin tempor id. Faucibus nisl tincidunt eget nullam non. Pharetra massa massa ultricies mi quis. Mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Quam nulla porttitor massa id neque. Tristique et egestas quis ipsum suspendisse ultrices gravida dictum fusce. Ultrices dui sapien eget mi proin sed libero. Nunc pulvinar sapien et ligula ullamcorper. Nisi est sit amet facilisis. In cursus turpis massa tincidunt dui ut ornare lectus sit. Rutrum tellus pellentesque eu tincidunt tortor aliquam nulla. Tincidunt vitae semper quis lectus nulla at volutpat diam. Suspendisse potenti nullam ac tortor. Sit amet est placerat in egestas erat imperdiet. + +In pellentesque massa placerat duis ultricies lacus. Et sollicitudin ac orci phasellus. Ipsum faucibus vitae aliquet nec ullamcorper sit. At augue eget arcu dictum varius duis at consectetur lorem. Egestas maecenas pharetra convallis posuere morbi leo urna molestie at. Tellus mauris a diam maecenas sed enim. Habitasse platea dictumst quisque sagittis purus sit. Enim ut sem viverra aliquet eget. Mi in nulla posuere sollicitudin aliquam. Arcu ac tortor dignissim convallis aenean et. Vel quam elementum pulvinar etiam non quam lacus. Egestas congue quisque egestas diam in arcu cursus. + +Cursus vitae congue mauris rhoncus aenean vel elit scelerisque. Suspendisse sed nisi lacus sed viverra tellus in. Eu scelerisque felis imperdiet proin fermentum leo vel orci porta. Est pellentesque elit ullamcorper dignissim cras tincidunt. Imperdiet sed euismod nisi porta lorem. Diam vel quam elementum pulvinar etiam non quam. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Massa sapien faucibus et molestie ac feugiat sed lectus. Eget mi proin sed libero enim. Accumsan lacus vel facilisis volutpat est velit egestas dui id. Aliquet enim tortor at auctor urna nunc id cursus metus. + +Id aliquet risus feugiat in ante metus. In nulla posuere sollicitudin aliquam ultrices. Sem et tortor consequat id porta nibh venenatis cras. Sapien faucibus et molestie ac feugiat sed. Tincidunt id aliquet risus feugiat. Arcu vitae elementum curabitur vitae. At lectus urna duis convallis convallis tellus. Nulla facilisi morbi tempus iaculis urna id volutpat. Sit amet nisl suscipit adipiscing. Sit amet risus nullam eget felis eget nunc lobortis mattis. Augue eget arcu dictum varius duis at. + +Congue nisi vitae suscipit tellus mauris a diam maecenas. Libero volutpat sed cras ornare arcu dui vivamus arcu felis. Tortor aliquam nulla facilisi cras fermentum odio eu. Morbi leo urna molestie at elementum eu. Duis convallis convallis tellus id. Vestibulum mattis ullamcorper velit sed ullamcorper morbi. Ornare suspendisse sed nisi lacus sed viverra tellus. Morbi tristique senectus et netus et malesuada fames. Commodo elit at imperdiet dui. Nulla posuere sollicitudin aliquam ultrices sagittis orci a scelerisque purus. Tortor id aliquet lectus proin nibh. + +Augue neque gravida in fermentum et sollicitudin. Facilisi etiam dignissim diam quis enim lobortis scelerisque. Arcu bibendum at varius vel. Leo a diam sollicitudin tempor id eu. Accumsan tortor posuere ac ut consequat semper viverra nam. Tincidunt arcu non sodales neque. Amet consectetur adipiscing elit duis tristique. Tempus egestas sed sed risus pretium quam vulputate. Et malesuada fames ac turpis egestas integer. Integer enim neque volutpat ac. Amet cursus sit amet dictum sit amet. + +Porttitor rhoncus dolor purus non enim praesent. Arcu non odio euismod lacinia at quis risus sed. Accumsan in nisl nisi scelerisque eu ultrices vitae auctor eu. Urna cursus eget nunc scelerisque. Dictum sit amet justo donec enim. Iaculis eu non diam phasellus. Neque vitae tempus quam pellentesque. Faucibus scelerisque eleifend donec pretium vulputate sapien nec. Facilisis volutpat est velit egestas dui. Dapibus ultrices in iaculis nunc sed augue lacus. In mollis nunc sed id. Morbi non arcu risus quis varius quam. Et ultrices neque ornare aenean euismod elementum. Tristique sollicitudin nibh sit amet commodo nulla facilisi nullam vehicula. Sed felis eget velit aliquet sagittis id. + +Ultricies tristique nulla aliquet enim. Ac turpis egestas integer eget aliquet. Euismod elementum nisi quis eleifend quam adipiscing. Fermentum posuere urna nec tincidunt. Dignissim convallis aenean et tortor at. At consectetur lorem donec massa sapien faucibus et molestie. Ut sem nulla pharetra diam sit amet. Lectus nulla at volutpat diam ut venenatis. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. In hac habitasse platea dictumst quisque sagittis purus sit amet. Nibh mauris cursus mattis molestie a iaculis at. Venenatis cras sed felis eget. Et ultrices neque ornare aenean euismod. Semper viverra nam libero justo laoreet sit amet cursus. Tortor id aliquet lectus proin nibh nisl condimentum id venenatis. Vestibulum sed arcu non odio euismod lacinia at quis risus. Duis at tellus at urna. + +Fringilla ut morbi tincidunt augue interdum velit euismod in. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. Integer eget aliquet nibh praesent tristique magna sit amet purus. Vel quam elementum pulvinar etiam non quam. At auctor urna nunc id cursus metus aliquam eleifend. Vivamus at augue eget arcu dictum varius duis. Risus feugiat in ante metus dictum at tempor commodo. Venenatis a condimentum vitae sapien pellentesque habitant. Consectetur libero id faucibus nisl tincidunt eget nullam. Ipsum a arcu cursus vitae. Nulla facilisi nullam vehicula ipsum a arcu cursus. Aliquet nibh praesent tristique magna sit amet purus. Tincidunt praesent semper feugiat nibh sed pulvinar proin gravida hendrerit. Velit laoreet id donec ultrices tincidunt arcu non sodales. Interdum consectetur libero id faucibus nisl tincidunt eget nullam non. + +In dictum non consectetur a erat nam at lectus. Cum sociis natoque penatibus et. Bibendum enim facilisis gravida neque convallis a cras. Egestas integer eget aliquet nibh. Morbi quis commodo odio aenean sed adipiscing diam donec adipiscing. Orci nulla pellentesque dignissim enim sit amet venenatis. Feugiat pretium nibh ipsum consequat nisl vel pretium. Adipiscing tristique risus nec feugiat in fermentum. Id neque aliquam vestibulum morbi blandit cursus risus at ultrices. Elementum facilisis leo vel fringilla. Facilisi cras fermentum odio eu feugiat pretium. Tortor consequat id porta nibh venenatis cras sed felis eget. Lacus vel facilisis volutpat est. + +Etiam erat velit scelerisque in dictum. Sit amet porttitor eget dolor morbi non. Euismod nisi porta lorem mollis aliquam ut porttitor leo a. Accumsan lacus vel facilisis volutpat est velit egestas dui. Praesent tristique magna sit amet purus gravida quis. Tortor at auctor urna nunc id cursus metus aliquam eleifend. At risus viverra adipiscing at in tellus integer feugiat. Diam maecenas sed enim ut sem viverra. Eget aliquet nibh praesent tristique magna sit. Vel pharetra vel turpis nunc eget. Purus sit amet luctus venenatis lectus. Curabitur gravida arcu ac tortor dignissim convallis aenean et. Consequat interdum varius sit amet mattis vulputate. Neque egestas congue quisque egestas diam in arcu. + +Fermentum posuere urna nec tincidunt praesent. Bibendum arcu vitae elementum curabitur vitae nunc sed. In arcu cursus euismod quis. Lorem mollis aliquam ut porttitor. Imperdiet sed euismod nisi porta lorem mollis aliquam. Sagittis purus sit amet volutpat. Nunc non blandit massa enim nec dui nunc mattis enim. At varius vel pharetra vel turpis nunc eget lorem dolor. Elementum nibh tellus molestie nunc non blandit massa enim nec. Duis ut diam quam nulla. Morbi tincidunt augue interdum velit euismod in pellentesque. Quis hendrerit dolor magna eget est lorem ipsum dolor sit. Tristique senectus et netus et malesuada fames ac. Mollis nunc sed id semper risus in. Risus sed vulputate odio ut enim blandit volutpat maecenas volutpat. Feugiat nibh sed pulvinar proin gravida. Vitae justo eget magna fermentum iaculis eu. Nunc mi ipsum faucibus vitae aliquet nec. Aliquam ut porttitor leo a diam sollicitudin tempor. + +Phasellus faucibus scelerisque eleifend donec pretium vulputate sapien nec. Ligula ullamcorper malesuada proin libero nunc consequat. Venenatis lectus magna fringilla urna porttitor. Sed blandit libero volutpat sed cras ornare arcu dui. Tempus egestas sed sed risus pretium quam vulputate. Quis lectus nulla at volutpat. Lectus nulla at volutpat diam ut venenatis tellus. Magnis dis parturient montes nascetur. Varius quam quisque id diam vel quam elementum pulvinar etiam. Lectus quam id leo in vitae turpis massa sed elementum. Elementum nibh tellus molestie nunc non blandit massa. Nibh tellus molestie nunc non blandit massa enim nec dui. Integer feugiat scelerisque varius morbi enim nunc faucibus a. Enim facilisis gravida neque convallis a cras semper auctor neque. At tellus at urna condimentum mattis pellentesque. Aenean pharetra magna ac placerat. Gravida arcu ac tortor dignissim convallis aenean. Fames ac turpis egestas maecenas pharetra convallis posuere morbi leo. Lacus vestibulum sed arcu non odio euismod lacinia. + +Vulputate enim nulla aliquet porttitor lacus luctus. Porttitor massa id neque aliquam. Id aliquet risus feugiat in ante metus dictum. Nulla facilisi morbi tempus iaculis. Cras sed felis eget velit. Donec massa sapien faucibus et molestie. Feugiat vivamus at augue eget arcu dictum varius duis. Tellus elementum sagittis vitae et leo duis ut diam quam. Neque egestas congue quisque egestas diam in. Tellus at urna condimentum mattis. + +Cras sed felis eget velit aliquet. Ultricies mi eget mauris pharetra et ultrices neque ornare. Lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Pretium viverra suspendisse potenti nullam ac tortor vitae purus. Sem fringilla ut morbi tincidunt augue interdum velit euismod in. Turpis in eu mi bibendum neque egestas. Cum sociis natoque penatibus et magnis dis. Libero nunc consequat interdum varius sit amet mattis. Ut enim blandit volutpat maecenas volutpat blandit. Senectus et netus et malesuada fames ac. + +Eu facilisis sed odio morbi quis commodo odio aenean sed. Adipiscing elit duis tristique sollicitudin nibh sit. Pharetra magna ac placerat vestibulum. Interdum posuere lorem ipsum dolor sit amet consectetur. Augue mauris augue neque gravida in fermentum et sollicitudin. Sem integer vitae justo eget magna fermentum iaculis eu. Mollis aliquam ut porttitor leo. Et ligula ullamcorper malesuada proin libero nunc. Auctor elit sed vulputate mi sit amet. Viverra nibh cras pulvinar mattis. Enim nec dui nunc mattis enim ut. Mauris nunc congue nisi vitae suscipit tellus. Tellus molestie nunc non blandit massa enim nec. Diam phasellus vestibulum lorem sed risus ultricies tristique nulla. Pharetra magna ac placerat vestibulum lectus mauris. Eleifend quam adipiscing vitae proin sagittis nisl. Nibh praesent tristique magna sit amet purus. + +Egestas purus viverra accumsan in nisl nisi scelerisque. Mattis pellentesque id nibh tortor id aliquet lectus proin. Fermentum posuere urna nec tincidunt praesent semper. Nam at lectus urna duis convallis convallis tellus id interdum. Faucibus pulvinar elementum integer enim neque. Justo nec ultrices dui sapien. Aliquam ut porttitor leo a diam sollicitudin tempor id eu. Urna duis convallis convallis tellus id. Orci a scelerisque purus semper eget duis at tellus. Leo vel orci porta non pulvinar neque laoreet. Platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Commodo odio aenean sed adipiscing. Elementum facilisis leo vel fringilla est ullamcorper eget. Ac tortor vitae purus faucibus. Risus nec feugiat in fermentum. Ut pharetra sit amet aliquam id diam. + +Faucibus interdum posuere lorem ipsum dolor sit amet consectetur. Lorem sed risus ultricies tristique nulla aliquet enim tortor. Nibh praesent tristique magna sit amet. Tristique et egestas quis ipsum suspendisse ultrices. Risus commodo viverra maecenas accumsan lacus vel facilisis volutpat. Maecenas ultricies mi eget mauris pharetra et ultrices neque ornare. Quis ipsum suspendisse ultrices gravida dictum fusce ut. Sem et tortor consequat id. Nullam eget felis eget nunc lobortis. Sem fringilla ut morbi tincidunt augue interdum. Cras fermentum odio eu feugiat pretium nibh ipsum consequat. + +Ante in nibh mauris cursus. Pulvinar etiam non quam lacus suspendisse faucibus interdum posuere lorem. Amet facilisis magna etiam tempor orci eu lobortis. Risus ultricies tristique nulla aliquet enim tortor at. Sit amet nisl suscipit adipiscing bibendum est ultricies integer quis. Tincidunt nunc pulvinar sapien et. Lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit. Volutpat lacus laoreet non curabitur gravida arcu ac. Platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim cras. Ultrices vitae auctor eu augue ut lectus arcu. Vulputate enim nulla aliquet porttitor. Aliquet porttitor lacus luctus accumsan. Nibh sed pulvinar proin gravida hendrerit lectus. Suscipit adipiscing bibendum est ultricies integer quis auctor elit sed. Nunc mattis enim ut tellus elementum sagittis vitae et. Sapien et ligula ullamcorper malesuada proin libero nunc consequat. At urna condimentum mattis pellentesque id nibh tortor id aliquet. + +Malesuada fames ac turpis egestas sed tempus urna et pharetra. Dignissim enim sit amet venenatis urna cursus eget nunc. Neque volutpat ac tincidunt vitae semper. At in tellus integer feugiat scelerisque. Consequat nisl vel pretium lectus quam id leo. Lobortis feugiat vivamus at augue eget arcu dictum varius duis. Tellus in metus vulputate eu scelerisque felis imperdiet. Eget mi proin sed libero enim sed. Amet facilisis magna etiam tempor orci eu lobortis elementum. Nec sagittis aliquam malesuada bibendum arcu. Vel orci porta non pulvinar neque laoreet. + +Pharetra convallis posuere morbi leo urna molestie at elementum eu. Ultricies mi eget mauris pharetra et ultrices neque. Egestas sed sed risus pretium. Mauris pharetra et ultrices neque ornare aenean euismod elementum nisi. Odio aenean sed adipiscing diam donec. Ornare arcu dui vivamus arcu felis bibendum. Auctor urna nunc id cursus metus aliquam. Maecenas ultricies mi eget mauris pharetra et ultrices neque. Suscipit adipiscing bibendum est ultricies integer quis. Cras fermentum odio eu feugiat. Ullamcorper a lacus vestibulum sed arcu non odio. Vel quam elementum pulvinar etiam. Sed vulputate mi sit amet mauris commodo quis imperdiet massa. A erat nam at lectus urna duis convallis convallis tellus. Diam sit amet nisl suscipit adipiscing. Morbi non arcu risus quis varius quam quisque. + +Ultrices in iaculis nunc sed augue lacus viverra vitae. At imperdiet dui accumsan sit amet nulla. Cursus in hac habitasse platea. Consequat nisl vel pretium lectus quam id leo. Nec ullamcorper sit amet risus. Maecenas sed enim ut sem viverra. Ornare massa eget egestas purus viverra accumsan in. Tellus mauris a diam maecenas sed. Vulputate eu scelerisque felis imperdiet proin fermentum. At augue eget arcu dictum varius. Ac ut consequat semper viverra nam libero. Adipiscing elit duis tristique sollicitudin nibh sit. Faucibus et molestie ac feugiat. Neque gravida in fermentum et. Convallis aenean et tortor at risus viverra adipiscing at in. Placerat duis ultricies lacus sed turpis. Lectus mauris ultrices eros in cursus turpis massa. Dignissim cras tincidunt lobortis feugiat vivamus. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus. + +Quisque id diam vel quam elementum pulvinar etiam. Sit amet purus gravida quis blandit turpis cursus in hac. Id interdum velit laoreet id donec ultrices tincidunt. Commodo nulla facilisi nullam vehicula ipsum a arcu. Tincidunt praesent semper feugiat nibh sed pulvinar proin. Lorem ipsum dolor sit amet consectetur adipiscing. Sem nulla pharetra diam sit amet. Massa sed elementum tempus egestas sed sed. Consequat mauris nunc congue nisi. Lobortis mattis aliquam faucibus purus in massa tempor nec. + +Lorem donec massa sapien faucibus et molestie. Ultrices dui sapien eget mi proin sed libero. Neque convallis a cras semper auctor. Nunc eget lorem dolor sed viverra ipsum. Magna fringilla urna porttitor rhoncus. Sed vulputate mi sit amet mauris commodo quis imperdiet massa. Diam in arcu cursus euismod quis viverra nibh cras pulvinar. Varius morbi enim nunc faucibus a pellentesque sit amet porttitor. Volutpat ac tincidunt vitae semper quis lectus nulla at volutpat. Morbi tristique senectus et netus et malesuada fames ac turpis. Vitae justo eget magna fermentum iaculis. Dolor sit amet consectetur adipiscing elit pellentesque habitant morbi. In fermentum posuere urna nec tincidunt. Ornare massa eget egestas purus viverra accumsan in. Feugiat in ante metus dictum at tempor. + +A lacus vestibulum sed arcu non odio euismod lacinia at. Aliquet nibh praesent tristique magna sit amet purus. Faucibus scelerisque eleifend donec pretium vulputate sapien nec. Est pellentesque elit ullamcorper dignissim cras. Eget sit amet tellus cras. Ut sem nulla pharetra diam sit amet nisl. Lorem dolor sed viverra ipsum nunc aliquet. Ultricies tristique nulla aliquet enim tortor at auctor urna nunc. Eget est lorem ipsum dolor sit amet consectetur. Odio euismod lacinia at quis risus sed vulputate odio. Cursus vitae congue mauris rhoncus aenean vel. Tincidunt eget nullam non nisi est sit. Congue quisque egestas diam in arcu. Metus vulputate eu scelerisque felis imperdiet. Ut consequat semper viverra nam libero. + +Cum sociis natoque penatibus et magnis dis parturient. Curabitur vitae nunc sed velit dignissim sodales ut eu. Placerat in egestas erat imperdiet sed euismod nisi porta. Metus dictum at tempor commodo ullamcorper a lacus vestibulum sed. Blandit volutpat maecenas volutpat blandit aliquam etiam erat velit scelerisque. Pretium quam vulputate dignissim suspendisse in. Pharetra convallis posuere morbi leo urna molestie at elementum. Proin fermentum leo vel orci porta non. Integer enim neque volutpat ac. Aliquam malesuada bibendum arcu vitae elementum curabitur. Malesuada nunc vel risus commodo. Pretium vulputate sapien nec sagittis aliquam malesuada bibendum. Iaculis urna id volutpat lacus. Lobortis mattis aliquam faucibus purus in massa tempor. Feugiat nibh sed pulvinar proin gravida hendrerit. Habitant morbi tristique senectus et netus. Odio eu feugiat pretium nibh ipsum consequat. + +Vulputate odio ut enim blandit volutpat maecenas volutpat blandit aliquam. Pharetra pharetra massa massa ultricies mi quis hendrerit dolor. Scelerisque in dictum non consectetur a erat nam at lectus. Dis parturient montes nascetur ridiculus mus mauris vitae. Id volutpat lacus laoreet non curabitur gravida arcu ac tortor. Iaculis at erat pellentesque adipiscing commodo elit. Felis eget velit aliquet sagittis id consectetur purus ut faucibus. Est ultricies integer quis auctor elit sed vulputate mi. Volutpat ac tincidunt vitae semper. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Leo a diam sollicitudin tempor. + +Hendrerit gravida rutrum quisque non tellus orci ac. Ornare arcu dui vivamus arcu. Interdum velit laoreet id donec ultrices tincidunt arcu. Sed egestas egestas fringilla phasellus. Amet venenatis urna cursus eget nunc scelerisque. Nisl purus in mollis nunc sed id. Tincidunt ornare massa eget egestas purus viverra. Aliquam sem et tortor consequat id porta. Elementum curabitur vitae nunc sed velit dignissim sodales. Orci nulla pellentesque dignissim enim sit. Diam volutpat commodo sed egestas. Porta lorem mollis aliquam ut porttitor leo a diam sollicitudin. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Nisl condimentum id venenatis a condimentum. + +Etiam erat velit scelerisque in dictum non. In massa tempor nec feugiat nisl. Pharetra pharetra massa massa ultricies mi quis hendrerit. Congue quisque egestas diam in arcu cursus euismod. Dui nunc mattis enim ut. Neque ornare aenean euismod elementum nisi. Vestibulum morbi blandit cursus risus at ultrices mi. Convallis convallis tellus id interdum. Sodales neque sodales ut etiam sit amet nisl purus in. Elit sed vulputate mi sit amet mauris commodo. Maecenas ultricies mi eget mauris pharetra et ultrices neque ornare. Dolor magna eget est lorem ipsum dolor. Malesuada pellentesque elit eget gravida cum sociis natoque penatibus. Nec feugiat in fermentum posuere urna nec. + +Nisl suscipit adipiscing bibendum est ultricies. Ut diam quam nulla porttitor massa. Lectus mauris ultrices eros in cursus turpis massa tincidunt dui. Sociis natoque penatibus et magnis dis parturient montes nascetur. Montes nascetur ridiculus mus mauris vitae ultricies leo integer malesuada. Viverra nibh cras pulvinar mattis nunc sed blandit libero. Id leo in vitae turpis massa sed. Non tellus orci ac auctor augue. Et tortor consequat id porta nibh. Elementum pulvinar etiam non quam lacus. + +Et sollicitudin ac orci phasellus. Eu tincidunt tortor aliquam nulla facilisi cras fermentum odio. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus quam. Posuere sollicitudin aliquam ultrices sagittis. Elementum curabitur vitae nunc sed velit dignissim sodales ut eu. Sit amet purus gravida quis blandit turpis. Nunc mattis enim ut tellus. Id leo in vitae turpis massa sed elementum tempus egestas. Nibh ipsum consequat nisl vel pretium. Elit sed vulputate mi sit amet mauris commodo. Enim sit amet venenatis urna cursus. Massa ultricies mi quis hendrerit dolor. Non curabitur gravida arcu ac. Tempor commodo ullamcorper a lacus vestibulum sed arcu. Nascetur ridiculus mus mauris vitae ultricies leo integer. Volutpat maecenas volutpat blandit aliquam etiam erat velit. + +Arcu odio ut sem nulla pharetra. Arcu non odio euismod lacinia at. Pharetra et ultrices neque ornare aenean euismod elementum nisi. Risus pretium quam vulputate dignissim suspendisse in est ante in. Est sit amet facilisis magna etiam tempor. Gravida cum sociis natoque penatibus et magnis dis. Nulla porttitor massa id neque. Id neque aliquam vestibulum morbi blandit cursus risus at ultrices. Nisl rhoncus mattis rhoncus urna neque viverra. In fermentum posuere urna nec tincidunt praesent. + +Diam quam nulla porttitor massa. Malesuada proin libero nunc consequat. Egestas erat imperdiet sed euismod nisi porta lorem mollis. Sapien et ligula ullamcorper malesuada proin libero nunc. Fermentum iaculis eu non diam phasellus vestibulum lorem sed. Proin nibh nisl condimentum id venenatis a condimentum vitae sapien. In metus vulputate eu scelerisque felis imperdiet. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc. Proin sed libero enim sed faucibus turpis in eu. Tortor consequat id porta nibh venenatis. + +Dolor morbi non arcu risus quis. Nunc sed id semper risus in hendrerit gravida rutrum. Tincidunt lobortis feugiat vivamus at. Quisque non tellus orci ac auctor augue. Id volutpat lacus laoreet non curabitur gravida arcu. Vulputate odio ut enim blandit. Semper risus in hendrerit gravida rutrum. Quis vel eros donec ac odio tempor. Ullamcorper a lacus vestibulum sed arcu non. Vitae tempus quam pellentesque nec nam aliquam sem et. A iaculis at erat pellentesque adipiscing commodo elit at. Amet nulla facilisi morbi tempus. Iaculis eu non diam phasellus vestibulum lorem sed. Non quam lacus suspendisse faucibus interdum posuere lorem ipsum. + +Est ante in nibh mauris cursus. In eu mi bibendum neque egestas congue quisque egestas. Nec nam aliquam sem et tortor consequat id porta nibh. Justo laoreet sit amet cursus sit amet dictum sit. Nulla pharetra diam sit amet nisl suscipit adipiscing bibendum est. Adipiscing elit ut aliquam purus sit amet. Sed sed risus pretium quam vulputate dignissim suspendisse in est. Ornare quam viverra orci sagittis eu volutpat odio facilisis. Lacus suspendisse faucibus interdum posuere lorem. Metus dictum at tempor commodo. Adipiscing at in tellus integer feugiat scelerisque varius. Habitasse platea dictumst vestibulum rhoncus est. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan. Erat velit scelerisque in dictum. Dignissim enim sit amet venenatis. + +Faucibus ornare suspendisse sed nisi lacus sed viverra tellus. Non tellus orci ac auctor augue mauris augue neque gravida. Diam quis enim lobortis scelerisque fermentum dui faucibus in. Vel elit scelerisque mauris pellentesque. Vel risus commodo viverra maecenas. Diam ut venenatis tellus in metus. Ante metus dictum at tempor commodo ullamcorper. Quis commodo odio aenean sed adipiscing diam. Ullamcorper a lacus vestibulum sed arcu non. Elementum nibh tellus molestie nunc. Odio ut enim blandit volutpat maecenas volutpat blandit. Fermentum iaculis eu non diam phasellus vestibulum lorem sed. + +Eu volutpat odio facilisis mauris sit amet massa. Quam id leo in vitae turpis massa sed elementum tempus. Varius sit amet mattis vulputate enim nulla. Quam lacus suspendisse faucibus interdum posuere lorem. Volutpat consequat mauris nunc congue nisi vitae suscipit tellus. Aliquam ut porttitor leo a diam sollicitudin tempor id eu. Eget nunc lobortis mattis aliquam faucibus purus. Sem fringilla ut morbi tincidunt augue interdum. Amet consectetur adipiscing elit pellentesque. Nisl vel pretium lectus quam id leo in vitae turpis. In fermentum posuere urna nec tincidunt praesent semper feugiat nibh. In massa tempor nec feugiat nisl. In aliquam sem fringilla ut morbi tincidunt. Ac placerat vestibulum lectus mauris ultrices eros. Ac turpis egestas maecenas pharetra. Enim ut sem viverra aliquet eget sit amet tellus cras. + +Vel facilisis volutpat est velit. In vitae turpis massa sed elementum tempus egestas. Egestas diam in arcu cursus euismod quis viverra nibh. Adipiscing vitae proin sagittis nisl rhoncus. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh sit. Ut eu sem integer vitae justo eget magna fermentum iaculis. Ante metus dictum at tempor commodo ullamcorper a. Egestas quis ipsum suspendisse ultrices. Duis tristique sollicitudin nibh sit amet. Etiam non quam lacus suspendisse faucibus interdum posuere lorem ipsum. Eu mi bibendum neque egestas congue quisque egestas diam. Amet volutpat consequat mauris nunc congue nisi vitae suscipit tellus. + +Amet facilisis magna etiam tempor. Condimentum id venenatis a condimentum vitae sapien. Ullamcorper sit amet risus nullam eget felis eget. Elit sed vulputate mi sit amet mauris commodo quis imperdiet. Vel turpis nunc eget lorem dolor. Egestas pretium aenean pharetra magna. Sit amet commodo nulla facilisi nullam vehicula ipsum. Diam maecenas ultricies mi eget mauris pharetra et. Nulla aliquet porttitor lacus luctus accumsan tortor. Pharetra massa massa ultricies mi. Magna sit amet purus gravida quis blandit turpis. Malesuada fames ac turpis egestas sed tempus urna. + +At erat pellentesque adipiscing commodo elit at imperdiet dui. Eget nulla facilisi etiam dignissim diam quis enim. Turpis egestas sed tempus urna et pharetra pharetra massa massa. Erat pellentesque adipiscing commodo elit at imperdiet dui accumsan sit. Turpis egestas sed tempus urna. Aliquam faucibus purus in massa tempor nec. Ut etiam sit amet nisl purus in mollis. Mi ipsum faucibus vitae aliquet nec. Sed risus pretium quam vulputate dignissim suspendisse in est ante. Est ante in nibh mauris cursus mattis molestie a iaculis. Velit aliquet sagittis id consectetur purus ut faucibus pulvinar. Malesuada pellentesque elit eget gravida. Pretium aenean pharetra magna ac placerat vestibulum. Vel elit scelerisque mauris pellentesque pulvinar pellentesque. Mauris in aliquam sem fringilla ut morbi tincidunt augue interdum. Metus aliquam eleifend mi in nulla. Nunc pulvinar sapien et ligula. Diam vel quam elementum pulvinar etiam non quam lacus suspendisse. + +Lacus vestibulum sed arcu non odio euismod lacinia. Nec feugiat nisl pretium fusce id velit ut tortor pretium. Lorem sed risus ultricies tristique nulla aliquet enim. Egestas congue quisque egestas diam in arcu. At lectus urna duis convallis. Sed ullamcorper morbi tincidunt ornare massa. Vestibulum sed arcu non odio euismod lacinia at quis risus. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. Vitae justo eget magna fermentum. Nisi vitae suscipit tellus mauris. Porttitor massa id neque aliquam vestibulum morbi blandit cursus risus. Diam sit amet nisl suscipit adipiscing bibendum est ultricies. Adipiscing at in tellus integer feugiat scelerisque. Pellentesque id nibh tortor id aliquet lectus proin. Ridiculus mus mauris vitae ultricies leo. Id diam maecenas ultricies mi eget. In nulla posuere sollicitudin aliquam ultrices sagittis. Nisl vel pretium lectus quam id leo in vitae turpis. Laoreet suspendisse interdum consectetur libero id faucibus. Vitae turpis massa sed elementum tempus egestas sed. + +Neque volutpat ac tincidunt vitae semper quis lectus nulla. Nibh tortor id aliquet lectus proin nibh nisl condimentum id. Placerat orci nulla pellentesque dignissim enim sit. Lacinia at quis risus sed vulputate odio. Tellus at urna condimentum mattis pellentesque. Cursus eget nunc scelerisque viverra mauris. Quis ipsum suspendisse ultrices gravida dictum fusce ut placerat. Commodo sed egestas egestas fringilla phasellus faucibus scelerisque. Tortor aliquam nulla facilisi cras fermentum odio eu. Eu ultrices vitae auctor eu. Elementum tempus egestas sed sed risus pretium quam. Felis eget nunc lobortis mattis aliquam. + +Nulla facilisi cras fermentum odio. Orci dapibus ultrices in iaculis nunc sed. Eget nulla facilisi etiam dignissim diam. Turpis egestas pretium aenean pharetra. Ornare arcu odio ut sem nulla pharetra diam. Duis ut diam quam nulla. In vitae turpis massa sed elementum tempus egestas. Elementum integer enim neque volutpat ac tincidunt vitae semper quis. Scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis. Sed enim ut sem viverra aliquet eget sit amet tellus. Sed sed risus pretium quam vulputate. Tincidunt vitae semper quis lectus nulla at volutpat diam ut. Eget nunc lobortis mattis aliquam faucibus purus in. + +Massa enim nec dui nunc. Sodales ut etiam sit amet nisl purus in. Turpis tincidunt id aliquet risus feugiat in ante. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Turpis egestas maecenas pharetra convallis posuere morbi leo urna. Tristique et egestas quis ipsum suspendisse ultrices gravida dictum fusce. Vitae elementum curabitur vitae nunc sed velit dignissim. Euismod lacinia at quis risus sed vulputate odio. Orci phasellus egestas tellus rutrum tellus pellentesque eu. Id diam vel quam elementum pulvinar etiam non quam lacus. Massa massa ultricies mi quis hendrerit dolor. Tincidunt lobortis feugiat vivamus at augue eget arcu dictum. Eget velit aliquet sagittis id consectetur purus ut faucibus. Arcu bibendum at varius vel pharetra vel turpis nunc. Nunc scelerisque viverra mauris in aliquam sem fringilla ut morbi. Eros donec ac odio tempor orci. Venenatis urna cursus eget nunc scelerisque viverra mauris in aliquam. At tellus at urna condimentum mattis pellentesque id nibh tortor. + +Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Lorem ipsum dolor sit amet consectetur adipiscing elit pellentesque. Viverra adipiscing at in tellus integer. Pellentesque elit ullamcorper dignissim cras tincidunt lobortis. Non pulvinar neque laoreet suspendisse interdum consectetur libero id. Faucibus interdum posuere lorem ipsum dolor sit. Luctus venenatis lectus magna fringilla urna. Nulla pellentesque dignissim enim sit. Senectus et netus et malesuada. Amet nisl purus in mollis nunc sed. Massa enim nec dui nunc mattis enim ut. Nibh ipsum consequat nisl vel pretium. Egestas erat imperdiet sed euismod. Nullam eget felis eget nunc lobortis. + +Fermentum iaculis eu non diam phasellus. Quisque id diam vel quam. Fermentum iaculis eu non diam phasellus. Proin sagittis nisl rhoncus mattis. Ullamcorper a lacus vestibulum sed arcu non odio euismod lacinia. Tellus at urna condimentum mattis pellentesque id nibh tortor id. Posuere lorem ipsum dolor sit amet consectetur. Accumsan sit amet nulla facilisi morbi tempus iaculis urna. Ultrices mi tempus imperdiet nulla. Interdum velit laoreet id donec ultrices. + +Diam vel quam elementum pulvinar. Enim nec dui nunc mattis enim ut tellus elementum. Venenatis cras sed felis eget velit aliquet sagittis id. Massa ultricies mi quis hendrerit dolor magna eget est lorem. Nibh praesent tristique magna sit amet purus gravida. Sed risus ultricies tristique nulla aliquet enim tortor. Scelerisque eleifend donec pretium vulputate sapien nec sagittis. Nunc sed velit dignissim sodales ut eu sem integer. Cras fermentum odio eu feugiat pretium. Sed cras ornare arcu dui vivamus. Sit amet nisl purus in mollis. Nulla pellentesque dignissim enim sit amet venenatis urna cursus. Posuere ac ut consequat semper viverra. Neque laoreet suspendisse interdum consectetur libero. Duis ut diam quam nulla porttitor. Amet venenatis urna cursus eget nunc scelerisque viverra. Mauris nunc congue nisi vitae suscipit. Quam adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus urna. + +Est ante in nibh mauris cursus. Rhoncus urna neque viverra justo nec ultrices dui sapien. Amet dictum sit amet justo donec. Duis tristique sollicitudin nibh sit amet commodo nulla. Elementum tempus egestas sed sed risus pretium. Mi bibendum neque egestas congue quisque egestas diam in arcu. Suspendisse in est ante in nibh mauris cursus. Est placerat in egestas erat imperdiet sed euismod. Iaculis nunc sed augue lacus viverra. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu feugiat. Ultrices tincidunt arcu non sodales neque sodales ut. + +Justo eget magna fermentum iaculis. Dui faucibus in ornare quam viverra orci sagittis eu. Quis eleifend quam adipiscing vitae. Nam libero justo laoreet sit amet cursus sit amet dictum. Tellus integer feugiat scelerisque varius morbi. Diam volutpat commodo sed egestas egestas fringilla phasellus. Aliquet nec ullamcorper sit amet risus nullam eget felis eget. Mattis ullamcorper velit sed ullamcorper morbi. Aenean sed adipiscing diam donec adipiscing tristique risus nec feugiat. Aenean sed adipiscing diam donec. Mauris cursus mattis molestie a. Morbi enim nunc faucibus a. Cras adipiscing enim eu turpis egestas. + +Ornare arcu dui vivamus arcu felis bibendum ut tristique et. Felis imperdiet proin fermentum leo vel. Facilisis sed odio morbi quis commodo odio. Integer quis auctor elit sed vulputate mi. Eu feugiat pretium nibh ipsum consequat. Aliquet enim tortor at auctor urna nunc id cursus. In massa tempor nec feugiat nisl. Etiam dignissim diam quis enim lobortis scelerisque fermentum dui. Convallis posuere morbi leo urna molestie at elementum. Scelerisque varius morbi enim nunc faucibus a pellentesque sit. Tellus in hac habitasse platea dictumst vestibulum. Purus non enim praesent elementum facilisis leo. Tortor pretium viverra suspendisse potenti. Egestas dui id ornare arcu odio ut sem nulla. + +Arcu non sodales neque sodales ut etiam sit amet. Curabitur vitae nunc sed velit. Amet purus gravida quis blandit turpis cursus in hac habitasse. Sed elementum tempus egestas sed. Duis tristique sollicitudin nibh sit amet. Suscipit adipiscing bibendum est ultricies integer quis auctor elit sed. Ullamcorper eget nulla facilisi etiam dignissim diam. Porttitor rhoncus dolor purus non. Feugiat vivamus at augue eget arcu. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Sit amet porttitor eget dolor morbi non arcu. + +Purus gravida quis blandit turpis cursus in hac habitasse platea. Pretium vulputate sapien nec sagittis aliquam malesuada. In ante metus dictum at tempor commodo ullamcorper a. Pulvinar etiam non quam lacus suspendisse. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Integer feugiat scelerisque varius morbi enim nunc. Egestas purus viverra accumsan in nisl nisi scelerisque eu. Mauris in aliquam sem fringilla. Turpis egestas maecenas pharetra convallis posuere. Ut venenatis tellus in metus vulputate eu. Diam donec adipiscing tristique risus nec feugiat in fermentum. Amet risus nullam eget felis. Pellentesque elit ullamcorper dignissim cras tincidunt. Fermentum dui faucibus in ornare quam viverra orci sagittis. Mauris pharetra et ultrices neque ornare. Sem viverra aliquet eget sit. + +Tincidunt arcu non sodales neque sodales ut. Sed euismod nisi porta lorem. Mi ipsum faucibus vitae aliquet nec. Lorem ipsum dolor sit amet consectetur. Est placerat in egestas erat imperdiet sed euismod nisi porta. Adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus urna neque. Consequat id porta nibh venenatis cras sed felis. Habitant morbi tristique senectus et netus et malesuada fames. Suspendisse faucibus interdum posuere lorem ipsum. Etiam non quam lacus suspendisse faucibus. + +Non diam phasellus vestibulum lorem. Eu tincidunt tortor aliquam nulla. Tincidunt id aliquet risus feugiat in. Convallis convallis tellus id interdum velit laoreet id. Nibh tortor id aliquet lectus proin nibh. Ornare suspendisse sed nisi lacus sed. Amet dictum sit amet justo. Posuere lorem ipsum dolor sit amet consectetur. Nec nam aliquam sem et tortor consequat id porta nibh. Vel elit scelerisque mauris pellentesque. Sit amet mauris commodo quis imperdiet. Dictum at tempor commodo ullamcorper. Praesent semper feugiat nibh sed pulvinar proin. Fames ac turpis egestas maecenas pharetra convallis posuere. Orci a scelerisque purus semper eget duis at tellus. Risus nullam eget felis eget. Lobortis elementum nibh tellus molestie. In arcu cursus euismod quis viverra nibh cras pulvinar. + +Diam sollicitudin tempor id eu. Interdum consectetur libero id faucibus nisl tincidunt eget nullam non. Ac turpis egestas maecenas pharetra. Fringilla phasellus faucibus scelerisque eleifend. Dictum sit amet justo donec enim diam. Nibh cras pulvinar mattis nunc sed blandit libero. Malesuada fames ac turpis egestas integer eget aliquet nibh. Aliquet sagittis id consectetur purus. Tellus rutrum tellus pellentesque eu tincidunt tortor aliquam nulla. Fermentum odio eu feugiat pretium. Dolor sit amet consectetur adipiscing elit pellentesque. Leo vel fringilla est ullamcorper eget nulla facilisi. Faucibus scelerisque eleifend donec pretium vulputate sapien nec sagittis aliquam. Cras sed felis eget velit aliquet sagittis id. Tincidunt vitae semper quis lectus nulla at volutpat diam ut. Lacus viverra vitae congue eu consequat ac felis donec et. Felis imperdiet proin fermentum leo vel orci porta non pulvinar. In nulla posuere sollicitudin aliquam ultrices sagittis orci. Faucibus nisl tincidunt eget nullam non nisi est sit amet. Sed risus ultricies tristique nulla aliquet enim tortor. + +Quisque sagittis purus sit amet volutpat consequat. Tristique sollicitudin nibh sit amet. Amet purus gravida quis blandit turpis cursus in hac habitasse. Sed risus ultricies tristique nulla aliquet enim tortor at. Lacus sed viverra tellus in. Semper risus in hendrerit gravida rutrum quisque non tellus. Nullam non nisi est sit. At urna condimentum mattis pellentesque id nibh. Eget lorem dolor sed viverra ipsum nunc. Cum sociis natoque penatibus et magnis dis. Maecenas pharetra convallis posuere morbi leo. Tincidunt dui ut ornare lectus sit amet est. Pretium aenean pharetra magna ac placerat vestibulum lectus mauris ultrices. Leo urna molestie at elementum eu facilisis sed. Diam maecenas ultricies mi eget. Et sollicitudin ac orci phasellus egestas tellus. Egestas pretium aenean pharetra magna ac placerat vestibulum. Quam adipiscing vitae proin sagittis nisl. Feugiat nisl pretium fusce id velit ut. Augue lacus viverra vitae congue eu consequat ac felis donec. + +Quisque sagittis purus sit amet. Metus vulputate eu scelerisque felis imperdiet. Amet consectetur adipiscing elit pellentesque habitant morbi. Facilisis gravida neque convallis a cras semper. Ullamcorper eget nulla facilisi etiam. Lectus quam id leo in vitae turpis massa sed. Elementum integer enim neque volutpat ac tincidunt vitae. Et tortor at risus viverra adipiscing at in tellus integer. Lacus laoreet non curabitur gravida arcu. A scelerisque purus semper eget duis at. Consequat semper viverra nam libero justo laoreet sit amet. Nunc sed blandit libero volutpat sed cras ornare. Eget sit amet tellus cras adipiscing. Ornare suspendisse sed nisi lacus sed viverra tellus in. + +Nunc sed blandit libero volutpat sed cras ornare arcu dui. Nulla at volutpat diam ut. Id volutpat lacus laoreet non curabitur gravida arcu. Duis convallis convallis tellus id interdum. Facilisi cras fermentum odio eu feugiat. Facilisis mauris sit amet massa vitae tortor condimentum lacinia quis. Facilisi nullam vehicula ipsum a arcu. Amet consectetur adipiscing elit duis tristique. Nibh tortor id aliquet lectus proin. Ut lectus arcu bibendum at varius vel pharetra vel. Ornare lectus sit amet est placerat in. + +Eu volutpat odio facilisis mauris sit amet massa. Netus et malesuada fames ac turpis egestas. In fermentum posuere urna nec tincidunt. Ultricies mi eget mauris pharetra et ultrices neque ornare aenean. Urna neque viverra justo nec ultrices. Massa enim nec dui nunc mattis enim. Nunc lobortis mattis aliquam faucibus purus in massa tempor. Amet purus gravida quis blandit turpis cursus in. Sit amet luctus venenatis lectus magna fringilla urna porttitor. Nulla pharetra diam sit amet nisl suscipit. Fames ac turpis egestas integer eget aliquet nibh praesent tristique. Volutpat commodo sed egestas egestas fringilla phasellus faucibus. Urna duis convallis convallis tellus id interdum velit. Vel pretium lectus quam id leo. Ut enim blandit volutpat maecenas volutpat blandit aliquam. Viverra tellus in hac habitasse platea dictumst vestibulum rhoncus est. + +Pharetra vel turpis nunc eget lorem dolor. Nulla facilisi etiam dignissim diam quis enim. Sed id semper risus in. Nec feugiat in fermentum posuere. Non blandit massa enim nec dui nunc mattis. Viverra accumsan in nisl nisi scelerisque eu ultrices vitae auctor. Donec ultrices tincidunt arcu non sodales neque sodales. Posuere lorem ipsum dolor sit amet consectetur adipiscing elit. Elementum curabitur vitae nunc sed. Velit euismod in pellentesque massa. Eget nullam non nisi est sit amet. Sodales ut eu sem integer vitae. Sem viverra aliquet eget sit amet tellus. Duis at consectetur lorem donec massa sapien faucibus et. Ac feugiat sed lectus vestibulum mattis ullamcorper velit. Suspendisse faucibus interdum posuere lorem ipsum dolor sit amet. + +Etiam dignissim diam quis enim lobortis scelerisque. Vehicula ipsum a arcu cursus vitae congue mauris rhoncus. Fermentum iaculis eu non diam. Luctus accumsan tortor posuere ac. Vestibulum morbi blandit cursus risus at ultrices. Purus semper eget duis at tellus at urna condimentum. Ac turpis egestas sed tempus urna et pharetra. Ipsum faucibus vitae aliquet nec ullamcorper sit amet risus. Tellus pellentesque eu tincidunt tortor. Habitasse platea dictumst quisque sagittis purus sit amet volutpat. Justo eget magna fermentum iaculis eu. Faucibus interdum posuere lorem ipsum. Enim diam vulputate ut pharetra sit. Venenatis urna cursus eget nunc scelerisque viverra. Placerat in egestas erat imperdiet sed. Elementum integer enim neque volutpat ac tincidunt. Nunc faucibus a pellentesque sit. Faucibus a pellentesque sit amet porttitor eget dolor morbi non. Ultrices vitae auctor eu augue ut. Nunc id cursus metus aliquam eleifend mi in nulla. + +Eros donec ac odio tempor orci dapibus ultrices. Varius sit amet mattis vulputate enim nulla aliquet porttitor. Id faucibus nisl tincidunt eget nullam non nisi est. Ut tortor pretium viverra suspendisse. Urna et pharetra pharetra massa massa ultricies mi. Amet consectetur adipiscing elit pellentesque habitant morbi tristique. Gravida in fermentum et sollicitudin ac. Lorem dolor sed viverra ipsum. Viverra vitae congue eu consequat ac felis. Enim sit amet venenatis urna cursus eget nunc scelerisque viverra. Venenatis tellus in metus vulputate eu scelerisque felis. Sed id semper risus in hendrerit gravida rutrum quisque non. Vestibulum morbi blandit cursus risus at. Eget duis at tellus at urna condimentum mattis pellentesque id. Duis tristique sollicitudin nibh sit amet commodo nulla. Eget nulla facilisi etiam dignissim diam quis enim. + +Accumsan sit amet nulla facilisi morbi tempus. Commodo elit at imperdiet dui accumsan sit. Sed sed risus pretium quam. Duis ut diam quam nulla porttitor massa id neque aliquam. Tincidunt lobortis feugiat vivamus at augue eget. Nulla facilisi etiam dignissim diam quis enim lobortis. Lacus vel facilisis volutpat est velit. Sed egestas egestas fringilla phasellus. Eu mi bibendum neque egestas congue. Vitae semper quis lectus nulla at volutpat. Libero enim sed faucibus turpis in eu mi bibendum neque. + +Nullam vehicula ipsum a arcu cursus. Nisi vitae suscipit tellus mauris a diam. Egestas sed sed risus pretium quam vulputate dignissim suspendisse. Ac auctor augue mauris augue neque gravida. Venenatis tellus in metus vulputate eu. Aliquet nibh praesent tristique magna sit amet purus gravida. Feugiat in ante metus dictum at. Quam adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus urna. Malesuada proin libero nunc consequat interdum varius sit. Sed vulputate mi sit amet. Viverra maecenas accumsan lacus vel facilisis. Adipiscing elit duis tristique sollicitudin. Dignissim cras tincidunt lobortis feugiat vivamus at augue. Tempus iaculis urna id volutpat. Ut eu sem integer vitae justo. Tellus at urna condimentum mattis pellentesque id nibh tortor. Nunc consequat interdum varius sit amet mattis vulputate enim nulla. Neque gravida in fermentum et sollicitudin ac. + +Malesuada bibendum arcu vitae elementum curabitur vitae. Velit laoreet id donec ultrices tincidunt arcu non. Egestas congue quisque egestas diam in arcu cursus euismod quis. Rutrum tellus pellentesque eu tincidunt. Vel risus commodo viverra maecenas accumsan lacus vel facilisis. Netus et malesuada fames ac turpis egestas integer. Leo a diam sollicitudin tempor id eu nisl nunc mi. Scelerisque mauris pellentesque pulvinar pellentesque habitant. Dapibus ultrices in iaculis nunc sed augue lacus viverra vitae. Elementum integer enim neque volutpat ac tincidunt. Facilisi nullam vehicula ipsum a arcu. + +Ultricies integer quis auctor elit sed vulputate mi sit. Aenean sed adipiscing diam donec adipiscing tristique. Purus non enim praesent elementum. Arcu cursus euismod quis viverra nibh cras. Ut venenatis tellus in metus vulputate eu. Adipiscing commodo elit at imperdiet dui accumsan sit amet nulla. Scelerisque viverra mauris in aliquam sem fringilla ut morbi. Mi quis hendrerit dolor magna eget est lorem ipsum dolor. Est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus. Massa sapien faucibus et molestie ac. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Integer quis auctor elit sed vulputate mi sit. Ridiculus mus mauris vitae ultricies leo integer malesuada nunc vel. At tellus at urna condimentum. Eu ultrices vitae auctor eu augue ut lectus arcu. Scelerisque viverra mauris in aliquam sem fringilla ut. Lectus urna duis convallis convallis tellus id interdum velit laoreet. + +Justo donec enim diam vulputate ut pharetra sit amet aliquam. Nullam ac tortor vitae purus faucibus ornare. Senectus et netus et malesuada fames ac turpis egestas. Nulla pellentesque dignissim enim sit amet venenatis urna. At in tellus integer feugiat scelerisque varius morbi. Sollicitudin nibh sit amet commodo nulla facilisi nullam vehicula. Tellus in metus vulputate eu scelerisque felis imperdiet proin fermentum. At quis risus sed vulputate. Adipiscing elit ut aliquam purus sit amet luctus venenatis lectus. Enim lobortis scelerisque fermentum dui. + +Turpis cursus in hac habitasse platea dictumst. Tristique risus nec feugiat in fermentum posuere urna nec. Elementum curabitur vitae nunc sed velit dignissim sodales. Aliquet enim tortor at auctor urna nunc id cursus metus. At augue eget arcu dictum varius duis at consectetur. Sed lectus vestibulum mattis ullamcorper velit sed. Dui nunc mattis enim ut tellus elementum. Porttitor eget dolor morbi non arcu risus quis varius. Enim sed faucibus turpis in eu. Posuere urna nec tincidunt praesent semper feugiat. Feugiat nisl pretium fusce id velit. Habitant morbi tristique senectus et netus et malesuada fames. In nulla posuere sollicitudin aliquam ultrices sagittis orci a. Vitae ultricies leo integer malesuada nunc. Egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. In ornare quam viverra orci sagittis. Maecenas accumsan lacus vel facilisis volutpat. Mauris sit amet massa vitae. Aenean euismod elementum nisi quis eleifend quam adipiscing. Arcu odio ut sem nulla pharetra diam sit amet. + +Ut pharetra sit amet aliquam id diam. Magna ac placerat vestibulum lectus. At augue eget arcu dictum varius duis. Lobortis mattis aliquam faucibus purus in massa tempor nec feugiat. Id neque aliquam vestibulum morbi blandit. Amet massa vitae tortor condimentum lacinia quis vel. Bibendum est ultricies integer quis auctor. Nisl nunc mi ipsum faucibus vitae. Sit amet nulla facilisi morbi tempus iaculis urna id. Elit ut aliquam purus sit amet luctus venenatis. Turpis tincidunt id aliquet risus. Lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit amet. Arcu dictum varius duis at consectetur lorem donec massa. Iaculis urna id volutpat lacus laoreet non curabitur gravida. + +In hac habitasse platea dictumst quisque sagittis purus sit amet. Posuere lorem ipsum dolor sit amet consectetur adipiscing elit duis. Augue interdum velit euismod in pellentesque massa. Nec feugiat in fermentum posuere. Sodales ut etiam sit amet. Leo vel fringilla est ullamcorper eget nulla facilisi. Ipsum dolor sit amet consectetur adipiscing elit ut. Ultrices vitae auctor eu augue ut lectus arcu bibendum at. Id eu nisl nunc mi ipsum. Mauris commodo quis imperdiet massa tincidunt nunc pulvinar. Massa sapien faucibus et molestie. Mauris cursus mattis molestie a iaculis at erat. At tempor commodo ullamcorper a lacus vestibulum sed arcu. Fringilla est ullamcorper eget nulla facilisi etiam. Vitae turpis massa sed elementum tempus egestas sed. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada. Egestas quis ipsum suspendisse ultrices gravida dictum fusce. Consectetur adipiscing elit pellentesque habitant morbi tristique. + +Eget velit aliquet sagittis id. Nisl tincidunt eget nullam non nisi est. Amet aliquam id diam maecenas. Suscipit adipiscing bibendum est ultricies integer quis. Fermentum et sollicitudin ac orci phasellus egestas tellus. Platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim cras. Sed libero enim sed faucibus turpis in eu. Egestas erat imperdiet sed euismod. Nec nam aliquam sem et tortor consequat. Dolor purus non enim praesent elementum facilisis leo vel. Cras ornare arcu dui vivamus arcu felis. Justo laoreet sit amet cursus. Gravida rutrum quisque non tellus orci ac auctor augue. Sagittis orci a scelerisque purus semper eget. Consectetur adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Enim sit amet venenatis urna cursus eget nunc scelerisque. Eget duis at tellus at urna condimentum mattis pellentesque. Vitae purus faucibus ornare suspendisse. + +Sit amet nisl purus in mollis nunc sed id. Commodo odio aenean sed adipiscing diam donec adipiscing tristique risus. Nibh nisl condimentum id venenatis a. Ultrices eros in cursus turpis massa tincidunt dui ut ornare. Libero id faucibus nisl tincidunt eget nullam non nisi est. Ultricies mi eget mauris pharetra et ultrices neque ornare aenean. Velit aliquet sagittis id consectetur purus ut faucibus pulvinar. Eget mi proin sed libero enim sed faucibus turpis in. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. At quis risus sed vulputate odio ut enim blandit volutpat. Pulvinar elementum integer enim neque volutpat ac tincidunt vitae semper. Netus et malesuada fames ac turpis egestas sed tempus urna. Metus vulputate eu scelerisque felis imperdiet proin fermentum leo vel. Nisi lacus sed viverra tellus in hac. Amet aliquam id diam maecenas ultricies mi eget mauris pharetra. Tincidunt lobortis feugiat vivamus at augue. Sed risus pretium quam vulputate dignissim suspendisse. Morbi tempus iaculis urna id volutpat. + +Lobortis scelerisque fermentum dui faucibus in ornare quam viverra. Duis convallis convallis tellus id interdum velit laoreet id. Aliquam nulla facilisi cras fermentum odio eu feugiat. Sed cras ornare arcu dui vivamus arcu felis. Vitae congue mauris rhoncus aenean vel elit. Ipsum consequat nisl vel pretium lectus quam id. Nulla at volutpat diam ut venenatis tellus in. Nunc lobortis mattis aliquam faucibus purus in. Habitant morbi tristique senectus et netus et malesuada fames. Neque egestas congue quisque egestas diam in arcu. Phasellus egestas tellus rutrum tellus pellentesque eu. + +Sollicitudin nibh sit amet commodo. Elit at imperdiet dui accumsan sit amet. A iaculis at erat pellentesque adipiscing commodo elit at. Ultrices dui sapien eget mi proin sed libero enim. Ultricies leo integer malesuada nunc vel risus commodo viverra. Nulla posuere sollicitudin aliquam ultrices sagittis orci. Lectus magna fringilla urna porttitor rhoncus dolor purus non enim. Fringilla phasellus faucibus scelerisque eleifend donec pretium. Rhoncus est pellentesque elit ullamcorper dignissim cras tincidunt. Lobortis feugiat vivamus at augue eget. Neque egestas congue quisque egestas diam in arcu cursus euismod. A scelerisque purus semper eget duis at tellus at. Habitant morbi tristique senectus et netus et malesuada. Enim nunc faucibus a pellentesque. + +At risus viverra adipiscing at in tellus integer feugiat. Quis commodo odio aenean sed adipiscing diam donec adipiscing tristique. Consequat id porta nibh venenatis cras. Arcu non sodales neque sodales ut etiam sit. Posuere sollicitudin aliquam ultrices sagittis. Ut morbi tincidunt augue interdum velit. Ultrices eros in cursus turpis. Nulla facilisi nullam vehicula ipsum a arcu. Eu turpis egestas pretium aenean pharetra magna ac placerat. Ridiculus mus mauris vitae ultricies leo integer malesuada nunc. Enim ut tellus elementum sagittis. Adipiscing bibendum est ultricies integer quis auctor. Feugiat sed lectus vestibulum mattis ullamcorper velit. Nullam eget felis eget nunc lobortis mattis. + +Aliquet enim tortor at auctor urna nunc. Vitae congue mauris rhoncus aenean vel elit scelerisque. Senectus et netus et malesuada fames. Scelerisque purus semper eget duis. Ultrices dui sapien eget mi proin sed libero. Dui id ornare arcu odio ut sem nulla pharetra. Libero id faucibus nisl tincidunt. Lorem ipsum dolor sit amet consectetur adipiscing elit ut aliquam. Risus nullam eget felis eget nunc lobortis mattis aliquam faucibus. Volutpat commodo sed egestas egestas fringilla phasellus faucibus. Elementum curabitur vitae nunc sed velit dignissim sodales ut eu. Est velit egestas dui id ornare arcu odio ut sem. Leo a diam sollicitudin tempor id eu nisl nunc. + +Sit amet luctus venenatis lectus magna fringilla urna porttitor rhoncus. Suspendisse in est ante in nibh mauris. Diam quam nulla porttitor massa. Ultrices eros in cursus turpis massa tincidunt dui. Odio tempor orci dapibus ultrices in iaculis. Integer malesuada nunc vel risus. Dictum non consectetur a erat. Sed nisi lacus sed viverra tellus. Laoreet sit amet cursus sit amet. Et tortor at risus viverra adipiscing. Elementum facilisis leo vel fringilla est ullamcorper eget nulla facilisi. + +Tellus rutrum tellus pellentesque eu tincidunt tortor. Sit amet nulla facilisi morbi tempus. In fermentum posuere urna nec tincidunt. Orci nulla pellentesque dignissim enim sit amet. Vel pretium lectus quam id leo in. Viverra vitae congue eu consequat ac. Nunc consequat interdum varius sit. Leo urna molestie at elementum eu facilisis. Est pellentesque elit ullamcorper dignissim cras tincidunt. Eu turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Enim sed faucibus turpis in eu mi bibendum neque. Tincidunt augue interdum velit euismod in pellentesque massa placerat duis. Egestas sed sed risus pretium quam. Pellentesque diam volutpat commodo sed egestas. + +Nulla facilisi cras fermentum odio eu feugiat. Nec feugiat nisl pretium fusce id velit ut tortor. Nulla at volutpat diam ut venenatis tellus. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. Non diam phasellus vestibulum lorem sed risus ultricies tristique nulla. Egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam. Ultrices dui sapien eget mi proin sed libero enim. Ac orci phasellus egestas tellus. Quam quisque id diam vel. Faucibus in ornare quam viverra orci sagittis eu volutpat odio. Cursus turpis massa tincidunt dui ut ornare lectus sit. Justo eget magna fermentum iaculis eu non. + +Tellus id interdum velit laoreet id donec ultrices tincidunt. Ultrices gravida dictum fusce ut. Eu lobortis elementum nibh tellus molestie nunc. Risus quis varius quam quisque id diam. Commodo elit at imperdiet dui accumsan. Hac habitasse platea dictumst vestibulum. Ut ornare lectus sit amet est placerat in egestas. Leo duis ut diam quam nulla porttitor. Porttitor leo a diam sollicitudin. Id aliquet risus feugiat in. Adipiscing enim eu turpis egestas pretium aenean pharetra magna. Nunc congue nisi vitae suscipit tellus. Dictumst quisque sagittis purus sit. Quam pellentesque nec nam aliquam sem et. Integer eget aliquet nibh praesent tristique magna sit amet purus. Vulputate ut pharetra sit amet aliquam id diam maecenas. Risus ultricies tristique nulla aliquet. Sodales ut eu sem integer vitae justo eget magna. Tempor orci dapibus ultrices in iaculis nunc sed. + +Neque ornare aenean euismod elementum nisi quis. Aliquam faucibus purus in massa tempor nec feugiat. Libero id faucibus nisl tincidunt eget. Magna sit amet purus gravida quis. Suspendisse sed nisi lacus sed viverra tellus in hac habitasse. Enim tortor at auctor urna. Tellus at urna condimentum mattis. Fames ac turpis egestas sed tempus urna et. Habitant morbi tristique senectus et netus et malesuada fames ac. Pretium fusce id velit ut tortor pretium. Elementum eu facilisis sed odio. Posuere sollicitudin aliquam ultrices sagittis orci. Et malesuada fames ac turpis egestas maecenas pharetra convallis posuere. Elementum facilisis leo vel fringilla. Dolor sed viverra ipsum nunc aliquet bibendum. + +Dis parturient montes nascetur ridiculus mus mauris vitae. Scelerisque in dictum non consectetur a erat nam at lectus. Mi tempus imperdiet nulla malesuada. Et malesuada fames ac turpis egestas sed tempus urna. Porttitor leo a diam sollicitudin tempor id eu nisl nunc. Dolor sit amet consectetur adipiscing elit ut aliquam. Lobortis scelerisque fermentum dui faucibus in ornare quam. Morbi tristique senectus et netus et malesuada fames ac. Vitae purus faucibus ornare suspendisse sed nisi lacus sed viverra. Placerat duis ultricies lacus sed. Ornare aenean euismod elementum nisi quis eleifend quam adipiscing vitae. Consequat id porta nibh venenatis cras sed felis eget velit. Tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin libero. Vel quam elementum pulvinar etiam non quam lacus suspendisse. Etiam tempor orci eu lobortis elementum nibh tellus. Convallis aenean et tortor at risus viverra adipiscing at in. Sed sed risus pretium quam vulputate dignissim suspendisse in. Ultrices mi tempus imperdiet nulla malesuada pellentesque elit eget gravida. + +Viverra accumsan in nisl nisi scelerisque. Id faucibus nisl tincidunt eget nullam. Velit dignissim sodales ut eu sem integer vitae justo eget. Nunc sed id semper risus in hendrerit gravida rutrum. Et tortor at risus viverra adipiscing at. Euismod in pellentesque massa placerat duis ultricies. Viverra aliquet eget sit amet tellus cras. Nisi est sit amet facilisis magna etiam tempor orci eu. Vulputate mi sit amet mauris commodo quis imperdiet massa. Cursus turpis massa tincidunt dui ut ornare lectus sit amet. Enim sed faucibus turpis in eu mi bibendum neque egestas. Pellentesque nec nam aliquam sem et tortor consequat id porta. Tincidunt id aliquet risus feugiat in ante. Faucibus scelerisque eleifend donec pretium vulputate. Mauris pharetra et ultrices neque ornare aenean euismod. Id interdum velit laoreet id donec ultrices tincidunt arcu non. + +Sodales ut etiam sit amet nisl purus in mollis. Tristique nulla aliquet enim tortor at auctor urna. Pulvinar pellentesque habitant morbi tristique senectus et netus et. Accumsan tortor posuere ac ut. Egestas quis ipsum suspendisse ultrices. Leo in vitae turpis massa sed elementum tempus egestas sed. Tincidunt augue interdum velit euismod in. Euismod quis viverra nibh cras pulvinar mattis nunc sed. Tellus id interdum velit laoreet id donec. Turpis tincidunt id aliquet risus feugiat. In arcu cursus euismod quis viverra nibh cras. Sagittis purus sit amet volutpat consequat mauris nunc. Velit egestas dui id ornare arcu odio ut sem. Facilisis gravida neque convallis a cras semper auctor neque vitae. Pharetra et ultrices neque ornare aenean euismod. Auctor eu augue ut lectus. Augue eget arcu dictum varius. Volutpat consequat mauris nunc congue nisi vitae suscipit tellus. Auctor urna nunc id cursus metus aliquam eleifend mi. + +Pharetra magna ac placerat vestibulum lectus mauris ultrices eros in. Egestas sed sed risus pretium quam vulputate dignissim. Risus viverra adipiscing at in tellus integer. Nec feugiat nisl pretium fusce. Ac turpis egestas maecenas pharetra. Nibh mauris cursus mattis molestie a iaculis at. Metus vulputate eu scelerisque felis imperdiet. Ut placerat orci nulla pellentesque dignissim enim sit. Elit scelerisque mauris pellentesque pulvinar pellentesque. Tortor id aliquet lectus proin nibh nisl condimentum id. Dui sapien eget mi proin sed libero. Sed tempus urna et pharetra pharetra massa massa ultricies mi. Mauris cursus mattis molestie a. Commodo ullamcorper a lacus vestibulum sed arcu. Nunc mattis enim ut tellus elementum sagittis vitae. Pellentesque massa placerat duis ultricies lacus sed turpis tincidunt. Tristique magna sit amet purus gravida. Odio facilisis mauris sit amet massa vitae tortor. + +Semper auctor neque vitae tempus quam pellentesque nec nam aliquam. Orci eu lobortis elementum nibh tellus molestie nunc non blandit. Vitae et leo duis ut diam quam. Ac tortor dignissim convallis aenean et tortor at risus viverra. Sit amet est placerat in egestas erat imperdiet. Quam vulputate dignissim suspendisse in est ante. Nunc vel risus commodo viverra maecenas accumsan lacus vel. Pellentesque id nibh tortor id aliquet lectus proin nibh. Ornare arcu odio ut sem. Sapien faucibus et molestie ac feugiat sed lectus vestibulum. Vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant. Imperdiet massa tincidunt nunc pulvinar sapien. Congue eu consequat ac felis. Commodo nulla facilisi nullam vehicula ipsum a arcu. Purus semper eget duis at tellus at urna. Id ornare arcu odio ut sem nulla. Nisi scelerisque eu ultrices vitae. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Duis at consectetur lorem donec massa sapien. Aliquet lectus proin nibh nisl condimentum id. + +Aliquam id diam maecenas ultricies mi eget mauris pharetra et. Sodales ut etiam sit amet nisl purus in mollis. Convallis aenean et tortor at risus viverra adipiscing. Lorem dolor sed viverra ipsum nunc aliquet bibendum enim facilisis. Nulla facilisi morbi tempus iaculis urna id volutpat lacus. Facilisi cras fermentum odio eu feugiat. Aliquam sem et tortor consequat id porta nibh venenatis. Donec ac odio tempor orci dapibus ultrices in iaculis. Lorem donec massa sapien faucibus et molestie. Nec sagittis aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Dui accumsan sit amet nulla facilisi. Est lorem ipsum dolor sit. Auctor eu augue ut lectus arcu bibendum at. Lobortis mattis aliquam faucibus purus in massa tempor nec. Eleifend mi in nulla posuere sollicitudin aliquam ultrices. + +In nulla posuere sollicitudin aliquam ultrices sagittis. At tempor commodo ullamcorper a lacus vestibulum. Curabitur vitae nunc sed velit dignissim sodales ut eu sem. Cursus turpis massa tincidunt dui ut. Vel pharetra vel turpis nunc eget lorem dolor sed. Morbi tristique senectus et netus et. Accumsan in nisl nisi scelerisque eu ultrices vitae auctor eu. Aliquam sem et tortor consequat id porta. Lacus laoreet non curabitur gravida arcu ac tortor. Quam lacus suspendisse faucibus interdum posuere lorem. Tempus urna et pharetra pharetra massa massa ultricies mi quis. Justo laoreet sit amet cursus sit amet dictum. + +Adipiscing tristique risus nec feugiat in. Augue interdum velit euismod in pellentesque massa placerat. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Netus et malesuada fames ac turpis egestas. Elementum nisi quis eleifend quam adipiscing vitae. Non nisi est sit amet facilisis. Gravida in fermentum et sollicitudin ac orci phasellus egestas. Aliquet lectus proin nibh nisl condimentum. Commodo elit at imperdiet dui accumsan sit amet. Nulla facilisi etiam dignissim diam quis enim lobortis scelerisque. Egestas quis ipsum suspendisse ultrices gravida dictum fusce. Nisl pretium fusce id velit ut. Non tellus orci ac auctor augue mauris augue. Mi in nulla posuere sollicitudin aliquam ultrices sagittis orci a. Gravida quis blandit turpis cursus in hac habitasse. + +Non sodales neque sodales ut. Varius vel pharetra vel turpis nunc eget lorem dolor. Magnis dis parturient montes nascetur ridiculus mus mauris vitae. Arcu cursus euismod quis viverra. Aliquam eleifend mi in nulla posuere sollicitudin. Volutpat blandit aliquam etiam erat velit scelerisque in dictum. Sagittis orci a scelerisque purus semper eget. Consectetur a erat nam at lectus urna. Vitae et leo duis ut. Vitae sapien pellentesque habitant morbi tristique senectus et netus. In metus vulputate eu scelerisque felis imperdiet proin fermentum. Sapien faucibus et molestie ac feugiat sed. Cum sociis natoque penatibus et. Fermentum leo vel orci porta non pulvinar neque. Laoreet non curabitur gravida arcu. Risus in hendrerit gravida rutrum quisque non. In mollis nunc sed id semper risus in hendrerit gravida. Etiam tempor orci eu lobortis elementum nibh tellus molestie nunc. + +Felis imperdiet proin fermentum leo vel orci porta. Urna molestie at elementum eu facilisis. Tortor dignissim convallis aenean et tortor at risus. Risus in hendrerit gravida rutrum quisque non. Turpis nunc eget lorem dolor sed. At urna condimentum mattis pellentesque id nibh. Cras semper auctor neque vitae tempus quam. A pellentesque sit amet porttitor eget dolor. Lobortis mattis aliquam faucibus purus in massa. Tempor nec feugiat nisl pretium fusce. Tempus imperdiet nulla malesuada pellentesque elit eget. In tellus integer feugiat scelerisque. Pharetra sit amet aliquam id. Scelerisque in dictum non consectetur a erat nam. Risus sed vulputate odio ut enim blandit volutpat maecenas. Sed augue lacus viverra vitae congue eu. Facilisis mauris sit amet massa vitae tortor condimentum. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque. Sed enim ut sem viverra aliquet eget sit amet. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae. + +Sagittis orci a scelerisque purus semper eget duis. Accumsan sit amet nulla facilisi morbi tempus iaculis. Sollicitudin tempor id eu nisl nunc mi. Id venenatis a condimentum vitae sapien pellentesque habitant morbi. Morbi blandit cursus risus at ultrices mi. Nec feugiat nisl pretium fusce id velit ut. Cras fermentum odio eu feugiat pretium nibh ipsum consequat. Gravida cum sociis natoque penatibus. Sed turpis tincidunt id aliquet risus feugiat in. Enim blandit volutpat maecenas volutpat blandit. + +Placerat duis ultricies lacus sed turpis tincidunt id. Sapien eget mi proin sed libero enim sed faucibus. Tellus in hac habitasse platea dictumst vestibulum rhoncus. Quam vulputate dignissim suspendisse in est. Facilisis leo vel fringilla est ullamcorper eget nulla facilisi etiam. Leo urna molestie at elementum eu facilisis sed odio morbi. Lorem dolor sed viverra ipsum nunc aliquet bibendum. Turpis tincidunt id aliquet risus feugiat in ante metus dictum. Consectetur lorem donec massa sapien faucibus et molestie ac. Pellentesque habitant morbi tristique senectus et netus et malesuada. Donec massa sapien faucibus et molestie ac feugiat. Malesuada fames ac turpis egestas maecenas pharetra. Porttitor leo a diam sollicitudin tempor. Turpis egestas sed tempus urna et pharetra. Odio eu feugiat pretium nibh ipsum consequat nisl vel pretium. + +A scelerisque purus semper eget duis at. Ut eu sem integer vitae justo eget. Sed sed risus pretium quam vulputate. Amet nisl suscipit adipiscing bibendum est. Fermentum posuere urna nec tincidunt praesent. Quam vulputate dignissim suspendisse in est. Ultrices tincidunt arcu non sodales neque sodales ut. Magna fermentum iaculis eu non diam phasellus. Platea dictumst quisque sagittis purus sit amet volutpat consequat mauris. Dictum fusce ut placerat orci nulla pellentesque dignissim enim. Pharetra massa massa ultricies mi quis hendrerit dolor magna. Sit amet massa vitae tortor condimentum lacinia. + +Tristique nulla aliquet enim tortor at auctor urna nunc id. Auctor eu augue ut lectus arcu bibendum. Pretium quam vulputate dignissim suspendisse in. In cursus turpis massa tincidunt dui. Sit amet tellus cras adipiscing enim eu turpis egestas. Morbi tristique senectus et netus. Massa ultricies mi quis hendrerit dolor magna eget. Eget egestas purus viverra accumsan in nisl nisi scelerisque. Ornare quam viverra orci sagittis eu volutpat odio facilisis mauris. Diam donec adipiscing tristique risus nec. Imperdiet dui accumsan sit amet nulla facilisi morbi tempus iaculis. Egestas integer eget aliquet nibh praesent tristique magna. Habitasse platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper. Dignissim convallis aenean et tortor at risus viverra. In mollis nunc sed id semper risus. + +Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant. Sagittis purus sit amet volutpat consequat mauris. Morbi quis commodo odio aenean sed adipiscing diam donec. Mattis aliquam faucibus purus in massa tempor nec feugiat nisl. Eu tincidunt tortor aliquam nulla facilisi cras fermentum odio. Diam quam nulla porttitor massa id neque aliquam. Non sodales neque sodales ut etiam sit amet nisl purus. Et sollicitudin ac orci phasellus egestas tellus rutrum tellus pellentesque. Mi proin sed libero enim sed faucibus turpis. Faucibus et molestie ac feugiat sed. Sed libero enim sed faucibus turpis in. Risus commodo viverra maecenas accumsan lacus vel facilisis volutpat. Velit dignissim sodales ut eu sem integer vitae justo eget. Pulvinar sapien et ligula ullamcorper malesuada proin. Sodales ut eu sem integer vitae justo eget magna. + +Faucibus scelerisque eleifend donec pretium. Adipiscing enim eu turpis egestas pretium aenean pharetra magna ac. Sapien pellentesque habitant morbi tristique senectus et netus. Suscipit adipiscing bibendum est ultricies integer quis auctor elit. Ut tristique et egestas quis. Vulputate ut pharetra sit amet aliquam id. Augue eget arcu dictum varius duis at. Ipsum dolor sit amet consectetur. Arcu dictum varius duis at consectetur lorem donec. Nec nam aliquam sem et tortor. Velit sed ullamcorper morbi tincidunt ornare massa. Tristique magna sit amet purus gravida quis blandit turpis. Sit amet nisl purus in mollis nunc sed id. Tellus cras adipiscing enim eu turpis egestas pretium. Aliquam id diam maecenas ultricies mi eget mauris. Sed egestas egestas fringilla phasellus faucibus scelerisque. + +Molestie a iaculis at erat pellentesque adipiscing commodo elit at. Scelerisque eleifend donec pretium vulputate sapien. Non diam phasellus vestibulum lorem sed risus ultricies tristique. Elit duis tristique sollicitudin nibh sit amet commodo nulla. Magna eget est lorem ipsum dolor sit amet consectetur adipiscing. Adipiscing elit ut aliquam purus sit amet luctus venenatis. Vivamus arcu felis bibendum ut tristique. Enim nulla aliquet porttitor lacus. Sit amet venenatis urna cursus eget nunc. Aliquam id diam maecenas ultricies. At urna condimentum mattis pellentesque id nibh. Feugiat in ante metus dictum at tempor commodo ullamcorper a. Scelerisque felis imperdiet proin fermentum leo vel orci. Purus non enim praesent elementum facilisis leo. Suspendisse sed nisi lacus sed viverra tellus in hac habitasse. Nunc id cursus metus aliquam. + +Pulvinar proin gravida hendrerit lectus a. Et leo duis ut diam quam nulla porttitor massa id. Lacus viverra vitae congue eu consequat ac. Pretium vulputate sapien nec sagittis aliquam malesuada bibendum arcu. At risus viverra adipiscing at in tellus integer. Viverra vitae congue eu consequat ac felis donec et. Bibendum arcu vitae elementum curabitur vitae nunc. Viverra ipsum nunc aliquet bibendum. Arcu vitae elementum curabitur vitae nunc sed velit dignissim. Viverra nibh cras pulvinar mattis nunc sed blandit libero. Imperdiet massa tincidunt nunc pulvinar sapien et ligula ullamcorper. Facilisi nullam vehicula ipsum a arcu. Maecenas ultricies mi eget mauris pharetra et ultrices neque ornare. + +Velit aliquet sagittis id consectetur purus. Non consectetur a erat nam at lectus urna duis. Vulputate sapien nec sagittis aliquam. Pulvinar pellentesque habitant morbi tristique senectus et. In massa tempor nec feugiat. Morbi tristique senectus et netus et malesuada fames ac. Morbi leo urna molestie at elementum. Ullamcorper sit amet risus nullam eget felis eget. Id nibh tortor id aliquet lectus proin. Praesent tristique magna sit amet purus gravida. Nunc consequat interdum varius sit amet mattis vulputate enim. Egestas tellus rutrum tellus pellentesque eu tincidunt. Vel elit scelerisque mauris pellentesque pulvinar. Nulla posuere sollicitudin aliquam ultrices. Tempor id eu nisl nunc mi ipsum faucibus vitae. Viverra orci sagittis eu volutpat odio facilisis mauris sit amet. + +Nullam vehicula ipsum a arcu cursus. Id consectetur purus ut faucibus. Faucibus purus in massa tempor nec feugiat nisl pretium. Et molestie ac feugiat sed lectus vestibulum mattis. Elit pellentesque habitant morbi tristique senectus et netus. Proin fermentum leo vel orci porta non pulvinar neque. Nulla facilisi etiam dignissim diam quis enim lobortis. Id diam vel quam elementum pulvinar etiam non quam. Nullam vehicula ipsum a arcu cursus. Ut diam quam nulla porttitor massa id neque aliquam. Tellus in metus vulputate eu. A erat nam at lectus urna duis. Sagittis aliquam malesuada bibendum arcu vitae elementum curabitur. Ante in nibh mauris cursus mattis molestie. Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi. Tempor orci dapibus ultrices in iaculis nunc sed augue. Vulputate odio ut enim blandit volutpat maecenas. Egestas quis ipsum suspendisse ultrices gravida dictum. + +Porttitor eget dolor morbi non arcu risus quis varius quam. Vitae aliquet nec ullamcorper sit amet risus. Mauris cursus mattis molestie a iaculis. Placerat duis ultricies lacus sed turpis tincidunt. Pulvinar pellentesque habitant morbi tristique senectus et. Et pharetra pharetra massa massa ultricies. Quam id leo in vitae. Nisi lacus sed viverra tellus in hac. Nisl vel pretium lectus quam id. Sed blandit libero volutpat sed cras ornare. Lobortis scelerisque fermentum dui faucibus in ornare quam. Turpis egestas maecenas pharetra convallis posuere morbi leo urna. Suspendisse in est ante in nibh mauris cursus. Habitasse platea dictumst quisque sagittis purus. Massa massa ultricies mi quis hendrerit. Bibendum est ultricies integer quis auctor elit sed vulputate. At augue eget arcu dictum varius. Pharetra vel turpis nunc eget lorem dolor sed. Vitae turpis massa sed elementum tempus egestas sed sed. + +Sit amet aliquam id diam maecenas ultricies mi eget mauris. Ut tortor pretium viverra suspendisse potenti. Gravida quis blandit turpis cursus in. Faucibus interdum posuere lorem ipsum. Lacus vestibulum sed arcu non odio. Elementum sagittis vitae et leo duis ut diam quam. Risus at ultrices mi tempus. Elit sed vulputate mi sit amet mauris commodo. Arcu cursus vitae congue mauris rhoncus aenean vel. Id velit ut tortor pretium viverra suspendisse. Morbi non arcu risus quis. Id cursus metus aliquam eleifend mi in nulla. + +Tellus elementum sagittis vitae et leo duis. Vel elit scelerisque mauris pellentesque. Morbi tristique senectus et netus et malesuada fames ac. Cras ornare arcu dui vivamus arcu felis bibendum. Et ligula ullamcorper malesuada proin libero nunc consequat interdum. Volutpat odio facilisis mauris sit amet massa vitae tortor. Viverra adipiscing at in tellus integer. Purus viverra accumsan in nisl nisi scelerisque. In massa tempor nec feugiat nisl pretium fusce id. Aenean et tortor at risus viverra adipiscing at in. Eget nunc scelerisque viverra mauris in. Aliquet nec ullamcorper sit amet risus nullam. Tristique magna sit amet purus gravida quis blandit turpis cursus. + +Arcu dictum varius duis at consectetur. Proin sed libero enim sed faucibus. Faucibus pulvinar elementum integer enim neque volutpat. Faucibus et molestie ac feugiat sed. Sodales ut etiam sit amet nisl purus in. Vivamus arcu felis bibendum ut tristique et. Elementum tempus egestas sed sed risus pretium. In arcu cursus euismod quis viverra nibh cras. Eget est lorem ipsum dolor sit. Volutpat lacus laoreet non curabitur gravida arcu ac tortor. Pellentesque dignissim enim sit amet venenatis urna cursus. Id interdum velit laoreet id donec ultrices. + +Nisl condimentum id venenatis a condimentum vitae sapien pellentesque habitant. Et magnis dis parturient montes nascetur ridiculus mus. Luctus accumsan tortor posuere ac ut consequat semper viverra. Ac odio tempor orci dapibus ultrices. Leo urna molestie at elementum eu facilisis sed odio morbi. Quis enim lobortis scelerisque fermentum dui faucibus in ornare quam. Adipiscing elit ut aliquam purus sit. Etiam non quam lacus suspendisse faucibus interdum posuere lorem ipsum. Gravida quis blandit turpis cursus in. Id ornare arcu odio ut sem. Morbi enim nunc faucibus a pellentesque sit amet. At consectetur lorem donec massa sapien faucibus et molestie ac. + +Aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc. In vitae turpis massa sed elementum tempus egestas. Enim sit amet venenatis urna cursus eget nunc scelerisque viverra. Dictum fusce ut placerat orci nulla pellentesque dignissim. Aenean sed adipiscing diam donec adipiscing tristique risus nec feugiat. Aenean et tortor at risus viverra adipiscing at in tellus. Bibendum at varius vel pharetra vel. Eget arcu dictum varius duis at consectetur lorem donec massa. Odio aenean sed adipiscing diam donec adipiscing tristique risus. Ultrices gravida dictum fusce ut placerat orci nulla pellentesque. Euismod elementum nisi quis eleifend quam. Pellentesque habitant morbi tristique senectus et netus et. Ipsum dolor sit amet consectetur adipiscing elit duis tristique. Mi bibendum neque egestas congue quisque egestas diam in arcu. Enim nulla aliquet porttitor lacus luctus accumsan. Interdum varius sit amet mattis vulputate enim. Scelerisque felis imperdiet proin fermentum leo vel orci. Nec tincidunt praesent semper feugiat. Suspendisse interdum consectetur libero id. Suspendisse sed nisi lacus sed viverra tellus in hac. + +Volutpat maecenas volutpat blandit aliquam. Urna duis convallis convallis tellus id interdum velit laoreet. Proin sed libero enim sed faucibus turpis. Accumsan tortor posuere ac ut consequat semper viverra. Donec et odio pellentesque diam volutpat commodo sed egestas. Dapibus ultrices in iaculis nunc sed. Ipsum dolor sit amet consectetur. Et malesuada fames ac turpis egestas integer eget aliquet. Donec adipiscing tristique risus nec feugiat in fermentum. Cursus metus aliquam eleifend mi in. Vestibulum mattis ullamcorper velit sed ullamcorper. Dui nunc mattis enim ut tellus elementum sagittis vitae et. Aliquam eleifend mi in nulla posuere sollicitudin aliquam ultrices. Posuere ac ut consequat semper. Semper viverra nam libero justo laoreet sit. Vehicula ipsum a arcu cursus vitae. Egestas purus viverra accumsan in nisl nisi scelerisque eu. + +Et netus et malesuada fames ac turpis. Diam donec adipiscing tristique risus nec feugiat in. Semper auctor neque vitae tempus quam pellentesque nec nam aliquam. Varius duis at consectetur lorem donec massa sapien faucibus. Nascetur ridiculus mus mauris vitae ultricies leo. Turpis massa sed elementum tempus egestas sed sed. Tellus cras adipiscing enim eu turpis egestas. Id cursus metus aliquam eleifend mi in nulla posuere. Sit amet mattis vulputate enim nulla aliquet porttitor lacus. Pulvinar proin gravida hendrerit lectus. Porta lorem mollis aliquam ut porttitor. + +Egestas egestas fringilla phasellus faucibus. Congue eu consequat ac felis donec et. Consectetur lorem donec massa sapien faucibus et. Aliquam ultrices sagittis orci a scelerisque purus semper eget. Tortor posuere ac ut consequat semper viverra. Mollis aliquam ut porttitor leo a diam. At urna condimentum mattis pellentesque id nibh tortor. Adipiscing commodo elit at imperdiet dui accumsan sit. Morbi tristique senectus et netus et malesuada. Condimentum mattis pellentesque id nibh tortor id aliquet. Turpis tincidunt id aliquet risus feugiat in ante. A erat nam at lectus. Gravida cum sociis natoque penatibus et magnis dis parturient. Fusce ut placerat orci nulla pellentesque dignissim enim sit. Fringilla ut morbi tincidunt augue interdum velit euismod in. Sit amet luctus venenatis lectus magna fringilla urna porttitor. Enim praesent elementum facilisis leo vel fringilla. + +Suspendisse sed nisi lacus sed viverra tellus in. Suscipit tellus mauris a diam maecenas sed enim ut. Eu turpis egestas pretium aenean pharetra magna ac placerat vestibulum. Risus quis varius quam quisque id diam vel quam. Metus vulputate eu scelerisque felis imperdiet. Augue eget arcu dictum varius duis. Ac turpis egestas integer eget aliquet. Luctus venenatis lectus magna fringilla urna porttitor rhoncus. Enim praesent elementum facilisis leo vel fringilla est. Hendrerit gravida rutrum quisque non tellus orci. Volutpat consequat mauris nunc congue nisi vitae. Ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at augue. + +Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Sit amet risus nullam eget. Id aliquet lectus proin nibh nisl. Curabitur vitae nunc sed velit dignissim sodales ut eu sem. Quisque id diam vel quam elementum pulvinar etiam non. At imperdiet dui accumsan sit amet nulla facilisi morbi tempus. Eget est lorem ipsum dolor. Egestas sed sed risus pretium quam. Odio aenean sed adipiscing diam donec adipiscing. Quisque sagittis purus sit amet volutpat. Consequat mauris nunc congue nisi vitae. Viverra mauris in aliquam sem. Feugiat pretium nibh ipsum consequat nisl. Risus sed vulputate odio ut enim blandit. + +Tristique sollicitudin nibh sit amet commodo nulla. Mattis rhoncus urna neque viverra justo nec. Iaculis eu non diam phasellus vestibulum lorem sed risus. Purus faucibus ornare suspendisse sed nisi lacus sed. Non enim praesent elementum facilisis leo. Viverra maecenas accumsan lacus vel facilisis volutpat est velit egestas. Duis tristique sollicitudin nibh sit amet commodo nulla. Donec massa sapien faucibus et. Rhoncus urna neque viverra justo. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Suscipit adipiscing bibendum est ultricies. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar. Netus et malesuada fames ac turpis egestas sed tempus urna. Auctor neque vitae tempus quam pellentesque nec nam aliquam sem. Ipsum dolor sit amet consectetur adipiscing elit. Proin fermentum leo vel orci porta non pulvinar neque laoreet. + +Eros donec ac odio tempor orci dapibus ultrices. Proin libero nunc consequat interdum varius. Sed augue lacus viverra vitae congue. Pellentesque eu tincidunt tortor aliquam nulla. Gravida cum sociis natoque penatibus et magnis dis parturient montes. Nunc sed blandit libero volutpat sed cras ornare arcu dui. Purus non enim praesent elementum facilisis leo vel fringilla est. Et malesuada fames ac turpis egestas maecenas. Integer enim neque volutpat ac tincidunt vitae semper quis lectus. Amet massa vitae tortor condimentum lacinia quis. Maecenas ultricies mi eget mauris pharetra. + +Dictum at tempor commodo ullamcorper a lacus vestibulum sed. Consequat interdum varius sit amet mattis vulputate enim. Ultricies tristique nulla aliquet enim. Arcu non odio euismod lacinia. Vitae ultricies leo integer malesuada nunc vel risus commodo. Magna ac placerat vestibulum lectus. Morbi blandit cursus risus at ultrices mi tempus imperdiet nulla. Euismod nisi porta lorem mollis aliquam. Quam elementum pulvinar etiam non quam lacus suspendisse. Odio ut sem nulla pharetra diam. Elementum eu facilisis sed odio. + +Phasellus egestas tellus rutrum tellus pellentesque. Cursus turpis massa tincidunt dui ut ornare lectus. Mi in nulla posuere sollicitudin aliquam ultrices sagittis. Rutrum tellus pellentesque eu tincidunt tortor aliquam nulla. Consectetur a erat nam at lectus urna duis convallis. Elementum nibh tellus molestie nunc non blandit massa enim nec. Enim nunc faucibus a pellentesque sit amet porttitor. Turpis massa sed elementum tempus egestas sed sed risus pretium. Id donec ultrices tincidunt arcu non. Sit amet volutpat consequat mauris nunc congue nisi vitae suscipit. Adipiscing at in tellus integer feugiat scelerisque. Sed blandit libero volutpat sed cras. Senectus et netus et malesuada fames ac turpis egestas maecenas. Vel turpis nunc eget lorem. Sed risus pretium quam vulputate dignissim. Nisl tincidunt eget nullam non nisi est sit. + +Ultricies lacus sed turpis tincidunt id. Ultricies tristique nulla aliquet enim tortor. Rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Quam quisque id diam vel quam. Est ante in nibh mauris cursus mattis molestie a. Fermentum odio eu feugiat pretium nibh ipsum consequat nisl vel. Diam vulputate ut pharetra sit amet aliquam. Sit amet cursus sit amet. Pharetra vel turpis nunc eget lorem dolor sed viverra. Mollis nunc sed id semper risus. + +Diam donec adipiscing tristique risus nec. Vivamus arcu felis bibendum ut tristique et egestas quis. Elementum curabitur vitae nunc sed velit dignissim sodales ut. A iaculis at erat pellentesque adipiscing. Quam lacus suspendisse faucibus interdum. Massa eget egestas purus viverra accumsan in. Potenti nullam ac tortor vitae purus. Sodales ut eu sem integer. Tempor commodo ullamcorper a lacus vestibulum sed arcu. Eget aliquet nibh praesent tristique magna sit amet. Vel orci porta non pulvinar neque. Sodales ut etiam sit amet nisl purus. Pharetra sit amet aliquam id diam maecenas. Sit amet facilisis magna etiam tempor orci. + +Dignissim suspendisse in est ante in nibh. Interdum varius sit amet mattis vulputate enim nulla. Ante metus dictum at tempor commodo. Nunc non blandit massa enim nec. Sem integer vitae justo eget magna fermentum iaculis eu. In eu mi bibendum neque egestas congue quisque. Tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra. Pellentesque elit eget gravida cum sociis natoque. Porttitor massa id neque aliquam vestibulum. Nulla pharetra diam sit amet nisl suscipit adipiscing bibendum est. + +Porttitor leo a diam sollicitudin tempor id. Pulvinar neque laoreet suspendisse interdum consectetur libero id faucibus. Dolor morbi non arcu risus quis varius quam. Risus in hendrerit gravida rutrum quisque non tellus orci. Fames ac turpis egestas maecenas. Parturient montes nascetur ridiculus mus mauris vitae ultricies. Auctor eu augue ut lectus arcu bibendum. Porta non pulvinar neque laoreet suspendisse interdum consectetur libero. Ipsum dolor sit amet consectetur adipiscing. Rhoncus dolor purus non enim. Orci dapibus ultrices in iaculis nunc. Ipsum consequat nisl vel pretium. + +Dolor sit amet consectetur adipiscing elit ut. Leo duis ut diam quam nulla porttitor massa id. Cras adipiscing enim eu turpis egestas pretium aenean. Libero justo laoreet sit amet. Imperdiet sed euismod nisi porta lorem. Amet consectetur adipiscing elit pellentesque habitant morbi. Eget duis at tellus at urna condimentum mattis pellentesque id. Id aliquet lectus proin nibh nisl condimentum id venenatis a. Volutpat diam ut venenatis tellus in metus vulputate eu. Aenean sed adipiscing diam donec. Risus in hendrerit gravida rutrum quisque. Sed arcu non odio euismod lacinia at quis risus sed. Duis ultricies lacus sed turpis tincidunt. + +Quam pellentesque nec nam aliquam sem et tortor consequat. Aliquet risus feugiat in ante metus dictum at. Libero justo laoreet sit amet cursus sit. Leo in vitae turpis massa sed elementum. Nisi vitae suscipit tellus mauris a diam maecenas sed enim. Vel turpis nunc eget lorem. Dolor purus non enim praesent elementum facilisis leo vel fringilla. Gravida rutrum quisque non tellus orci ac. Laoreet id donec ultrices tincidunt arcu non sodales neque sodales. Pretium nibh ipsum consequat nisl vel pretium lectus quam id. Ut tellus elementum sagittis vitae et. Netus et malesuada fames ac turpis egestas. Enim ut tellus elementum sagittis. Consectetur lorem donec massa sapien faucibus et molestie ac feugiat. Feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Consectetur adipiscing elit duis tristique sollicitudin. Elit at imperdiet dui accumsan sit amet nulla facilisi. Porttitor massa id neque aliquam vestibulum morbi. Pharetra pharetra massa massa ultricies mi quis. + +Magna etiam tempor orci eu lobortis elementum nibh tellus. Imperdiet dui accumsan sit amet nulla facilisi morbi tempus. Sit amet est placerat in egestas erat. Ridiculus mus mauris vitae ultricies. Varius sit amet mattis vulputate enim nulla aliquet. Non quam lacus suspendisse faucibus interdum. Mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar. Vestibulum lectus mauris ultrices eros in cursus turpis. Consectetur lorem donec massa sapien faucibus et. Lectus quam id leo in. Sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec. Fames ac turpis egestas sed tempus urna et pharetra. Risus ultricies tristique nulla aliquet enim tortor at auctor urna. + +Proin sagittis nisl rhoncus mattis rhoncus urna neque. Ac odio tempor orci dapibus ultrices in iaculis nunc sed. Nunc eget lorem dolor sed viverra ipsum nunc aliquet. Magna ac placerat vestibulum lectus mauris. Tincidunt tortor aliquam nulla facilisi cras fermentum. Laoreet id donec ultrices tincidunt arcu non sodales neque. Pellentesque massa placerat duis ultricies lacus. Nisl condimentum id venenatis a condimentum vitae sapien pellentesque. Nulla facilisi nullam vehicula ipsum a arcu cursus vitae. Nullam vehicula ipsum a arcu. Vulputate mi sit amet mauris commodo quis imperdiet massa tincidunt. Justo eget magna fermentum iaculis eu non diam phasellus vestibulum. Dictum sit amet justo donec enim diam vulputate ut. + +Sit amet consectetur adipiscing elit ut aliquam. Eu consequat ac felis donec et odio pellentesque diam volutpat. Tristique sollicitudin nibh sit amet. Nibh cras pulvinar mattis nunc sed. Fringilla ut morbi tincidunt augue interdum. Non nisi est sit amet facilisis magna etiam tempor. Ac orci phasellus egestas tellus rutrum. Volutpat sed cras ornare arcu dui vivamus arcu. Et tortor at risus viverra adipiscing at. Tortor dignissim convallis aenean et tortor at risus viverra adipiscing. Sagittis eu volutpat odio facilisis mauris sit amet massa vitae. Sit amet facilisis magna etiam tempor orci. Sagittis eu volutpat odio facilisis mauris. Commodo odio aenean sed adipiscing diam donec. Egestas fringilla phasellus faucibus scelerisque eleifend donec pretium vulputate sapien. Netus et malesuada fames ac turpis egestas sed tempus. Ut sem viverra aliquet eget sit amet tellus cras. Tempor id eu nisl nunc mi ipsum faucibus vitae aliquet. Metus dictum at tempor commodo ullamcorper. Volutpat sed cras ornare arcu dui. + +Euismod nisi porta lorem mollis. Mauris vitae ultricies leo integer. Id cursus metus aliquam eleifend mi. Massa vitae tortor condimentum lacinia. Non quam lacus suspendisse faucibus interdum posuere lorem. Magna fringilla urna porttitor rhoncus. Nunc congue nisi vitae suscipit tellus mauris. Odio aenean sed adipiscing diam. Sollicitudin ac orci phasellus egestas tellus rutrum tellus. Id aliquet lectus proin nibh nisl condimentum id venenatis. Odio eu feugiat pretium nibh ipsum consequat nisl vel pretium. Ultricies lacus sed turpis tincidunt id aliquet. Nisl purus in mollis nunc sed. Egestas quis ipsum suspendisse ultrices gravida dictum fusce ut placerat. Fames ac turpis egestas integer. Nibh venenatis cras sed felis eget velit aliquet. + +Arcu risus quis varius quam quisque id diam vel. Commodo elit at imperdiet dui accumsan sit amet nulla. Magna fermentum iaculis eu non diam phasellus vestibulum. Cras fermentum odio eu feugiat pretium nibh ipsum consequat. Dui ut ornare lectus sit amet est placerat in egestas. Condimentum id venenatis a condimentum vitae sapien pellentesque. Sed elementum tempus egestas sed sed risus pretium quam vulputate. At ultrices mi tempus imperdiet nulla. Fusce ut placerat orci nulla pellentesque dignissim. In metus vulputate eu scelerisque felis imperdiet proin. Cras semper auctor neque vitae tempus quam pellentesque nec. Neque volutpat ac tincidunt vitae semper quis lectus nulla. Vitae sapien pellentesque habitant morbi tristique senectus et. Mi bibendum neque egestas congue quisque egestas diam. Id leo in vitae turpis massa sed elementum tempus. Imperdiet dui accumsan sit amet nulla facilisi morbi tempus iaculis. Risus commodo viverra maecenas accumsan lacus vel facilisis. + +Rhoncus est pellentesque elit ullamcorper dignissim cras tincidunt lobortis. Morbi tristique senectus et netus et malesuada. Vitae auctor eu augue ut lectus arcu bibendum. Hendrerit gravida rutrum quisque non tellus. In massa tempor nec feugiat nisl pretium fusce id velit. Mauris rhoncus aenean vel elit scelerisque. Habitant morbi tristique senectus et netus et malesuada fames. Turpis nunc eget lorem dolor sed viverra. Tincidunt eget nullam non nisi. Leo integer malesuada nunc vel risus commodo viverra maecenas. Orci nulla pellentesque dignissim enim sit amet venenatis. Sit amet luctus venenatis lectus magna fringilla urna. Eget velit aliquet sagittis id consectetur. Mauris nunc congue nisi vitae. Orci eu lobortis elementum nibh tellus. Semper viverra nam libero justo laoreet sit amet cursus sit. Eget magna fermentum iaculis eu non diam phasellus. Condimentum vitae sapien pellentesque habitant. Senectus et netus et malesuada fames ac turpis egestas. Vel turpis nunc eget lorem dolor sed. + +Massa placerat duis ultricies lacus sed turpis tincidunt. Augue mauris augue neque gravida in fermentum et sollicitudin ac. Eleifend quam adipiscing vitae proin sagittis. Maecenas volutpat blandit aliquam etiam erat velit scelerisque in. Turpis egestas maecenas pharetra convallis posuere morbi leo urna. Senectus et netus et malesuada. Id semper risus in hendrerit gravida. Et tortor at risus viverra adipiscing at in tellus integer. Etiam erat velit scelerisque in dictum. Integer feugiat scelerisque varius morbi enim nunc. Sed elementum tempus egestas sed sed. Risus in hendrerit gravida rutrum quisque non tellus orci. Rhoncus est pellentesque elit ullamcorper dignissim cras. + +Odio aenean sed adipiscing diam donec adipiscing tristique. Mattis rhoncus urna neque viverra justo. Risus at ultrices mi tempus imperdiet nulla malesuada. Malesuada pellentesque elit eget gravida cum. Nunc sed augue lacus viverra vitae congue eu consequat. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Mi ipsum faucibus vitae aliquet nec ullamcorper sit. Iaculis eu non diam phasellus vestibulum lorem sed. Aliquam vestibulum morbi blandit cursus risus at ultrices mi tempus. Potenti nullam ac tortor vitae purus faucibus ornare. Dolor magna eget est lorem ipsum dolor. Sociis natoque penatibus et magnis dis. Felis imperdiet proin fermentum leo vel orci porta non. Tempus iaculis urna id volutpat lacus laoreet non. Nisl rhoncus mattis rhoncus urna neque viverra justo. Dolor sit amet consectetur adipiscing elit duis. Pretium fusce id velit ut tortor pretium viverra suspendisse potenti. Egestas sed tempus urna et pharetra pharetra massa massa. + +Sodales ut eu sem integer. Condimentum vitae sapien pellentesque habitant morbi tristique. Congue eu consequat ac felis donec et. Enim praesent elementum facilisis leo vel fringilla est ullamcorper. Nisl tincidunt eget nullam non nisi est sit amet. Volutpat sed cras ornare arcu dui vivamus. Quis risus sed vulputate odio ut enim. Magna fringilla urna porttitor rhoncus dolor purus non enim. Purus viverra accumsan in nisl nisi scelerisque. Vitae turpis massa sed elementum. Facilisis leo vel fringilla est ullamcorper. Eget duis at tellus at urna condimentum mattis pellentesque id. Risus pretium quam vulputate dignissim. + +Gravida cum sociis natoque penatibus. Amet mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan. Ultrices neque ornare aenean euismod elementum nisi. Malesuada fames ac turpis egestas sed tempus. Tellus pellentesque eu tincidunt tortor aliquam. Massa massa ultricies mi quis hendrerit dolor magna eget est. Dictum at tempor commodo ullamcorper a lacus vestibulum. Montes nascetur ridiculus mus mauris vitae ultricies. Dui ut ornare lectus sit amet est placerat in egestas. Id eu nisl nunc mi. Diam donec adipiscing tristique risus nec feugiat in fermentum posuere. + +Tellus id interdum velit laoreet id donec ultrices tincidunt arcu. Vestibulum lectus mauris ultrices eros in cursus turpis. Turpis egestas pretium aenean pharetra magna. Feugiat vivamus at augue eget arcu dictum varius. At risus viverra adipiscing at in tellus integer feugiat scelerisque. Ut pharetra sit amet aliquam id. Sed risus ultricies tristique nulla aliquet enim tortor at auctor. Ultrices in iaculis nunc sed augue lacus viverra vitae congue. Mauris ultrices eros in cursus turpis massa tincidunt dui ut. Ut venenatis tellus in metus vulputate eu scelerisque felis. Lorem ipsum dolor sit amet consectetur adipiscing elit. Id consectetur purus ut faucibus pulvinar elementum integer enim. Integer quis auctor elit sed vulputate. Quam lacus suspendisse faucibus interdum. Metus dictum at tempor commodo ullamcorper a lacus vestibulum sed. + +Faucibus vitae aliquet nec ullamcorper sit amet. Mauris sit amet massa vitae tortor. Felis imperdiet proin fermentum leo vel orci porta. Nunc aliquet bibendum enim facilisis gravida neque. Ut sem nulla pharetra diam sit amet nisl suscipit. Fringilla ut morbi tincidunt augue interdum velit. Duis ultricies lacus sed turpis tincidunt id aliquet. Eget gravida cum sociis natoque. Sit amet nisl purus in. Risus at ultrices mi tempus imperdiet nulla. Sapien eget mi proin sed libero enim sed faucibus. Viverra adipiscing at in tellus integer feugiat scelerisque varius morbi. + +Penatibus et magnis dis parturient montes nascetur ridiculus mus mauris. Pellentesque habitant morbi tristique senectus et netus et. Erat pellentesque adipiscing commodo elit at. Tortor pretium viverra suspendisse potenti nullam. A arcu cursus vitae congue mauris rhoncus aenean. Dolor sit amet consectetur adipiscing elit. Integer quis auctor elit sed vulputate mi. Urna id volutpat lacus laoreet non curabitur. Vivamus at augue eget arcu dictum varius duis at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames. Integer malesuada nunc vel risus. Molestie nunc non blandit massa. Egestas pretium aenean pharetra magna ac. Adipiscing commodo elit at imperdiet dui accumsan sit amet. Tristique senectus et netus et malesuada. Sit amet mauris commodo quis imperdiet massa tincidunt nunc. Accumsan tortor posuere ac ut. + +Enim lobortis scelerisque fermentum dui faucibus in ornare quam. Vulputate sapien nec sagittis aliquam malesuada bibendum arcu vitae. Tempor nec feugiat nisl pretium fusce id. Sem nulla pharetra diam sit amet nisl. Diam phasellus vestibulum lorem sed risus ultricies tristique nulla aliquet. Hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper. Pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Aliquam faucibus purus in massa tempor nec. Elit eget gravida cum sociis natoque penatibus et magnis. Tellus orci ac auctor augue mauris. Cras pulvinar mattis nunc sed blandit libero volutpat. Faucibus et molestie ac feugiat sed lectus vestibulum mattis. + +Et ultrices neque ornare aenean euismod elementum nisi. Neque egestas congue quisque egestas. Nunc scelerisque viverra mauris in aliquam sem fringilla. Lectus proin nibh nisl condimentum id venenatis. Mus mauris vitae ultricies leo. Ut tellus elementum sagittis vitae. Ornare quam viverra orci sagittis eu volutpat. Dignissim convallis aenean et tortor at risus viverra adipiscing at. Tortor pretium viverra suspendisse potenti nullam ac tortor. Ullamcorper eget nulla facilisi etiam dignissim diam quis. Mattis enim ut tellus elementum sagittis vitae. Eget lorem dolor sed viverra ipsum. Sed cras ornare arcu dui. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus. Sit amet dictum sit amet justo donec enim. Id faucibus nisl tincidunt eget nullam non nisi est sit. + +Cursus sit amet dictum sit amet justo donec enim. Quis vel eros donec ac odio tempor orci dapibus. Libero nunc consequat interdum varius sit amet mattis vulputate enim. Scelerisque purus semper eget duis at tellus. Tristique sollicitudin nibh sit amet commodo nulla facilisi nullam vehicula. Penatibus et magnis dis parturient montes nascetur ridiculus mus mauris. Non nisi est sit amet facilisis magna etiam tempor orci. Tempus egestas sed sed risus pretium quam. Maecenas accumsan lacus vel facilisis volutpat est velit egestas dui. Sed ullamcorper morbi tincidunt ornare massa. Morbi tristique senectus et netus et. Nisi scelerisque eu ultrices vitae auctor. Fames ac turpis egestas maecenas. Nisl condimentum id venenatis a condimentum vitae. + +In hac habitasse platea dictumst quisque sagittis purus sit. Iaculis at erat pellentesque adipiscing. Facilisis leo vel fringilla est ullamcorper eget nulla facilisi etiam. Mi sit amet mauris commodo quis imperdiet massa. Maecenas pharetra convallis posuere morbi leo urna molestie at. Arcu dui vivamus arcu felis bibendum ut tristique. Sit amet risus nullam eget felis. Condimentum mattis pellentesque id nibh. Eu non diam phasellus vestibulum lorem sed risus ultricies. Euismod lacinia at quis risus sed vulputate odio. Sed risus ultricies tristique nulla aliquet enim tortor at auctor. At tempor commodo ullamcorper a lacus vestibulum sed arcu. Neque aliquam vestibulum morbi blandit cursus risus at. + +Quis eleifend quam adipiscing vitae proin. Nec sagittis aliquam malesuada bibendum arcu. Sagittis vitae et leo duis. Risus nec feugiat in fermentum posuere urna nec. Velit egestas dui id ornare arcu odio ut sem. Fusce id velit ut tortor pretium. Orci eu lobortis elementum nibh tellus molestie nunc. Dui id ornare arcu odio ut sem nulla. Eu turpis egestas pretium aenean. A diam maecenas sed enim ut sem. Ut faucibus pulvinar elementum integer enim neque volutpat ac tincidunt. + +Justo laoreet sit amet cursus sit amet dictum sit amet. Aliquet risus feugiat in ante metus dictum. Amet tellus cras adipiscing enim eu turpis egestas pretium. Pretium lectus quam id leo in vitae turpis massa. Nullam vehicula ipsum a arcu cursus vitae congue. Mi eget mauris pharetra et ultrices neque ornare aenean euismod. Lorem donec massa sapien faucibus et. Mus mauris vitae ultricies leo integer malesuada. Arcu odio ut sem nulla pharetra. Aliquet eget sit amet tellus cras adipiscing enim eu. Risus nec feugiat in fermentum posuere. Sagittis nisl rhoncus mattis rhoncus urna neque viverra justo nec. Urna neque viverra justo nec ultrices. Quis lectus nulla at volutpat diam. Sed sed risus pretium quam vulputate dignissim suspendisse in est. Odio eu feugiat pretium nibh ipsum consequat nisl. Imperdiet sed euismod nisi porta. + +Risus at ultrices mi tempus imperdiet nulla malesuada pellentesque elit. Faucibus interdum posuere lorem ipsum dolor sit amet consectetur. Consectetur purus ut faucibus pulvinar elementum integer enim. Rhoncus aenean vel elit scelerisque mauris. Scelerisque in dictum non consectetur a erat nam at. Ullamcorper eget nulla facilisi etiam dignissim. Semper eget duis at tellus at urna condimentum mattis. Ut eu sem integer vitae justo eget magna fermentum. Convallis posuere morbi leo urna. Tellus pellentesque eu tincidunt tortor aliquam. Arcu bibendum at varius vel pharetra. Facilisi etiam dignissim diam quis enim lobortis scelerisque fermentum. Molestie a iaculis at erat. Pulvinar neque laoreet suspendisse interdum consectetur libero id. Ut pharetra sit amet aliquam id diam maecenas ultricies mi. Egestas sed tempus urna et pharetra pharetra massa massa. + +Nisi porta lorem mollis aliquam ut. Praesent tristique magna sit amet purus gravida quis blandit. Sit amet consectetur adipiscing elit. Consectetur adipiscing elit duis tristique sollicitudin nibh sit amet commodo. Consectetur lorem donec massa sapien faucibus et molestie ac feugiat. Imperdiet dui accumsan sit amet nulla facilisi. In mollis nunc sed id semper risus. Integer malesuada nunc vel risus commodo viverra maecenas. Commodo elit at imperdiet dui accumsan sit amet nulla. Molestie nunc non blandit massa enim nec dui. + +Potenti nullam ac tortor vitae purus faucibus ornare suspendisse sed. Habitasse platea dictumst quisque sagittis purus sit amet. Amet cursus sit amet dictum sit amet. Ante metus dictum at tempor commodo ullamcorper a. Pharetra magna ac placerat vestibulum lectus mauris. Sit amet mattis vulputate enim nulla aliquet porttitor lacus luctus. Eget nunc scelerisque viverra mauris in aliquam sem fringilla. Tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Tellus mauris a diam maecenas sed enim ut. Justo laoreet sit amet cursus sit amet dictum sit. At quis risus sed vulputate odio ut enim. Tincidunt id aliquet risus feugiat. Pulvinar elementum integer enim neque volutpat ac. Mauris augue neque gravida in fermentum et sollicitudin. Quisque egestas diam in arcu cursus euismod quis viverra nibh. Aliquet nec ullamcorper sit amet risus nullam eget felis eget. + +Amet volutpat consequat mauris nunc congue nisi vitae suscipit tellus. Orci sagittis eu volutpat odio facilisis mauris. Congue eu consequat ac felis donec et. Purus sit amet luctus venenatis. Egestas erat imperdiet sed euismod nisi porta lorem mollis aliquam. Ultrices tincidunt arcu non sodales neque sodales ut. Fames ac turpis egestas maecenas pharetra convallis posuere morbi. Sed risus ultricies tristique nulla aliquet. Dui sapien eget mi proin sed libero enim. Malesuada bibendum arcu vitae elementum curabitur. Mi tempus imperdiet nulla malesuada pellentesque elit eget. Aliquam ultrices sagittis orci a. Dolor morbi non arcu risus quis varius quam quisque. Arcu dui vivamus arcu felis bibendum ut tristique et egestas. Sit amet tellus cras adipiscing enim eu turpis egestas pretium. Neque sodales ut etiam sit amet nisl. + +Integer enim neque volutpat ac tincidunt vitae semper quis lectus. Enim blandit volutpat maecenas volutpat blandit. Lacus luctus accumsan tortor posuere ac ut consequat semper viverra. Id volutpat lacus laoreet non curabitur gravida. Blandit libero volutpat sed cras ornare arcu dui vivamus arcu. Id faucibus nisl tincidunt eget nullam non nisi est. Eget mi proin sed libero enim sed faucibus turpis. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt eget. Sagittis id consectetur purus ut faucibus. Mauris a diam maecenas sed enim. Varius morbi enim nunc faucibus a pellentesque. Vitae justo eget magna fermentum. Viverra vitae congue eu consequat ac felis donec et. Quis varius quam quisque id diam vel. Donec pretium vulputate sapien nec sagittis aliquam malesuada bibendum. Facilisi morbi tempus iaculis urna id volutpat. + +Ultricies mi quis hendrerit dolor magna eget est. Sapien eget mi proin sed libero. Lorem donec massa sapien faucibus et molestie. Egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium. At imperdiet dui accumsan sit amet nulla facilisi. Bibendum ut tristique et egestas quis ipsum suspendisse. Non enim praesent elementum facilisis leo vel. Penatibus et magnis dis parturient montes nascetur. Enim facilisis gravida neque convallis. Risus nec feugiat in fermentum posuere urna nec tincidunt praesent. Porta lorem mollis aliquam ut porttitor leo a diam sollicitudin. Donec ac odio tempor orci dapibus. In fermentum posuere urna nec. + +Diam volutpat commodo sed egestas egestas fringilla phasellus faucibus scelerisque. Dapibus ultrices in iaculis nunc sed augue lacus viverra vitae. Ultrices dui sapien eget mi proin sed libero enim. Gravida rutrum quisque non tellus orci ac auctor augue mauris. Netus et malesuada fames ac turpis egestas sed. Tincidunt praesent semper feugiat nibh sed pulvinar. Donec ac odio tempor orci dapibus ultrices in iaculis nunc. At varius vel pharetra vel turpis nunc eget lorem. Id venenatis a condimentum vitae sapien pellentesque. Feugiat in fermentum posuere urna nec tincidunt praesent. Faucibus interdum posuere lorem ipsum dolor sit amet consectetur adipiscing. Sed faucibus turpis in eu mi bibendum neque egestas. + +Vivamus at augue eget arcu dictum varius duis at. In eu mi bibendum neque. Montes nascetur ridiculus mus mauris. Senectus et netus et malesuada fames. Tristique nulla aliquet enim tortor. Sem viverra aliquet eget sit amet tellus. Quis blandit turpis cursus in hac habitasse platea dictumst quisque. Mollis nunc sed id semper risus in hendrerit gravida. Turpis cursus in hac habitasse platea. Vitae sapien pellentesque habitant morbi tristique. Odio facilisis mauris sit amet. + +Elit duis tristique sollicitudin nibh sit. Malesuada fames ac turpis egestas sed tempus urna. Sit amet consectetur adipiscing elit pellentesque. Nec dui nunc mattis enim ut tellus. Eget aliquet nibh praesent tristique magna sit amet purus. Amet volutpat consequat mauris nunc congue nisi vitae suscipit tellus. Feugiat in fermentum posuere urna nec tincidunt praesent. Mauris ultrices eros in cursus turpis massa. Ipsum nunc aliquet bibendum enim. Tincidunt augue interdum velit euismod in pellentesque massa placerat duis. Purus viverra accumsan in nisl nisi. Sem fringilla ut morbi tincidunt augue interdum velit euismod. Magnis dis parturient montes nascetur ridiculus. Ornare lectus sit amet est placerat in. Amet dictum sit amet justo. In fermentum et sollicitudin ac. Dui vivamus arcu felis bibendum ut tristique et. Tellus id interdum velit laoreet id donec ultrices. Tellus orci ac auctor augue. In aliquam sem fringilla ut. + +Ullamcorper malesuada proin libero nunc consequat. Id interdum velit laoreet id donec ultrices tincidunt arcu non. Posuere sollicitudin aliquam ultrices sagittis orci a. Ut eu sem integer vitae justo eget magna. Urna molestie at elementum eu facilisis sed odio. Turpis nunc eget lorem dolor sed. Sit amet purus gravida quis blandit turpis. Mi proin sed libero enim sed faucibus turpis in eu. Nec dui nunc mattis enim ut. Purus viverra accumsan in nisl nisi scelerisque eu. Sed felis eget velit aliquet sagittis. Tempus urna et pharetra pharetra massa massa ultricies. Imperdiet nulla malesuada pellentesque elit eget gravida cum sociis natoque. Tortor consequat id porta nibh. Non arcu risus quis varius quam quisque. Egestas maecenas pharetra convallis posuere morbi leo urna. Fames ac turpis egestas maecenas pharetra convallis posuere morbi leo. + +Magna etiam tempor orci eu. Morbi blandit cursus risus at ultrices mi tempus. Condimentum id venenatis a condimentum. Sed ullamcorper morbi tincidunt ornare massa eget. Arcu dui vivamus arcu felis bibendum ut tristique. In dictum non consectetur a erat nam. Porttitor leo a diam sollicitudin tempor. Diam ut venenatis tellus in metus vulputate eu. Volutpat lacus laoreet non curabitur. Posuere morbi leo urna molestie at elementum eu facilisis. Pellentesque diam volutpat commodo sed egestas egestas. Ultrices neque ornare aenean euismod. Quis ipsum suspendisse ultrices gravida. Facilisi morbi tempus iaculis urna id volutpat lacus laoreet. Sed arcu non odio euismod lacinia at quis risus sed. Pellentesque massa placerat duis ultricies lacus sed turpis tincidunt id. Ut consequat semper viverra nam libero justo laoreet sit amet. + +Mauris vitae ultricies leo integer malesuada nunc vel. Risus viverra adipiscing at in tellus integer feugiat scelerisque varius. Dignissim convallis aenean et tortor at risus viverra adipiscing at. Sed viverra ipsum nunc aliquet bibendum enim facilisis. Mi quis hendrerit dolor magna eget est lorem ipsum. Facilisis sed odio morbi quis commodo odio aenean. Posuere ac ut consequat semper. Bibendum enim facilisis gravida neque convallis a cras semper. Dolor sit amet consectetur adipiscing. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper. Dictum fusce ut placerat orci nulla. Ut pharetra sit amet aliquam. + +Nunc congue nisi vitae suscipit tellus mauris a. Dolor morbi non arcu risus quis varius. Nulla malesuada pellentesque elit eget gravida cum sociis natoque penatibus. Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi. Ornare quam viverra orci sagittis eu. Imperdiet sed euismod nisi porta. Vitae tortor condimentum lacinia quis vel eros donec ac odio. Bibendum est ultricies integer quis. Quis imperdiet massa tincidunt nunc pulvinar sapien. Leo vel orci porta non pulvinar neque. Malesuada pellentesque elit eget gravida cum sociis natoque penatibus et. Pharetra diam sit amet nisl. Sociis natoque penatibus et magnis. Quis blandit turpis cursus in hac habitasse platea. Non pulvinar neque laoreet suspendisse interdum consectetur libero id. Donec adipiscing tristique risus nec feugiat in fermentum posuere. Id consectetur purus ut faucibus pulvinar. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Mauris a diam maecenas sed enim ut. Massa id neque aliquam vestibulum morbi. + +Consequat interdum varius sit amet mattis. Id consectetur purus ut faucibus. Nulla porttitor massa id neque aliquam vestibulum morbi blandit cursus. Sed tempus urna et pharetra pharetra massa massa ultricies. Sagittis aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc. Vel facilisis volutpat est velit egestas dui id ornare arcu. Sit amet porttitor eget dolor morbi non. Pretium aenean pharetra magna ac placerat vestibulum lectus. Ac orci phasellus egestas tellus rutrum tellus pellentesque. Vulputate sapien nec sagittis aliquam malesuada bibendum arcu vitae elementum. Nec dui nunc mattis enim ut tellus. Tortor dignissim convallis aenean et tortor. Sed ullamcorper morbi tincidunt ornare massa eget egestas. Orci porta non pulvinar neque. Faucibus turpis in eu mi bibendum neque egestas congue. Nec dui nunc mattis enim ut tellus elementum sagittis vitae. Massa eget egestas purus viverra accumsan in. Pharetra pharetra massa massa ultricies mi quis hendrerit dolor magna. Mattis rhoncus urna neque viverra justo nec ultrices dui sapien. + +Aliquet enim tortor at auctor urna nunc id cursus metus. Habitant morbi tristique senectus et netus et malesuada fames. Integer vitae justo eget magna. Ultricies leo integer malesuada nunc vel risus commodo viverra maecenas. Quis viverra nibh cras pulvinar mattis nunc sed. Purus in mollis nunc sed. Ornare quam viverra orci sagittis eu volutpat odio facilisis mauris. Urna id volutpat lacus laoreet non curabitur. Maecenas sed enim ut sem viverra aliquet eget. Sociis natoque penatibus et magnis dis parturient montes. At ultrices mi tempus imperdiet nulla malesuada pellentesque. Tincidunt lobortis feugiat vivamus at augue eget arcu. Tincidunt ornare massa eget egestas. + +Facilisi cras fermentum odio eu feugiat pretium nibh. Quis ipsum suspendisse ultrices gravida dictum fusce ut. Pretium viverra suspendisse potenti nullam ac tortor. Sodales neque sodales ut etiam. Pellentesque nec nam aliquam sem et tortor. Aenean et tortor at risus viverra adipiscing at in tellus. Fames ac turpis egestas sed tempus urna. Ut aliquam purus sit amet. Lobortis scelerisque fermentum dui faucibus in. Proin sagittis nisl rhoncus mattis rhoncus urna. Dictumst vestibulum rhoncus est pellentesque elit. In arcu cursus euismod quis viverra. + +Etiam erat velit scelerisque in dictum non. Dictumst vestibulum rhoncus est pellentesque. Varius vel pharetra vel turpis nunc eget lorem. Arcu non sodales neque sodales ut etiam sit. Commodo elit at imperdiet dui accumsan sit amet nulla. Id porta nibh venenatis cras sed felis. Ultrices tincidunt arcu non sodales neque sodales ut etiam. Egestas erat imperdiet sed euismod. Pretium fusce id velit ut tortor. Purus viverra accumsan in nisl nisi. Purus sit amet luctus venenatis lectus magna fringilla urna porttitor. Lacus vel facilisis volutpat est velit egestas dui id ornare. Egestas diam in arcu cursus euismod quis viverra nibh cras. Sociis natoque penatibus et magnis dis parturient. Sit amet est placerat in. Vulputate odio ut enim blandit volutpat maecenas volutpat. Feugiat scelerisque varius morbi enim. Nibh cras pulvinar mattis nunc sed blandit. + +Diam phasellus vestibulum lorem sed risus ultricies. Vulputate enim nulla aliquet porttitor lacus luctus. Malesuada fames ac turpis egestas integer eget aliquet nibh. Fermentum et sollicitudin ac orci phasellus egestas tellus. Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant. Et tortor consequat id porta nibh venenatis cras sed felis. Neque convallis a cras semper auctor neque. Sit amet mattis vulputate enim nulla. Mattis enim ut tellus elementum. Eget est lorem ipsum dolor sit amet. + +In metus vulputate eu scelerisque felis imperdiet proin. Habitant morbi tristique senectus et netus et malesuada fames ac. Pulvinar proin gravida hendrerit lectus a. Ac felis donec et odio pellentesque diam. Velit scelerisque in dictum non consectetur a erat nam. Pretium fusce id velit ut. Rutrum quisque non tellus orci ac auctor. Turpis nunc eget lorem dolor sed viverra. Semper eget duis at tellus at urna condimentum mattis. Id porta nibh venenatis cras sed felis eget. Cursus mattis molestie a iaculis at erat pellentesque. Consequat mauris nunc congue nisi vitae suscipit tellus mauris. Diam quis enim lobortis scelerisque fermentum. Proin nibh nisl condimentum id venenatis. + +Nibh sed pulvinar proin gravida hendrerit lectus a. Vitae nunc sed velit dignissim sodales ut eu. Morbi leo urna molestie at elementum eu facilisis sed. Bibendum arcu vitae elementum curabitur vitae nunc sed velit dignissim. Tortor aliquam nulla facilisi cras fermentum odio eu feugiat. Facilisi morbi tempus iaculis urna. Turpis egestas integer eget aliquet nibh praesent. Nulla posuere sollicitudin aliquam ultrices sagittis orci. Risus nullam eget felis eget nunc. Vel elit scelerisque mauris pellentesque. Congue eu consequat ac felis donec et odio pellentesque. Enim tortor at auctor urna nunc id cursus metus aliquam. Nunc mattis enim ut tellus elementum sagittis vitae et leo. + +Nisl rhoncus mattis rhoncus urna neque viverra. Nam libero justo laoreet sit amet cursus. Lectus urna duis convallis convallis. Nisi est sit amet facilisis magna etiam tempor orci. Mattis nunc sed blandit libero volutpat sed cras. Quam lacus suspendisse faucibus interdum posuere. Erat pellentesque adipiscing commodo elit. Dui accumsan sit amet nulla facilisi morbi tempus iaculis. Dictum at tempor commodo ullamcorper a. Mi bibendum neque egestas congue quisque egestas diam in arcu. Nibh ipsum consequat nisl vel pretium lectus quam id. Malesuada bibendum arcu vitae elementum. Sem viverra aliquet eget sit amet tellus cras adipiscing. Gravida dictum fusce ut placerat orci nulla pellentesque dignissim. Amet est placerat in egestas erat imperdiet sed euismod. Cursus mattis molestie a iaculis. Metus dictum at tempor commodo ullamcorper a lacus vestibulum sed. Lorem ipsum dolor sit amet consectetur adipiscing elit pellentesque. + +Sed pulvinar proin gravida hendrerit lectus. Fermentum et sollicitudin ac orci phasellus egestas tellus. Et netus et malesuada fames ac turpis egestas. At elementum eu facilisis sed odio morbi. Velit egestas dui id ornare arcu odio ut sem nulla. Arcu cursus vitae congue mauris. Et magnis dis parturient montes nascetur ridiculus. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor purus. At in tellus integer feugiat scelerisque. Lobortis mattis aliquam faucibus purus in massa tempor nec. Bibendum arcu vitae elementum curabitur vitae nunc sed. Pellentesque adipiscing commodo elit at imperdiet dui accumsan sit. Volutpat commodo sed egestas egestas fringilla phasellus faucibus. Viverra nibh cras pulvinar mattis nunc sed blandit libero volutpat. In hac habitasse platea dictumst quisque. In nisl nisi scelerisque eu ultrices vitae. Vulputate enim nulla aliquet porttitor lacus. Egestas maecenas pharetra convallis posuere morbi leo urna molestie. At erat pellentesque adipiscing commodo elit at. Est lorem ipsum dolor sit amet consectetur adipiscing elit. + +Fames ac turpis egestas sed tempus urna et pharetra pharetra. Faucibus a pellentesque sit amet porttitor. Eu non diam phasellus vestibulum lorem sed risus ultricies. Donec ultrices tincidunt arcu non. Eget lorem dolor sed viverra ipsum nunc aliquet bibendum. Neque sodales ut etiam sit amet. Dui faucibus in ornare quam viverra. Non consectetur a erat nam at lectus urna duis convallis. Blandit aliquam etiam erat velit. In dictum non consectetur a erat nam at. Lectus sit amet est placerat in. Vulputate sapien nec sagittis aliquam. Turpis in eu mi bibendum neque egestas congue quisque egestas. Egestas congue quisque egestas diam in arcu. + +Tempor commodo ullamcorper a lacus vestibulum sed arcu. Tincidunt id aliquet risus feugiat in ante metus dictum. Tortor dignissim convallis aenean et tortor. Mauris pharetra et ultrices neque ornare. Neque egestas congue quisque egestas. Ut pharetra sit amet aliquam id. Ante in nibh mauris cursus mattis molestie a. Ut faucibus pulvinar elementum integer enim neque volutpat ac tincidunt. Pretium quam vulputate dignissim suspendisse in est ante. Amet purus gravida quis blandit turpis cursus in hac habitasse. Orci sagittis eu volutpat odio facilisis mauris. Enim diam vulputate ut pharetra sit amet. Cursus in hac habitasse platea dictumst quisque sagittis. Nunc consequat interdum varius sit amet mattis vulputate enim nulla. Lorem dolor sed viverra ipsum nunc aliquet bibendum enim facilisis. Mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus et netus. + +Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Ultrices vitae auctor eu augue ut lectus arcu. Lorem sed risus ultricies tristique nulla. Libero nunc consequat interdum varius sit amet mattis vulputate enim. Accumsan sit amet nulla facilisi morbi tempus iaculis urna. Duis convallis convallis tellus id interdum velit laoreet. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Eget arcu dictum varius duis at consectetur. Sapien pellentesque habitant morbi tristique. Sem viverra aliquet eget sit. + +Pharetra convallis posuere morbi leo urna molestie at elementum eu. Adipiscing elit duis tristique sollicitudin nibh sit amet. Orci porta non pulvinar neque. Volutpat sed cras ornare arcu dui vivamus arcu. Elit eget gravida cum sociis. Felis bibendum ut tristique et egestas quis ipsum. Sapien nec sagittis aliquam malesuada bibendum. Rutrum quisque non tellus orci ac auctor augue mauris. Vitae sapien pellentesque habitant morbi. Id neque aliquam vestibulum morbi. Ac tortor vitae purus faucibus ornare suspendisse sed. Magna ac placerat vestibulum lectus mauris ultrices eros in cursus. Eu nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper. Posuere morbi leo urna molestie at elementum eu facilisis. Nulla facilisi nullam vehicula ipsum a arcu. Enim ut tellus elementum sagittis vitae et. Vestibulum lorem sed risus ultricies tristique nulla aliquet. Interdum velit euismod in pellentesque massa placerat duis ultricies lacus. Fames ac turpis egestas integer eget aliquet. Suspendisse ultrices gravida dictum fusce. + +Pretium viverra suspendisse potenti nullam ac tortor. Risus viverra adipiscing at in. Est velit egestas dui id ornare arcu odio. Odio tempor orci dapibus ultrices in. Condimentum id venenatis a condimentum vitae. Duis ultricies lacus sed turpis. Sed libero enim sed faucibus turpis in eu mi. Pellentesque habitant morbi tristique senectus et. Sollicitudin ac orci phasellus egestas tellus rutrum tellus. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan. Ac tortor dignissim convallis aenean. Sit amet mattis vulputate enim nulla aliquet porttitor. Ac tortor vitae purus faucibus ornare suspendisse sed. + +Nulla malesuada pellentesque elit eget gravida cum sociis. Gravida cum sociis natoque penatibus et magnis dis. Nunc id cursus metus aliquam eleifend mi. Donec adipiscing tristique risus nec feugiat in fermentum posuere. Eu facilisis sed odio morbi quis. Lacus suspendisse faucibus interdum posuere lorem ipsum. Semper eget duis at tellus. Arcu non sodales neque sodales. Consequat id porta nibh venenatis cras sed felis eget. Imperdiet sed euismod nisi porta lorem mollis aliquam. Eget gravida cum sociis natoque penatibus et magnis dis parturient. + +At lectus urna duis convallis. Vestibulum rhoncus est pellentesque elit. Turpis cursus in hac habitasse platea dictumst quisque sagittis. In nisl nisi scelerisque eu ultrices vitae. A lacus vestibulum sed arcu non odio euismod lacinia. Proin libero nunc consequat interdum varius. Pulvinar elementum integer enim neque volutpat ac tincidunt vitae. At ultrices mi tempus imperdiet nulla malesuada pellentesque elit eget. Sapien faucibus et molestie ac feugiat sed lectus vestibulum mattis. Quis risus sed vulputate odio ut enim blandit. Imperdiet massa tincidunt nunc pulvinar sapien et. Mattis nunc sed blandit libero volutpat sed cras ornare arcu. Dui id ornare arcu odio. Lacinia at quis risus sed vulputate. Odio aenean sed adipiscing diam. Amet nisl purus in mollis nunc. + +Aliquam purus sit amet luctus venenatis lectus. In hendrerit gravida rutrum quisque non tellus orci ac auctor. Libero id faucibus nisl tincidunt eget nullam. Sed nisi lacus sed viverra tellus in hac. Commodo viverra maecenas accumsan lacus vel facilisis volutpat. Adipiscing at in tellus integer feugiat. Tincidunt id aliquet risus feugiat in ante metus dictum at. Nam at lectus urna duis convallis. Massa tincidunt nunc pulvinar sapien et ligula. Amet consectetur adipiscing elit duis. Purus in massa tempor nec feugiat nisl. Lobortis elementum nibh tellus molestie nunc. Velit scelerisque in dictum non consectetur. Sit amet consectetur adipiscing elit. Malesuada fames ac turpis egestas maecenas. Ut venenatis tellus in metus vulputate eu. + +Malesuada fames ac turpis egestas maecenas pharetra convallis posuere morbi. Senectus et netus et malesuada fames ac turpis egestas integer. Dui vivamus arcu felis bibendum ut tristique. Nibh sit amet commodo nulla facilisi nullam vehicula ipsum. Dolor sit amet consectetur adipiscing elit duis tristique. Vitae turpis massa sed elementum tempus egestas sed. Sed nisi lacus sed viverra tellus. Elementum sagittis vitae et leo duis ut. Nullam non nisi est sit amet facilisis magna etiam. Arcu ac tortor dignissim convallis aenean et tortor. Porta lorem mollis aliquam ut porttitor. Fusce ut placerat orci nulla pellentesque. Fringilla est ullamcorper eget nulla facilisi etiam. Ultricies mi eget mauris pharetra et ultrices neque ornare aenean. + +Velit egestas dui id ornare arcu odio ut sem nulla. Ornare massa eget egestas purus viverra. Scelerisque varius morbi enim nunc. Ornare arcu dui vivamus arcu felis. Quis enim lobortis scelerisque fermentum dui faucibus in. Viverra vitae congue eu consequat ac felis donec. Non nisi est sit amet facilisis magna. Pharetra et ultrices neque ornare aenean euismod. Elementum eu facilisis sed odio morbi. Condimentum mattis pellentesque id nibh tortor id aliquet. Id volutpat lacus laoreet non curabitur gravida arcu. Malesuada fames ac turpis egestas sed tempus urna. Diam maecenas sed enim ut. Sit amet purus gravida quis blandit. Cras fermentum odio eu feugiat pretium nibh ipsum consequat nisl. Phasellus vestibulum lorem sed risus ultricies tristique nulla aliquet enim. Commodo quis imperdiet massa tincidunt. + +Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Aliquam faucibus purus in massa tempor nec feugiat nisl pretium. Nulla porttitor massa id neque aliquam vestibulum. Massa eget egestas purus viverra accumsan. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar. Magnis dis parturient montes nascetur ridiculus mus mauris vitae ultricies. Gravida rutrum quisque non tellus orci ac auctor. Nulla facilisi cras fermentum odio eu feugiat pretium. Diam sollicitudin tempor id eu nisl. Vitae nunc sed velit dignissim sodales ut eu sem integer. Orci phasellus egestas tellus rutrum. At imperdiet dui accumsan sit amet nulla. Vel pharetra vel turpis nunc eget lorem. Varius quam quisque id diam. Sapien faucibus et molestie ac feugiat. Iaculis at erat pellentesque adipiscing commodo elit at imperdiet dui. Sit amet risus nullam eget felis eget nunc lobortis mattis. Faucibus scelerisque eleifend donec pretium vulputate sapien. Porta lorem mollis aliquam ut porttitor leo. + +Quis lectus nulla at volutpat diam. Facilisis gravida neque convallis a. Aliquam faucibus purus in massa tempor nec feugiat. Maecenas volutpat blandit aliquam etiam erat. Pellentesque eu tincidunt tortor aliquam nulla. Aliquam faucibus purus in massa tempor nec feugiat nisl. Id velit ut tortor pretium. Pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Morbi blandit cursus risus at ultrices mi. Euismod quis viverra nibh cras pulvinar mattis nunc sed blandit. Dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Viverra mauris in aliquam sem fringilla ut morbi. Pellentesque pulvinar pellentesque habitant morbi. In mollis nunc sed id semper. Netus et malesuada fames ac turpis egestas sed tempus urna. Aliquet sagittis id consectetur purus ut faucibus pulvinar. Quis enim lobortis scelerisque fermentum dui faucibus. Commodo nulla facilisi nullam vehicula ipsum a arcu cursus vitae. Quis blandit turpis cursus in hac. + +Sodales neque sodales ut etiam sit amet. Dui sapien eget mi proin. Urna cursus eget nunc scelerisque viverra. Orci phasellus egestas tellus rutrum. Eu scelerisque felis imperdiet proin fermentum leo vel orci porta. Iaculis urna id volutpat lacus laoreet non curabitur. Purus in mollis nunc sed id semper risus. Pretium fusce id velit ut tortor pretium viverra suspendisse. Sem integer vitae justo eget magna fermentum iaculis eu non. Cursus sit amet dictum sit. Nulla facilisi etiam dignissim diam quis enim lobortis. Ante metus dictum at tempor commodo ullamcorper a lacus. At quis risus sed vulputate odio. Ornare arcu dui vivamus arcu felis bibendum ut. + +Nam aliquam sem et tortor. Dignissim diam quis enim lobortis scelerisque fermentum dui. Elementum pulvinar etiam non quam lacus. Nibh mauris cursus mattis molestie a iaculis at erat. Facilisis magna etiam tempor orci eu lobortis elementum. Lectus sit amet est placerat in egestas erat imperdiet sed. Ut placerat orci nulla pellentesque dignissim. Consectetur adipiscing elit pellentesque habitant. Dolor purus non enim praesent elementum facilisis leo. Velit aliquet sagittis id consectetur purus ut faucibus pulvinar elementum. Accumsan tortor posuere ac ut consequat semper viverra nam. Libero volutpat sed cras ornare arcu dui vivamus. Id faucibus nisl tincidunt eget nullam non nisi est sit. Diam maecenas ultricies mi eget mauris pharetra. Venenatis lectus magna fringilla urna porttitor rhoncus dolor purus non. + +Rhoncus dolor purus non enim praesent elementum. Eleifend quam adipiscing vitae proin sagittis nisl rhoncus. Egestas sed tempus urna et pharetra pharetra massa massa. Pretium vulputate sapien nec sagittis aliquam malesuada. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Nullam eget felis eget nunc lobortis mattis aliquam. Venenatis tellus in metus vulputate eu scelerisque. Vivamus at augue eget arcu dictum. Nibh nisl condimentum id venenatis a condimentum. Nunc lobortis mattis aliquam faucibus purus. Feugiat pretium nibh ipsum consequat nisl vel pretium. Ut placerat orci nulla pellentesque dignissim enim sit. + +Elit sed vulputate mi sit amet mauris. A condimentum vitae sapien pellentesque habitant morbi. Egestas sed tempus urna et pharetra pharetra massa massa ultricies. Mi tempus imperdiet nulla malesuada pellentesque elit eget gravida cum. Condimentum vitae sapien pellentesque habitant morbi tristique senectus et. At augue eget arcu dictum varius duis at consectetur lorem. Felis eget velit aliquet sagittis id. Volutpat lacus laoreet non curabitur gravida arcu. Donec et odio pellentesque diam. Nulla posuere sollicitudin aliquam ultrices. Semper feugiat nibh sed pulvinar proin gravida. + +Viverra aliquet eget sit amet. Praesent semper feugiat nibh sed pulvinar proin gravida hendrerit lectus. Aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant. Orci phasellus egestas tellus rutrum tellus pellentesque eu tincidunt. Tincidunt arcu non sodales neque sodales. Mi in nulla posuere sollicitudin aliquam ultrices sagittis orci a. Porta lorem mollis aliquam ut porttitor leo. Justo donec enim diam vulputate ut pharetra sit amet. Elit at imperdiet dui accumsan sit. Viverra adipiscing at in tellus integer. Quis varius quam quisque id diam vel. Vitae justo eget magna fermentum iaculis. Lobortis elementum nibh tellus molestie nunc non blandit massa enim. Mauris nunc congue nisi vitae suscipit tellus mauris a. Vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci. Quisque egestas diam in arcu. Quam id leo in vitae turpis massa sed. + +Dolor sit amet consectetur adipiscing elit pellentesque habitant morbi. Scelerisque fermentum dui faucibus in. Tellus in hac habitasse platea dictumst vestibulum. Pretium vulputate sapien nec sagittis aliquam malesuada bibendum arcu vitae. Mattis pellentesque id nibh tortor. Sed cras ornare arcu dui vivamus. Massa tincidunt dui ut ornare lectus sit amet. Gravida dictum fusce ut placerat. Aliquam purus sit amet luctus venenatis lectus. Purus non enim praesent elementum facilisis leo vel fringilla. + +Quis blandit turpis cursus in hac habitasse. Commodo viverra maecenas accumsan lacus vel facilisis. Sed egestas egestas fringilla phasellus faucibus scelerisque. Sem integer vitae justo eget magna fermentum iaculis eu non. Amet nulla facilisi morbi tempus. Eu nisl nunc mi ipsum. Lectus urna duis convallis convallis. Convallis posuere morbi leo urna molestie at. Et odio pellentesque diam volutpat commodo sed egestas. Varius quam quisque id diam vel quam elementum. Ultricies leo integer malesuada nunc vel risus commodo viverra maecenas. Quis auctor elit sed vulputate mi sit amet mauris commodo. Cursus metus aliquam eleifend mi in nulla posuere. Gravida rutrum quisque non tellus orci ac. Nibh praesent tristique magna sit amet purus gravida quis. Erat pellentesque adipiscing commodo elit at imperdiet dui accumsan sit. A condimentum vitae sapien pellentesque habitant. + +Ultrices dui sapien eget mi proin sed. Lectus vestibulum mattis ullamcorper velit. Cras pulvinar mattis nunc sed blandit libero volutpat sed. Pellentesque nec nam aliquam sem et tortor consequat id porta. Urna duis convallis convallis tellus id interdum velit laoreet id. Semper feugiat nibh sed pulvinar proin. Sagittis aliquam malesuada bibendum arcu vitae elementum curabitur. Maecenas pharetra convallis posuere morbi leo urna molestie. Est placerat in egestas erat imperdiet sed euismod. Tristique senectus et netus et malesuada. Augue lacus viverra vitae congue eu consequat ac felis donec. + +Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu feugiat. Pulvinar etiam non quam lacus. Ac auctor augue mauris augue. Maecenas ultricies mi eget mauris. Egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam nulla. Nunc lobortis mattis aliquam faucibus purus in. Orci eu lobortis elementum nibh. Pellentesque adipiscing commodo elit at. Condimentum lacinia quis vel eros donec. Sed arcu non odio euismod lacinia at. Suspendisse faucibus interdum posuere lorem ipsum. At ultrices mi tempus imperdiet nulla malesuada pellentesque elit. Aliquet enim tortor at auctor urna nunc id cursus metus. + +Amet aliquam id diam maecenas ultricies mi. Sem nulla pharetra diam sit amet nisl. Sed viverra tellus in hac habitasse platea. Viverra suspendisse potenti nullam ac tortor vitae purus faucibus. Viverra justo nec ultrices dui sapien eget mi proin sed. Elit at imperdiet dui accumsan. Diam ut venenatis tellus in metus vulputate. Cras ornare arcu dui vivamus arcu felis. Bibendum arcu vitae elementum curabitur vitae nunc sed velit. Eget est lorem ipsum dolor sit amet. Nisl suscipit adipiscing bibendum est ultricies. Aenean sed adipiscing diam donec adipiscing. Vulputate mi sit amet mauris commodo quis imperdiet massa. Maecenas ultricies mi eget mauris pharetra et. Egestas erat imperdiet sed euismod nisi porta lorem mollis aliquam. + +Sed turpis tincidunt id aliquet risus. Purus faucibus ornare suspendisse sed nisi lacus sed viverra. Sed vulputate mi sit amet mauris commodo quis imperdiet. Tortor id aliquet lectus proin nibh nisl. Auctor augue mauris augue neque gravida in fermentum et. Elementum curabitur vitae nunc sed velit. Consectetur libero id faucibus nisl tincidunt eget nullam non nisi. Pulvinar neque laoreet suspendisse interdum consectetur libero. Senectus et netus et malesuada. Viverra ipsum nunc aliquet bibendum enim facilisis. In nulla posuere sollicitudin aliquam ultrices sagittis orci. Eleifend quam adipiscing vitae proin sagittis. Viverra maecenas accumsan lacus vel facilisis volutpat. Eu mi bibendum neque egestas congue. Adipiscing tristique risus nec feugiat in fermentum. Euismod lacinia at quis risus. Et molestie ac feugiat sed lectus vestibulum. + +Orci a scelerisque purus semper eget duis at tellus. Faucibus purus in massa tempor nec feugiat. Sem fringilla ut morbi tincidunt augue interdum velit. Turpis egestas sed tempus urna. Consectetur adipiscing elit duis tristique sollicitudin nibh. Justo nec ultrices dui sapien. Elementum facilisis leo vel fringilla est ullamcorper eget nulla facilisi. Amet cursus sit amet dictum sit. At elementum eu facilisis sed odio morbi quis commodo. At auctor urna nunc id cursus metus aliquam. Varius sit amet mattis vulputate enim. Lacus laoreet non curabitur gravida arcu ac. Cursus eget nunc scelerisque viverra. Neque ornare aenean euismod elementum nisi quis eleifend. Posuere sollicitudin aliquam ultrices sagittis orci a scelerisque purus. Duis tristique sollicitudin nibh sit amet commodo nulla facilisi nullam. + +Sapien et ligula ullamcorper malesuada proin libero nunc consequat interdum. Gravida arcu ac tortor dignissim convallis aenean et. Nisl rhoncus mattis rhoncus urna neque. Consequat mauris nunc congue nisi vitae suscipit. Dui sapien eget mi proin. Proin libero nunc consequat interdum varius. Lacus laoreet non curabitur gravida arcu ac. Sagittis aliquam malesuada bibendum arcu vitae elementum curabitur. Elementum curabitur vitae nunc sed velit dignissim sodales ut eu. Accumsan sit amet nulla facilisi. Est sit amet facilisis magna etiam tempor orci eu lobortis. Tincidunt augue interdum velit euismod in pellentesque massa. Platea dictumst quisque sagittis purus sit. Consectetur adipiscing elit duis tristique sollicitudin nibh. Metus dictum at tempor commodo ullamcorper a lacus. Venenatis tellus in metus vulputate eu. Urna et pharetra pharetra massa massa ultricies mi. Massa tincidunt nunc pulvinar sapien et ligula ullamcorper. + +Tortor posuere ac ut consequat semper viverra nam. At erat pellentesque adipiscing commodo. Viverra nibh cras pulvinar mattis nunc sed blandit libero. Egestas congue quisque egestas diam. Convallis posuere morbi leo urna molestie at elementum. Rhoncus est pellentesque elit ullamcorper dignissim cras tincidunt. Urna cursus eget nunc scelerisque viverra. Suscipit adipiscing bibendum est ultricies integer quis auctor. Commodo ullamcorper a lacus vestibulum sed arcu non. Id interdum velit laoreet id donec ultrices tincidunt arcu non. Sit amet commodo nulla facilisi. Viverra nibh cras pulvinar mattis. Malesuada bibendum arcu vitae elementum. + +Tempus imperdiet nulla malesuada pellentesque elit eget. Platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Venenatis tellus in metus vulputate eu. Convallis a cras semper auctor neque vitae tempus quam. Congue nisi vitae suscipit tellus mauris a. Ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at augue. Consectetur libero id faucibus nisl tincidunt eget nullam non nisi. Egestas erat imperdiet sed euismod nisi. Lorem ipsum dolor sit amet consectetur adipiscing elit ut. Egestas sed sed risus pretium. + +Et malesuada fames ac turpis egestas integer. Cras semper auctor neque vitae tempus quam pellentesque. Facilisis sed odio morbi quis. Sit amet porttitor eget dolor morbi non arcu. A lacus vestibulum sed arcu non odio euismod lacinia at. Nibh venenatis cras sed felis eget velit aliquet sagittis. Imperdiet massa tincidunt nunc pulvinar sapien et ligula. Bibendum est ultricies integer quis auctor elit sed vulputate mi. Rutrum tellus pellentesque eu tincidunt tortor aliquam nulla facilisi. Consequat nisl vel pretium lectus quam. Venenatis lectus magna fringilla urna. Sed augue lacus viverra vitae. Eu lobortis elementum nibh tellus molestie nunc. Non pulvinar neque laoreet suspendisse interdum. Volutpat blandit aliquam etiam erat velit scelerisque in. Orci a scelerisque purus semper. Adipiscing tristique risus nec feugiat in fermentum. Velit euismod in pellentesque massa placerat duis. + +Mi quis hendrerit dolor magna eget est. Vitae semper quis lectus nulla at volutpat diam ut venenatis. Praesent semper feugiat nibh sed pulvinar proin gravida hendrerit. Tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Non nisi est sit amet. Neque vitae tempus quam pellentesque nec nam aliquam. Ac felis donec et odio pellentesque diam volutpat. Urna id volutpat lacus laoreet. At ultrices mi tempus imperdiet nulla. Tellus mauris a diam maecenas sed enim ut sem viverra. Id semper risus in hendrerit gravida rutrum quisque non tellus. Egestas integer eget aliquet nibh praesent tristique magna. Quis risus sed vulputate odio ut enim. Enim ut tellus elementum sagittis vitae. Nec tincidunt praesent semper feugiat. Vivamus at augue eget arcu dictum varius. Sodales ut etiam sit amet nisl purus in. + +Vel orci porta non pulvinar neque laoreet suspendisse interdum. Eget gravida cum sociis natoque penatibus et. Ipsum suspendisse ultrices gravida dictum. Sagittis eu volutpat odio facilisis mauris sit amet. Ante in nibh mauris cursus mattis molestie a iaculis at. Massa tincidunt nunc pulvinar sapien et. Maecenas ultricies mi eget mauris pharetra et ultrices neque ornare. At auctor urna nunc id cursus metus aliquam. Ornare lectus sit amet est. Consequat mauris nunc congue nisi vitae suscipit tellus mauris a. Fames ac turpis egestas integer eget. Est lorem ipsum dolor sit amet. Pellentesque diam volutpat commodo sed egestas egestas. Nisl rhoncus mattis rhoncus urna neque viverra. Dui ut ornare lectus sit amet est placerat in egestas. Cras ornare arcu dui vivamus. Dui nunc mattis enim ut tellus elementum sagittis vitae et. Facilisis mauris sit amet massa vitae tortor condimentum lacinia quis. + +Fermentum iaculis eu non diam phasellus vestibulum. Scelerisque purus semper eget duis at tellus at urna. Gravida rutrum quisque non tellus. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc consequat. Egestas congue quisque egestas diam. Ipsum consequat nisl vel pretium lectus. Eleifend mi in nulla posuere sollicitudin. Pulvinar proin gravida hendrerit lectus. Lectus quam id leo in vitae. Sem integer vitae justo eget magna. Odio ut enim blandit volutpat maecenas. Sem nulla pharetra diam sit amet. Potenti nullam ac tortor vitae purus faucibus. Vitae auctor eu augue ut lectus arcu bibendum at. Cursus eget nunc scelerisque viverra mauris. Morbi tristique senectus et netus et malesuada fames ac. Ultricies lacus sed turpis tincidunt id aliquet risus. + +Non curabitur gravida arcu ac tortor dignissim convallis aenean et. Viverra tellus in hac habitasse platea. Lectus nulla at volutpat diam ut venenatis. In hac habitasse platea dictumst quisque sagittis. Mauris ultrices eros in cursus turpis massa. Quam viverra orci sagittis eu volutpat. Est velit egestas dui id. Vehicula ipsum a arcu cursus vitae congue mauris rhoncus aenean. Ut tortor pretium viverra suspendisse potenti nullam ac. Aliquam id diam maecenas ultricies mi eget mauris pharetra. Tortor id aliquet lectus proin nibh nisl condimentum id venenatis. Sed risus pretium quam vulputate dignissim suspendisse. Lectus magna fringilla urna porttitor rhoncus dolor. Nullam ac tortor vitae purus faucibus ornare suspendisse sed. Eget dolor morbi non arcu risus. Arcu risus quis varius quam quisque. Convallis convallis tellus id interdum velit laoreet. At urna condimentum mattis pellentesque. Ut porttitor leo a diam sollicitudin. Ut lectus arcu bibendum at varius vel pharetra vel turpis. + +Imperdiet proin fermentum leo vel orci porta non pulvinar neque. Vel risus commodo viverra maecenas accumsan lacus vel. Urna neque viverra justo nec ultrices dui. Volutpat est velit egestas dui id. Commodo elit at imperdiet dui accumsan sit amet nulla facilisi. Commodo quis imperdiet massa tincidunt nunc pulvinar. Phasellus faucibus scelerisque eleifend donec pretium. Venenatis cras sed felis eget velit aliquet sagittis id. Sem integer vitae justo eget magna fermentum iaculis eu. Etiam dignissim diam quis enim lobortis scelerisque. Facilisis magna etiam tempor orci eu lobortis elementum nibh tellus. + +Risus at ultrices mi tempus. Nullam eget felis eget nunc lobortis. At lectus urna duis convallis convallis tellus. Sem et tortor consequat id. Aliquet nec ullamcorper sit amet risus nullam eget felis eget. Tempor orci dapibus ultrices in iaculis nunc sed augue lacus. Risus commodo viverra maecenas accumsan lacus. Tempus iaculis urna id volutpat. Dolor sit amet consectetur adipiscing elit duis tristique. Venenatis a condimentum vitae sapien pellentesque habitant morbi. Vestibulum mattis ullamcorper velit sed ullamcorper morbi. Volutpat ac tincidunt vitae semper quis lectus nulla at volutpat. Fusce id velit ut tortor pretium viverra suspendisse potenti nullam. Auctor elit sed vulputate mi sit amet. In fermentum et sollicitudin ac. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar. + +Morbi enim nunc faucibus a pellentesque sit amet. Ut placerat orci nulla pellentesque dignissim enim sit amet venenatis. Pretium fusce id velit ut tortor pretium viverra suspendisse. Suscipit tellus mauris a diam maecenas sed enim. Vulputate mi sit amet mauris commodo quis. Eleifend quam adipiscing vitae proin sagittis. Egestas maecenas pharetra convallis posuere morbi. Vitae proin sagittis nisl rhoncus. Ornare arcu odio ut sem nulla pharetra diam. Ut lectus arcu bibendum at varius vel pharetra vel. Erat nam at lectus urna duis convallis convallis tellus. Gravida cum sociis natoque penatibus et. Lacus vestibulum sed arcu non. Placerat vestibulum lectus mauris ultrices eros in cursus turpis massa. Faucibus a pellentesque sit amet porttitor. Duis ut diam quam nulla porttitor. Odio pellentesque diam volutpat commodo sed. Mattis enim ut tellus elementum sagittis vitae. Arcu dui vivamus arcu felis bibendum ut tristique. Ac felis donec et odio pellentesque diam volutpat commodo sed. + +Tincidunt lobortis feugiat vivamus at augue eget arcu dictum. Ut lectus arcu bibendum at varius. Sit amet tellus cras adipiscing enim. Tristique nulla aliquet enim tortor at. Risus nec feugiat in fermentum posuere urna nec. Scelerisque felis imperdiet proin fermentum leo vel orci porta non. Sagittis nisl rhoncus mattis rhoncus urna neque. Risus nec feugiat in fermentum posuere. Mattis ullamcorper velit sed ullamcorper morbi tincidunt. Pellentesque nec nam aliquam sem et tortor. Morbi non arcu risus quis varius quam quisque id. Et odio pellentesque diam volutpat commodo sed. Mus mauris vitae ultricies leo integer malesuada. Convallis aenean et tortor at risus viverra adipiscing at in. Mauris commodo quis imperdiet massa tincidunt. + +Magna sit amet purus gravida. Sit amet est placerat in. Habitant morbi tristique senectus et. Justo donec enim diam vulputate ut pharetra sit amet. At tellus at urna condimentum mattis pellentesque. Nisl condimentum id venenatis a condimentum. Etiam sit amet nisl purus in mollis. Aliquam faucibus purus in massa tempor. Nunc sed augue lacus viverra vitae congue. Viverra nam libero justo laoreet sit amet cursus sit amet. Imperdiet massa tincidunt nunc pulvinar sapien et ligula ullamcorper. Auctor neque vitae tempus quam. Dolor sed viverra ipsum nunc. Non curabitur gravida arcu ac. Cras semper auctor neque vitae tempus quam. Duis ultricies lacus sed turpis tincidunt id aliquet risus. Gravida dictum fusce ut placerat orci nulla. Risus pretium quam vulputate dignissim suspendisse in est ante. Mattis nunc sed blandit libero volutpat sed. Orci sagittis eu volutpat odio facilisis. + +Fusce ut placerat orci nulla pellentesque dignissim enim sit amet. Lacus viverra vitae congue eu consequat ac felis. Viverra aliquet eget sit amet. Malesuada fames ac turpis egestas. Risus pretium quam vulputate dignissim suspendisse in est ante. In hac habitasse platea dictumst quisque sagittis purus sit amet. Enim nulla aliquet porttitor lacus luctus accumsan tortor. Justo donec enim diam vulputate. Semper viverra nam libero justo laoreet. Proin sed libero enim sed faucibus turpis in eu mi. Commodo ullamcorper a lacus vestibulum sed arcu non odio. Vivamus at augue eget arcu dictum. + +Nam aliquam sem et tortor consequat. Neque convallis a cras semper auctor neque vitae tempus. Semper quis lectus nulla at volutpat diam ut. Nisi est sit amet facilisis magna etiam tempor orci eu. Condimentum vitae sapien pellentesque habitant. Fusce ut placerat orci nulla. Sem et tortor consequat id porta. Tempor nec feugiat nisl pretium fusce. Odio eu feugiat pretium nibh. Eleifend mi in nulla posuere sollicitudin aliquam. Tempor nec feugiat nisl pretium fusce id velit ut. Dolor magna eget est lorem ipsum dolor. Nec feugiat in fermentum posuere urna nec tincidunt praesent semper. Congue nisi vitae suscipit tellus mauris a diam. Egestas egestas fringilla phasellus faucibus scelerisque eleifend. Sed libero enim sed faucibus turpis in eu mi. Quis commodo odio aenean sed adipiscing. Dolor magna eget est lorem ipsum dolor sit. Eget duis at tellus at. + +Vitae auctor eu augue ut. Diam donec adipiscing tristique risus nec feugiat in fermentum posuere. Dictum at tempor commodo ullamcorper a lacus vestibulum. Eget magna fermentum iaculis eu. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Eget dolor morbi non arcu risus quis varius quam quisque. Suspendisse ultrices gravida dictum fusce ut placerat. Quam pellentesque nec nam aliquam sem et. Arcu dictum varius duis at. Vitae semper quis lectus nulla at. + +Id neque aliquam vestibulum morbi blandit cursus risus at ultrices. Arcu dictum varius duis at consectetur lorem donec massa sapien. Nisi lacus sed viverra tellus. Aliquam sem fringilla ut morbi tincidunt. Id porta nibh venenatis cras sed felis eget. Ut porttitor leo a diam sollicitudin tempor id eu. Amet nisl suscipit adipiscing bibendum. Dictum fusce ut placerat orci nulla pellentesque dignissim. Fringilla ut morbi tincidunt augue. Porta nibh venenatis cras sed. Malesuada fames ac turpis egestas sed tempus. Erat nam at lectus urna duis convallis. + +Leo a diam sollicitudin tempor id eu nisl nunc. Nisl nunc mi ipsum faucibus vitae aliquet nec ullamcorper sit. Non quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor. Felis eget velit aliquet sagittis id consectetur purus ut. Nisi scelerisque eu ultrices vitae auctor. Et malesuada fames ac turpis egestas integer eget aliquet nibh. Tincidunt arcu non sodales neque sodales. Tincidunt praesent semper feugiat nibh. Aliquam vestibulum morbi blandit cursus. At tellus at urna condimentum. + +Urna neque viverra justo nec ultrices dui sapien. Cursus eget nunc scelerisque viverra mauris in aliquam sem. Hendrerit dolor magna eget est lorem ipsum. Eget duis at tellus at urna condimentum mattis pellentesque id. Lorem mollis aliquam ut porttitor leo a diam. Elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Velit ut tortor pretium viverra suspendisse potenti nullam ac tortor. Quisque sagittis purus sit amet volutpat consequat mauris. Facilisis volutpat est velit egestas dui id ornare arcu. Lorem ipsum dolor sit amet consectetur. Nunc aliquet bibendum enim facilisis gravida. Integer malesuada nunc vel risus commodo. + +Tellus cras adipiscing enim eu turpis egestas. Fringilla phasellus faucibus scelerisque eleifend donec pretium. Quis risus sed vulputate odio ut enim blandit volutpat. Risus nullam eget felis eget nunc lobortis mattis aliquam. Imperdiet dui accumsan sit amet nulla facilisi morbi tempus. Sit amet cursus sit amet. Elit pellentesque habitant morbi tristique senectus et netus. Tristique risus nec feugiat in fermentum. Praesent elementum facilisis leo vel fringilla est ullamcorper eget nulla. Dignissim suspendisse in est ante in nibh mauris cursus mattis. Donec pretium vulputate sapien nec sagittis aliquam malesuada bibendum. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Fermentum odio eu feugiat pretium nibh ipsum consequat. Vitae turpis massa sed elementum tempus. In aliquam sem fringilla ut morbi tincidunt. Urna duis convallis convallis tellus id interdum velit laoreet. Nulla facilisi cras fermentum odio eu feugiat pretium nibh. Et magnis dis parturient montes nascetur. Tellus in metus vulputate eu scelerisque. Tincidunt ornare massa eget egestas purus viverra. + +Sit amet facilisis magna etiam tempor orci. Aliquet eget sit amet tellus. Ipsum suspendisse ultrices gravida dictum fusce ut placerat orci nulla. Venenatis tellus in metus vulputate eu. Urna condimentum mattis pellentesque id nibh. Facilisis volutpat est velit egestas. Arcu vitae elementum curabitur vitae nunc sed velit dignissim sodales. Adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus urna neque. A scelerisque purus semper eget duis at tellus. Ac feugiat sed lectus vestibulum mattis ullamcorper. Maecenas ultricies mi eget mauris pharetra et ultrices. Ac turpis egestas sed tempus urna et pharetra. Urna molestie at elementum eu facilisis sed. Ipsum faucibus vitae aliquet nec ullamcorper sit amet risus nullam. Dignissim cras tincidunt lobortis feugiat vivamus at augue eget arcu. Vestibulum sed arcu non odio. Viverra accumsan in nisl nisi scelerisque eu. Fermentum odio eu feugiat pretium nibh. Scelerisque purus semper eget duis at tellus at. + +Suspendisse in est ante in nibh. Cursus eget nunc scelerisque viverra mauris in aliquam sem. Hac habitasse platea dictumst quisque sagittis. Neque vitae tempus quam pellentesque nec nam aliquam sem et. Quis risus sed vulputate odio ut. Ac placerat vestibulum lectus mauris ultrices. Ac tincidunt vitae semper quis lectus nulla. In nulla posuere sollicitudin aliquam ultrices sagittis orci a. Vitae turpis massa sed elementum tempus egestas. Aenean euismod elementum nisi quis. Augue interdum velit euismod in pellentesque massa. Sed risus ultricies tristique nulla. Tempus urna et pharetra pharetra massa massa ultricies mi quis. Massa id neque aliquam vestibulum morbi blandit. + +A pellentesque sit amet porttitor eget dolor. Quis enim lobortis scelerisque fermentum dui faucibus in ornare quam. Elit eget gravida cum sociis natoque penatibus. Arcu non odio euismod lacinia at quis risus sed vulputate. Lorem ipsum dolor sit amet consectetur. Pellentesque habitant morbi tristique senectus et netus et malesuada. A diam maecenas sed enim ut sem viverra aliquet eget. Nunc mattis enim ut tellus. Sit amet massa vitae tortor condimentum. Faucibus nisl tincidunt eget nullam non nisi est. Diam phasellus vestibulum lorem sed risus ultricies tristique nulla aliquet. Magna fermentum iaculis eu non diam phasellus. + +Eu consequat ac felis donec. Et netus et malesuada fames ac turpis egestas sed tempus. Purus sit amet luctus venenatis lectus magna fringilla. Proin sagittis nisl rhoncus mattis rhoncus urna. Id neque aliquam vestibulum morbi blandit cursus risus. Est ultricies integer quis auctor elit sed vulputate mi sit. Egestas purus viverra accumsan in nisl nisi scelerisque eu. Sit amet luctus venenatis lectus magna fringilla urna porttitor rhoncus. Pharetra magna ac placerat vestibulum lectus mauris ultrices. Id diam vel quam elementum pulvinar etiam non quam lacus. Tristique magna sit amet purus gravida quis blandit turpis cursus. Enim blandit volutpat maecenas volutpat. Varius vel pharetra vel turpis nunc eget lorem. + +Platea dictumst quisque sagittis purus sit. Risus ultricies tristique nulla aliquet enim tortor at. Duis convallis convallis tellus id interdum velit. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Sit amet massa vitae tortor condimentum. Lectus sit amet est placerat. Mauris nunc congue nisi vitae suscipit tellus mauris a. Ipsum suspendisse ultrices gravida dictum fusce. Tortor vitae purus faucibus ornare suspendisse. Pharetra pharetra massa massa ultricies. Mauris vitae ultricies leo integer malesuada nunc vel. Bibendum neque egestas congue quisque egestas diam. + +Et molestie ac feugiat sed lectus. Aliquet enim tortor at auctor urna nunc id cursus metus. Sodales ut eu sem integer vitae justo eget magna fermentum. Cursus turpis massa tincidunt dui ut ornare. Nec feugiat nisl pretium fusce id velit. Augue neque gravida in fermentum. Et malesuada fames ac turpis egestas. Integer enim neque volutpat ac tincidunt vitae semper quis lectus. Facilisis mauris sit amet massa. Suspendisse faucibus interdum posuere lorem ipsum dolor sit. Proin libero nunc consequat interdum varius sit amet. Odio ut enim blandit volutpat maecenas. Vestibulum morbi blandit cursus risus at ultrices. Sed adipiscing diam donec adipiscing tristique risus nec feugiat in. Pretium quam vulputate dignissim suspendisse in. Cras semper auctor neque vitae tempus quam pellentesque. Aliquet enim tortor at auctor urna nunc id cursus. Tempus imperdiet nulla malesuada pellentesque elit. + +Tincidunt tortor aliquam nulla facilisi cras fermentum. Posuere sollicitudin aliquam ultrices sagittis orci a scelerisque. Nibh nisl condimentum id venenatis a. Montes nascetur ridiculus mus mauris. Bibendum enim facilisis gravida neque convallis a cras. Ullamcorper velit sed ullamcorper morbi. Scelerisque varius morbi enim nunc faucibus a. Hendrerit dolor magna eget est lorem. Cursus vitae congue mauris rhoncus. Nec sagittis aliquam malesuada bibendum arcu. Tempus quam pellentesque nec nam aliquam sem et tortor consequat. Vel orci porta non pulvinar neque laoreet. Quis auctor elit sed vulputate. Amet purus gravida quis blandit turpis cursus in. + +Nunc non blandit massa enim nec dui nunc. Adipiscing tristique risus nec feugiat in fermentum. Donec enim diam vulputate ut pharetra sit amet aliquam. Elementum eu facilisis sed odio morbi. Mus mauris vitae ultricies leo integer malesuada. Mollis aliquam ut porttitor leo a diam sollicitudin. Feugiat vivamus at augue eget arcu dictum varius duis. Viverra adipiscing at in tellus. Ullamcorper velit sed ullamcorper morbi tincidunt ornare massa eget egestas. Tincidunt lobortis feugiat vivamus at augue. Tortor at risus viverra adipiscing. Bibendum est ultricies integer quis auctor. Varius morbi enim nunc faucibus a. Ornare lectus sit amet est placerat in egestas. Ultrices neque ornare aenean euismod elementum. + +Sed odio morbi quis commodo odio aenean. Sit amet porttitor eget dolor morbi non arcu risus. Phasellus faucibus scelerisque eleifend donec pretium vulputate sapien nec. Aliquam sem et tortor consequat. Dui vivamus arcu felis bibendum ut tristique et egestas. Non nisi est sit amet facilisis magna etiam. Velit egestas dui id ornare arcu odio ut sem nulla. Suspendisse potenti nullam ac tortor vitae purus. Sodales ut eu sem integer vitae. Est pellentesque elit ullamcorper dignissim. Lobortis scelerisque fermentum dui faucibus in. In eu mi bibendum neque egestas congue. Porta non pulvinar neque laoreet. + +Tincidunt lobortis feugiat vivamus at. Nibh venenatis cras sed felis eget velit aliquet. Scelerisque felis imperdiet proin fermentum leo vel orci. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt. Porta lorem mollis aliquam ut porttitor leo a. Erat imperdiet sed euismod nisi porta lorem mollis aliquam. Id cursus metus aliquam eleifend. Luctus accumsan tortor posuere ac ut consequat semper viverra nam. Eu facilisis sed odio morbi quis. Cursus sit amet dictum sit amet justo donec. Non consectetur a erat nam at lectus urna duis convallis. Tristique sollicitudin nibh sit amet commodo nulla facilisi nullam vehicula. Diam vulputate ut pharetra sit amet aliquam id diam. Morbi tristique senectus et netus et malesuada fames ac turpis. Feugiat sed lectus vestibulum mattis ullamcorper velit. Lacus viverra vitae congue eu consequat ac felis donec et. Amet tellus cras adipiscing enim. Consequat ac felis donec et odio pellentesque diam. + +Integer eget aliquet nibh praesent tristique. Eros donec ac odio tempor orci dapibus ultrices. Quam elementum pulvinar etiam non. Consectetur adipiscing elit duis tristique sollicitudin nibh. Nunc sed id semper risus in hendrerit gravida. Sit amet justo donec enim. Nisl nunc mi ipsum faucibus vitae aliquet nec. Montes nascetur ridiculus mus mauris. Tristique nulla aliquet enim tortor at auctor. Nec ultrices dui sapien eget mi proin. Vitae turpis massa sed elementum. Vitae tortor condimentum lacinia quis vel eros donec ac. Vitae et leo duis ut diam quam nulla porttitor. Accumsan lacus vel facilisis volutpat est velit egestas. Tellus pellentesque eu tincidunt tortor. Eget aliquet nibh praesent tristique magna sit amet purus gravida. Pretium vulputate sapien nec sagittis aliquam malesuada bibendum arcu vitae. Id leo in vitae turpis massa. + +Est ante in nibh mauris cursus mattis molestie a. Vulputate sapien nec sagittis aliquam malesuada bibendum arcu vitae elementum. Tempor commodo ullamcorper a lacus vestibulum. Faucibus in ornare quam viverra orci sagittis eu. Laoreet sit amet cursus sit amet dictum sit amet justo. Nec feugiat in fermentum posuere urna nec. Sit amet mattis vulputate enim nulla. Morbi non arcu risus quis varius. Massa massa ultricies mi quis hendrerit dolor magna eget est. Etiam tempor orci eu lobortis elementum nibh. Eu scelerisque felis imperdiet proin fermentum leo vel. Cursus mattis molestie a iaculis at erat. Congue nisi vitae suscipit tellus mauris a diam maecenas sed. + +Viverra suspendisse potenti nullam ac tortor vitae. Sit amet facilisis magna etiam tempor orci. Tellus in metus vulputate eu scelerisque felis. Mi proin sed libero enim. Dis parturient montes nascetur ridiculus. Etiam non quam lacus suspendisse. Tortor condimentum lacinia quis vel eros donec. Tincidunt tortor aliquam nulla facilisi. Vulputate sapien nec sagittis aliquam. Ut morbi tincidunt augue interdum velit. + +Elementum facilisis leo vel fringilla est. Congue nisi vitae suscipit tellus mauris. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Neque viverra justo nec ultrices dui. Aliquam ut porttitor leo a diam sollicitudin. Diam quam nulla porttitor massa. Ullamcorper eget nulla facilisi etiam dignissim diam. Tortor pretium viverra suspendisse potenti nullam. Ornare massa eget egestas purus viverra accumsan in. Dignissim sodales ut eu sem integer vitae justo eget magna. Sapien pellentesque habitant morbi tristique senectus. Egestas erat imperdiet sed euismod nisi. Sed felis eget velit aliquet. Vel facilisis volutpat est velit egestas dui. Arcu non sodales neque sodales. Tincidunt ornare massa eget egestas purus viverra accumsan. Diam quam nulla porttitor massa id neque aliquam vestibulum morbi. Vulputate ut pharetra sit amet aliquam id. + +Enim lobortis scelerisque fermentum dui faucibus in. Ut diam quam nulla porttitor massa id neque aliquam vestibulum. Vitae auctor eu augue ut lectus arcu bibendum at. Suspendisse ultrices gravida dictum fusce ut placerat orci nulla pellentesque. Faucibus nisl tincidunt eget nullam non nisi. Massa tempor nec feugiat nisl pretium fusce. Sit amet nisl purus in mollis nunc sed id semper. Turpis nunc eget lorem dolor sed. Sem integer vitae justo eget magna. Facilisis leo vel fringilla est ullamcorper. Et tortor at risus viverra adipiscing at in tellus integer. Ornare arcu dui vivamus arcu felis bibendum ut tristique et. Porta lorem mollis aliquam ut porttitor. In egestas erat imperdiet sed euismod. Lectus proin nibh nisl condimentum id venenatis a condimentum vitae. + +Mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus et netus. Viverra vitae congue eu consequat. Non tellus orci ac auctor augue mauris augue. Tempus urna et pharetra pharetra massa massa ultricies mi quis. Fringilla est ullamcorper eget nulla facilisi. Tortor id aliquet lectus proin nibh nisl condimentum id venenatis. Diam in arcu cursus euismod quis. Non tellus orci ac auctor augue mauris. Sed viverra ipsum nunc aliquet bibendum enim facilisis. Ornare lectus sit amet est placerat in egestas. Arcu odio ut sem nulla pharetra diam sit amet nisl. Et leo duis ut diam quam nulla porttitor massa id. Morbi tincidunt ornare massa eget egestas purus. Tortor posuere ac ut consequat. + +Molestie a iaculis at erat pellentesque adipiscing commodo. Diam quam nulla porttitor massa id neque. Enim nulla aliquet porttitor lacus luctus. Elementum pulvinar etiam non quam lacus. Tortor aliquam nulla facilisi cras fermentum odio eu feugiat. Tortor id aliquet lectus proin nibh nisl condimentum. Augue mauris augue neque gravida in fermentum et sollicitudin. Pellentesque habitant morbi tristique senectus et netus et malesuada fames. Ac feugiat sed lectus vestibulum. Vitae ultricies leo integer malesuada nunc vel risus. Orci nulla pellentesque dignissim enim sit. Velit laoreet id donec ultrices tincidunt arcu. Sollicitudin nibh sit amet commodo. Velit euismod in pellentesque massa placerat. Risus sed vulputate odio ut. Porttitor leo a diam sollicitudin tempor id eu. Ut tristique et egestas quis. + +Eget aliquet nibh praesent tristique. Eget nullam non nisi est. Quis enim lobortis scelerisque fermentum dui faucibus in ornare quam. Sed faucibus turpis in eu. Porttitor lacus luctus accumsan tortor posuere ac ut. Tellus at urna condimentum mattis pellentesque id. Bibendum at varius vel pharetra. Nullam ac tortor vitae purus. Et sollicitudin ac orci phasellus. Molestie a iaculis at erat. Pharetra sit amet aliquam id diam maecenas ultricies mi eget. Fermentum et sollicitudin ac orci phasellus. + +Habitant morbi tristique senectus et netus et. Non nisi est sit amet. Eget nullam non nisi est sit amet facilisis magna. Condimentum vitae sapien pellentesque habitant morbi. Pellentesque diam volutpat commodo sed egestas. Ipsum consequat nisl vel pretium. Enim sed faucibus turpis in eu mi. Dui accumsan sit amet nulla facilisi morbi tempus. Adipiscing elit ut aliquam purus sit amet luctus venenatis. Aliquam sem et tortor consequat id porta nibh venenatis cras. Dolor sit amet consectetur adipiscing elit duis tristique. Ut tellus elementum sagittis vitae et leo. Et tortor consequat id porta nibh venenatis cras sed. + +Ut etiam sit amet nisl purus in mollis nunc sed. Elit eget gravida cum sociis natoque penatibus. Et odio pellentesque diam volutpat commodo sed egestas. Elementum curabitur vitae nunc sed velit dignissim. Cras ornare arcu dui vivamus arcu felis bibendum. Fringilla ut morbi tincidunt augue interdum velit euismod in. Malesuada fames ac turpis egestas. Sem viverra aliquet eget sit amet. Leo in vitae turpis massa sed elementum. Tincidunt praesent semper feugiat nibh sed pulvinar proin gravida. Amet porttitor eget dolor morbi non. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Cursus in hac habitasse platea dictumst quisque sagittis purus sit. Nisl purus in mollis nunc sed. Feugiat in ante metus dictum at. Pharetra et ultrices neque ornare aenean euismod elementum nisi quis. Aliquet lectus proin nibh nisl condimentum. + +Eros in cursus turpis massa tincidunt dui ut ornare. Pretium aenean pharetra magna ac placerat vestibulum lectus mauris. Lacus laoreet non curabitur gravida. Nisl vel pretium lectus quam id. Nam libero justo laoreet sit amet cursus sit amet. Egestas erat imperdiet sed euismod nisi porta. Lacus sed viverra tellus in hac habitasse. Ut placerat orci nulla pellentesque dignissim enim sit. Non consectetur a erat nam at. Feugiat scelerisque varius morbi enim nunc faucibus a. Sagittis orci a scelerisque purus. Platea dictumst quisque sagittis purus. At lectus urna duis convallis convallis tellus id interdum. Nibh cras pulvinar mattis nunc sed blandit libero volutpat sed. + +Leo vel fringilla est ullamcorper. Pretium aenean pharetra magna ac placerat vestibulum lectus mauris ultrices. Cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris. Nibh praesent tristique magna sit amet purus gravida quis. Volutpat est velit egestas dui id. Curabitur gravida arcu ac tortor. Erat nam at lectus urna duis convallis convallis tellus. Elit sed vulputate mi sit. Pellentesque habitant morbi tristique senectus et netus et malesuada. Tellus molestie nunc non blandit. Blandit cursus risus at ultrices. Luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Sed velit dignissim sodales ut. Ornare massa eget egestas purus viverra accumsan in. Ridiculus mus mauris vitae ultricies leo integer. Facilisi cras fermentum odio eu. + +Ullamcorper morbi tincidunt ornare massa eget egestas purus viverra accumsan. In metus vulputate eu scelerisque. Eget nullam non nisi est sit amet facilisis. Faucibus purus in massa tempor nec. Aliquet sagittis id consectetur purus. Malesuada bibendum arcu vitae elementum curabitur vitae nunc sed. Proin sed libero enim sed. In dictum non consectetur a erat nam at lectus urna. Arcu risus quis varius quam. Ut sem viverra aliquet eget. Tellus mauris a diam maecenas sed. Amet porttitor eget dolor morbi non arcu. Morbi quis commodo odio aenean sed adipiscing diam donec adipiscing. Ut pharetra sit amet aliquam id diam maecenas ultricies. + +Volutpat commodo sed egestas egestas fringilla phasellus. Tellus elementum sagittis vitae et leo duis ut diam. Gravida cum sociis natoque penatibus et. Sed vulputate odio ut enim blandit volutpat maecenas volutpat blandit. Amet consectetur adipiscing elit pellentesque habitant morbi tristique senectus. Id eu nisl nunc mi ipsum faucibus vitae aliquet nec. Faucibus purus in massa tempor. Elementum eu facilisis sed odio morbi quis commodo. Non odio euismod lacinia at quis risus sed. Velit dignissim sodales ut eu sem integer. Condimentum lacinia quis vel eros donec ac odio tempor. Etiam tempor orci eu lobortis elementum nibh tellus. + +Turpis cursus in hac habitasse platea dictumst quisque sagittis purus. Vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant. Egestas congue quisque egestas diam in. Lectus sit amet est placerat in egestas. Tristique risus nec feugiat in fermentum posuere urna nec tincidunt. Quam adipiscing vitae proin sagittis nisl. Purus semper eget duis at tellus at. Velit euismod in pellentesque massa. Ut faucibus pulvinar elementum integer enim. Tristique risus nec feugiat in fermentum. + +In hac habitasse platea dictumst vestibulum rhoncus est. Ac feugiat sed lectus vestibulum mattis. Blandit aliquam etiam erat velit scelerisque in dictum. Cursus turpis massa tincidunt dui ut ornare lectus sit. Faucibus a pellentesque sit amet porttitor. Posuere morbi leo urna molestie at elementum eu facilisis. Neque aliquam vestibulum morbi blandit cursus risus at ultrices mi. Eros donec ac odio tempor orci dapibus ultrices in iaculis. Cursus turpis massa tincidunt dui ut ornare. Vel risus commodo viverra maecenas accumsan. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu feugiat. Sem nulla pharetra diam sit amet nisl suscipit adipiscing. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Tortor condimentum lacinia quis vel eros. Vulputate ut pharetra sit amet aliquam id diam. Felis donec et odio pellentesque. + +Vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Senectus et netus et malesuada fames ac turpis egestas. Turpis egestas pretium aenean pharetra magna. Pretium viverra suspendisse potenti nullam. A pellentesque sit amet porttitor. Diam maecenas ultricies mi eget. Ornare arcu dui vivamus arcu felis bibendum ut tristique. Lacinia at quis risus sed vulputate odio ut. Urna et pharetra pharetra massa massa ultricies mi quis hendrerit. Vitae congue mauris rhoncus aenean vel. Viverra adipiscing at in tellus. Aliquet enim tortor at auctor urna nunc id. Ligula ullamcorper malesuada proin libero nunc consequat. Pulvinar mattis nunc sed blandit libero volutpat. Ut lectus arcu bibendum at varius vel pharetra vel turpis. Eu facilisis sed odio morbi. Commodo viverra maecenas accumsan lacus vel facilisis volutpat. + +Bibendum arcu vitae elementum curabitur. Amet consectetur adipiscing elit pellentesque habitant morbi. Turpis massa tincidunt dui ut ornare lectus sit amet. Ut morbi tincidunt augue interdum velit euismod in. Pretium fusce id velit ut tortor pretium viverra. Scelerisque varius morbi enim nunc faucibus a pellentesque sit amet. Dui faucibus in ornare quam viverra. Velit dignissim sodales ut eu sem integer. Magna fringilla urna porttitor rhoncus. Elementum tempus egestas sed sed risus pretium quam. Diam volutpat commodo sed egestas egestas fringilla phasellus faucibus. + +Convallis tellus id interdum velit laoreet id donec ultrices tincidunt. Purus viverra accumsan in nisl nisi scelerisque. Volutpat maecenas volutpat blandit aliquam etiam erat velit scelerisque. Volutpat blandit aliquam etiam erat velit scelerisque. Commodo elit at imperdiet dui accumsan sit. Pellentesque diam volutpat commodo sed. Integer eget aliquet nibh praesent. Dolor sit amet consectetur adipiscing elit pellentesque habitant morbi. Lacus vestibulum sed arcu non. Habitant morbi tristique senectus et netus et malesuada fames ac. Vel quam elementum pulvinar etiam non. + +Id aliquet risus feugiat in ante. Ut eu sem integer vitae justo eget magna fermentum. Sapien faucibus et molestie ac feugiat sed lectus. Condimentum mattis pellentesque id nibh tortor id aliquet. Libero id faucibus nisl tincidunt. In nisl nisi scelerisque eu. Rhoncus mattis rhoncus urna neque viverra justo nec ultrices. Proin fermentum leo vel orci porta non. Tincidunt id aliquet risus feugiat in ante. Pulvinar mattis nunc sed blandit libero. Ullamcorper eget nulla facilisi etiam dignissim diam quis. Auctor eu augue ut lectus. Mollis nunc sed id semper risus in. Mattis enim ut tellus elementum sagittis vitae et leo. Est ultricies integer quis auctor elit sed. Ipsum suspendisse ultrices gravida dictum fusce ut placerat. Est pellentesque elit ullamcorper dignissim cras tincidunt. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt. Posuere urna nec tincidunt praesent semper. Molestie ac feugiat sed lectus vestibulum mattis ullamcorper velit. + +Pellentesque pulvinar pellentesque habitant morbi. Tortor at risus viverra adipiscing at in tellus integer feugiat. Porttitor massa id neque aliquam. Aenean euismod elementum nisi quis eleifend quam. Velit scelerisque in dictum non consectetur. Nulla at volutpat diam ut venenatis tellus in metus vulputate. Senectus et netus et malesuada fames ac turpis. Donec massa sapien faucibus et molestie. Non consectetur a erat nam. Leo in vitae turpis massa sed elementum. Turpis egestas maecenas pharetra convallis. Dictum at tempor commodo ullamcorper a lacus. Bibendum enim facilisis gravida neque convallis a. + +Nulla at volutpat diam ut venenatis tellus in metus. Quis risus sed vulputate odio ut enim blandit. Pellentesque eu tincidunt tortor aliquam nulla facilisi cras fermentum. Ultrices neque ornare aenean euismod elementum nisi quis eleifend quam. Egestas congue quisque egestas diam in arcu cursus euismod quis. Porta nibh venenatis cras sed felis eget velit aliquet. Ac auctor augue mauris augue neque. Vitae aliquet nec ullamcorper sit amet risus. Viverra accumsan in nisl nisi scelerisque eu. Porta non pulvinar neque laoreet suspendisse interdum. Turpis massa sed elementum tempus egestas sed sed. In vitae turpis massa sed elementum tempus egestas sed. Quam elementum pulvinar etiam non quam lacus. Facilisis gravida neque convallis a cras semper auctor neque vitae. Integer enim neque volutpat ac tincidunt. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Et pharetra pharetra massa massa ultricies mi quis. Hendrerit dolor magna eget est lorem ipsum. In nisl nisi scelerisque eu ultrices vitae. At urna condimentum mattis pellentesque id nibh tortor id aliquet. + +Amet aliquam id diam maecenas ultricies mi. Bibendum neque egestas congue quisque egestas diam in arcu. Lobortis mattis aliquam faucibus purus. Arcu dui vivamus arcu felis bibendum ut tristique et. Ultrices eros in cursus turpis massa. Nascetur ridiculus mus mauris vitae. Faucibus nisl tincidunt eget nullam non nisi est sit amet. Purus sit amet volutpat consequat. Nisl pretium fusce id velit ut tortor. Duis at tellus at urna condimentum mattis pellentesque. Scelerisque viverra mauris in aliquam sem fringilla ut morbi. Scelerisque felis imperdiet proin fermentum leo. Auctor urna nunc id cursus metus aliquam eleifend mi in. Tincidunt arcu non sodales neque. Amet nisl purus in mollis nunc. Vestibulum mattis ullamcorper velit sed ullamcorper morbi. Interdum velit euismod in pellentesque massa placerat. Dolor magna eget est lorem. Nunc lobortis mattis aliquam faucibus purus in massa tempor. + +Et pharetra pharetra massa massa. Facilisi cras fermentum odio eu feugiat pretium nibh ipsum consequat. Quis commodo odio aenean sed adipiscing diam donec adipiscing tristique. Rhoncus urna neque viverra justo nec ultrices dui sapien. Egestas fringilla phasellus faucibus scelerisque. Est lorem ipsum dolor sit amet consectetur adipiscing elit pellentesque. In metus vulputate eu scelerisque felis. Tellus at urna condimentum mattis pellentesque id. Amet tellus cras adipiscing enim eu turpis egestas. Donec ac odio tempor orci dapibus ultrices in iaculis. Quam vulputate dignissim suspendisse in est ante in nibh mauris. Egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam nulla. + +Quam id leo in vitae turpis massa. Et egestas quis ipsum suspendisse ultrices gravida dictum fusce. Diam sollicitudin tempor id eu nisl nunc mi. Ornare arcu dui vivamus arcu. Ante metus dictum at tempor commodo ullamcorper a. Quam pellentesque nec nam aliquam sem et tortor consequat id. Senectus et netus et malesuada. Cursus sit amet dictum sit amet justo. Aliquam eleifend mi in nulla. Enim diam vulputate ut pharetra sit amet aliquam id diam. Volutpat lacus laoreet non curabitur gravida arcu ac. Erat pellentesque adipiscing commodo elit at. Sodales neque sodales ut etiam sit amet nisl. Volutpat maecenas volutpat blandit aliquam etiam erat. Risus commodo viverra maecenas accumsan lacus vel. Ipsum nunc aliquet bibendum enim. Elementum nibh tellus molestie nunc non. Amet nisl purus in mollis nunc sed id semper. Sit amet facilisis magna etiam tempor orci eu lobortis elementum. + +Ut ornare lectus sit amet est placerat in. Tellus at urna condimentum mattis pellentesque id nibh. Urna cursus eget nunc scelerisque viverra mauris in. Neque volutpat ac tincidunt vitae semper quis lectus nulla at. Fermentum odio eu feugiat pretium. Lacinia quis vel eros donec. Rhoncus est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Et ultrices neque ornare aenean. Metus aliquam eleifend mi in nulla posuere sollicitudin aliquam ultrices. Maecenas accumsan lacus vel facilisis volutpat est velit egestas dui. Ultrices in iaculis nunc sed augue lacus viverra. Duis ultricies lacus sed turpis. Commodo quis imperdiet massa tincidunt. Phasellus vestibulum lorem sed risus ultricies. Faucibus interdum posuere lorem ipsum dolor sit amet consectetur. Erat pellentesque adipiscing commodo elit at imperdiet. Nulla at volutpat diam ut venenatis tellus in. Morbi tempus iaculis urna id volutpat lacus laoreet non curabitur. + +Purus gravida quis blandit turpis. Ac turpis egestas integer eget. Cras tincidunt lobortis feugiat vivamus at augue. Nec ullamcorper sit amet risus. Cras ornare arcu dui vivamus arcu felis bibendum ut tristique. Massa tincidunt nunc pulvinar sapien et ligula. Risus sed vulputate odio ut. Dui faucibus in ornare quam. Urna cursus eget nunc scelerisque viverra mauris. Metus vulputate eu scelerisque felis imperdiet proin fermentum. Euismod nisi porta lorem mollis aliquam ut porttitor. Tempor commodo ullamcorper a lacus vestibulum sed. Pellentesque elit eget gravida cum sociis natoque penatibus et. Aliquam nulla facilisi cras fermentum odio eu feugiat pretium. Nulla facilisi cras fermentum odio eu feugiat pretium nibh. At risus viverra adipiscing at in tellus integer. Eu tincidunt tortor aliquam nulla facilisi cras fermentum. Et malesuada fames ac turpis egestas. Est lorem ipsum dolor sit amet consectetur adipiscing elit. + +Eget nunc lobortis mattis aliquam faucibus purus in. Et netus et malesuada fames ac turpis egestas sed. Faucibus pulvinar elementum integer enim neque volutpat ac tincidunt vitae. Malesuada proin libero nunc consequat interdum. Faucibus a pellentesque sit amet porttitor eget. Arcu felis bibendum ut tristique et egestas quis. Dignissim cras tincidunt lobortis feugiat vivamus at. In metus vulputate eu scelerisque felis imperdiet. Eget nulla facilisi etiam dignissim diam quis enim lobortis. Pellentesque habitant morbi tristique senectus et netus. Id volutpat lacus laoreet non curabitur gravida. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Leo a diam sollicitudin tempor id eu. Varius quam quisque id diam vel quam elementum. Viverra suspendisse potenti nullam ac. Egestas erat imperdiet sed euismod nisi. + +Leo duis ut diam quam nulla porttitor massa id. Interdum velit laoreet id donec ultrices tincidunt. Eget mi proin sed libero. Nulla malesuada pellentesque elit eget gravida cum sociis natoque. Varius vel pharetra vel turpis. Gravida in fermentum et sollicitudin ac orci. Tempor nec feugiat nisl pretium fusce id velit ut. Eu augue ut lectus arcu bibendum at varius vel. Vitae nunc sed velit dignissim. Velit dignissim sodales ut eu sem integer vitae justo eget. Duis at tellus at urna. Tincidunt augue interdum velit euismod in pellentesque massa placerat. At volutpat diam ut venenatis tellus in. Id aliquet risus feugiat in ante. Nullam vehicula ipsum a arcu cursus vitae congue mauris. At quis risus sed vulputate odio ut. + +Sagittis nisl rhoncus mattis rhoncus urna. Dictumst quisque sagittis purus sit amet volutpat. Magna etiam tempor orci eu. Risus viverra adipiscing at in. Eu facilisis sed odio morbi quis commodo. Mi in nulla posuere sollicitudin aliquam ultrices. Etiam erat velit scelerisque in dictum. Vel quam elementum pulvinar etiam. Adipiscing elit pellentesque habitant morbi. Leo vel orci porta non pulvinar neque. Viverra adipiscing at in tellus integer. Congue quisque egestas diam in. Auctor elit sed vulputate mi sit amet mauris. Vitae sapien pellentesque habitant morbi tristique senectus et netus et. Rhoncus urna neque viverra justo nec. Dignissim sodales ut eu sem integer vitae justo eget. Tristique et egestas quis ipsum suspendisse ultrices gravida dictum. Semper eget duis at tellus at. Phasellus faucibus scelerisque eleifend donec pretium vulputate sapien nec sagittis. + +Dictum varius duis at consectetur. Consequat semper viverra nam libero justo laoreet sit. Neque egestas congue quisque egestas diam in. Velit scelerisque in dictum non consectetur a. Faucibus et molestie ac feugiat sed lectus. Dictum sit amet justo donec enim. Lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit amet. Ante in nibh mauris cursus mattis molestie a iaculis at. Lectus vestibulum mattis ullamcorper velit sed ullamcorper. Dictumst quisque sagittis purus sit amet volutpat consequat mauris. Sit amet luctus venenatis lectus magna fringilla urna porttitor rhoncus. Eget nunc lobortis mattis aliquam. Porta lorem mollis aliquam ut porttitor leo. Nam aliquam sem et tortor consequat id. Lacus laoreet non curabitur gravida arcu ac. Mauris sit amet massa vitae tortor condimentum lacinia. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan. Nulla pharetra diam sit amet. + +Placerat vestibulum lectus mauris ultrices eros. Pulvinar pellentesque habitant morbi tristique senectus et netus et. Justo eget magna fermentum iaculis eu non diam phasellus. Iaculis nunc sed augue lacus viverra vitae congue eu. Risus nec feugiat in fermentum posuere urna nec. Massa vitae tortor condimentum lacinia quis vel eros donec. Et malesuada fames ac turpis egestas integer eget aliquet nibh. Sit amet justo donec enim diam vulputate. Diam sollicitudin tempor id eu nisl nunc mi ipsum. Malesuada fames ac turpis egestas maecenas pharetra convallis. Vulputate dignissim suspendisse in est ante in nibh. Consectetur a erat nam at lectus urna duis convallis convallis. + +Sagittis id consectetur purus ut faucibus pulvinar elementum integer enim. Nibh cras pulvinar mattis nunc sed blandit. Varius duis at consectetur lorem donec massa. Feugiat pretium nibh ipsum consequat. Eget arcu dictum varius duis. Malesuada pellentesque elit eget gravida cum sociis natoque penatibus. Id donec ultrices tincidunt arcu non sodales. Et molestie ac feugiat sed lectus vestibulum mattis ullamcorper velit. Vitae elementum curabitur vitae nunc sed velit dignissim sodales ut. Ultricies mi quis hendrerit dolor magna. Ipsum nunc aliquet bibendum enim facilisis. Sed egestas egestas fringilla phasellus faucibus scelerisque. Scelerisque fermentum dui faucibus in ornare quam viverra orci. Nec sagittis aliquam malesuada bibendum arcu vitae elementum curabitur vitae. Scelerisque viverra mauris in aliquam sem. + +Sed odio morbi quis commodo odio aenean sed adipiscing diam. Tortor at auctor urna nunc id. Ornare arcu odio ut sem nulla pharetra. Vel pretium lectus quam id. Quam nulla porttitor massa id neque aliquam vestibulum morbi. Id velit ut tortor pretium viverra. Sit amet justo donec enim diam vulputate. Aliquam ut porttitor leo a diam. Ut faucibus pulvinar elementum integer enim neque volutpat ac. Arcu dui vivamus arcu felis bibendum. Vivamus at augue eget arcu dictum. Aliquam vestibulum morbi blandit cursus risus. Tristique et egestas quis ipsum suspendisse ultrices gravida dictum. Est ante in nibh mauris. Mattis rhoncus urna neque viverra. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc sed. Sed sed risus pretium quam vulputate dignissim suspendisse. Et pharetra pharetra massa massa ultricies mi quis. Vivamus arcu felis bibendum ut tristique et. + +Magna eget est lorem ipsum dolor sit amet. Justo eget magna fermentum iaculis eu non diam phasellus. Pulvinar mattis nunc sed blandit libero volutpat sed. Sed velit dignissim sodales ut eu sem integer. Elementum nibh tellus molestie nunc non blandit massa enim nec. Hendrerit gravida rutrum quisque non. Viverra nam libero justo laoreet sit amet. Est pellentesque elit ullamcorper dignissim. Neque laoreet suspendisse interdum consectetur libero id faucibus nisl tincidunt. Enim tortor at auctor urna. Diam sit amet nisl suscipit. Pellentesque habitant morbi tristique senectus et netus. Tellus rutrum tellus pellentesque eu tincidunt tortor aliquam. Sed vulputate mi sit amet mauris commodo quis. Morbi quis commodo odio aenean sed adipiscing diam. Ac orci phasellus egestas tellus rutrum. Ipsum nunc aliquet bibendum enim. Morbi tincidunt augue interdum velit euismod in pellentesque. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. + +Hac habitasse platea dictumst vestibulum. Et malesuada fames ac turpis. Condimentum id venenatis a condimentum vitae sapien pellentesque habitant. Porta lorem mollis aliquam ut porttitor leo a diam. Nullam non nisi est sit amet facilisis. Dolor morbi non arcu risus quis varius. Mattis rhoncus urna neque viverra justo nec ultrices dui. Sapien eget mi proin sed libero enim sed. Mi quis hendrerit dolor magna eget. Quam adipiscing vitae proin sagittis nisl. Pharetra magna ac placerat vestibulum lectus mauris ultrices. Mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus et. Vitae proin sagittis nisl rhoncus mattis rhoncus. Lorem sed risus ultricies tristique nulla aliquet. Purus gravida quis blandit turpis cursus in hac. Ante metus dictum at tempor commodo ullamcorper a. Non odio euismod lacinia at. Urna nunc id cursus metus aliquam eleifend. Egestas egestas fringilla phasellus faucibus scelerisque eleifend. Dui accumsan sit amet nulla. + +Id aliquet lectus proin nibh nisl. Suspendisse ultrices gravida dictum fusce ut placerat orci. At erat pellentesque adipiscing commodo elit at imperdiet dui. Massa enim nec dui nunc mattis enim ut. Sem nulla pharetra diam sit amet nisl suscipit adipiscing. In fermentum posuere urna nec tincidunt. Ut venenatis tellus in metus vulputate eu scelerisque felis. Mi ipsum faucibus vitae aliquet nec ullamcorper sit. Vulputate ut pharetra sit amet aliquam. Velit ut tortor pretium viverra suspendisse potenti nullam ac. Tortor aliquam nulla facilisi cras fermentum odio eu feugiat. + +Morbi quis commodo odio aenean sed. Sollicitudin nibh sit amet commodo nulla facilisi. Semper risus in hendrerit gravida rutrum quisque non. Vitae aliquet nec ullamcorper sit amet risus nullam eget felis. Sit amet consectetur adipiscing elit duis tristique sollicitudin nibh. Nulla malesuada pellentesque elit eget gravida cum sociis natoque penatibus. Sed viverra ipsum nunc aliquet bibendum enim facilisis gravida neque. Amet nisl purus in mollis nunc sed. Nec ullamcorper sit amet risus nullam eget felis eget. Mauris augue neque gravida in. Id leo in vitae turpis massa sed elementum tempus egestas. Nibh mauris cursus mattis molestie a iaculis at erat. Eget est lorem ipsum dolor sit amet. Pellentesque nec nam aliquam sem et tortor. Mauris ultrices eros in cursus turpis massa tincidunt. Est ante in nibh mauris cursus mattis. Mauris rhoncus aenean vel elit scelerisque mauris. Sit amet massa vitae tortor condimentum lacinia. + +Neque viverra justo nec ultrices dui sapien. Enim blandit volutpat maecenas volutpat. Quam nulla porttitor massa id neque aliquam vestibulum morbi. Consequat ac felis donec et odio pellentesque diam. Sit amet risus nullam eget felis eget. Amet nulla facilisi morbi tempus. Sit amet dictum sit amet. At tempor commodo ullamcorper a lacus vestibulum. Massa tincidunt dui ut ornare lectus. Adipiscing tristique risus nec feugiat in fermentum posuere urna nec. At volutpat diam ut venenatis tellus in metus vulputate. Pulvinar pellentesque habitant morbi tristique. Luctus accumsan tortor posuere ac ut consequat semper viverra. + +Metus aliquam eleifend mi in. Mauris cursus mattis molestie a iaculis at erat. In fermentum et sollicitudin ac orci phasellus egestas tellus. Turpis massa sed elementum tempus egestas sed sed risus pretium. Tristique senectus et netus et malesuada fames ac turpis. Quis ipsum suspendisse ultrices gravida dictum fusce ut. Massa vitae tortor condimentum lacinia quis vel eros donec ac. Urna nunc id cursus metus aliquam eleifend mi. Pellentesque adipiscing commodo elit at imperdiet dui accumsan sit. In eu mi bibendum neque egestas congue quisque egestas. Laoreet sit amet cursus sit amet dictum sit. + +Id semper risus in hendrerit gravida rutrum quisque. Ultrices vitae auctor eu augue ut lectus arcu bibendum at. Sit amet commodo nulla facilisi nullam vehicula. Consequat nisl vel pretium lectus. Pharetra massa massa ultricies mi quis hendrerit dolor magna. Eget nullam non nisi est sit amet facilisis magna etiam. Consectetur purus ut faucibus pulvinar elementum integer enim. Porttitor rhoncus dolor purus non enim praesent elementum. Platea dictumst vestibulum rhoncus est. Tellus orci ac auctor augue mauris augue. Nibh mauris cursus mattis molestie a iaculis at erat pellentesque. Auctor eu augue ut lectus arcu bibendum at varius. Facilisis leo vel fringilla est ullamcorper eget nulla facilisi etiam. Pharetra massa massa ultricies mi quis hendrerit. A pellentesque sit amet porttitor eget dolor morbi non. Malesuada proin libero nunc consequat. Facilisi cras fermentum odio eu feugiat pretium. Eget aliquet nibh praesent tristique magna sit amet. Venenatis a condimentum vitae sapien. Neque ornare aenean euismod elementum nisi quis. + +Volutpat consequat mauris nunc congue nisi vitae suscipit. Laoreet id donec ultrices tincidunt arcu. Aliquam sem et tortor consequat id porta. Pharetra convallis posuere morbi leo urna molestie. Non pulvinar neque laoreet suspendisse interdum consectetur libero id. Mauris cursus mattis molestie a iaculis. Cras ornare arcu dui vivamus arcu felis bibendum ut. Et leo duis ut diam quam nulla. Justo laoreet sit amet cursus sit amet dictum sit amet. Viverra nam libero justo laoreet sit amet cursus. Massa eget egestas purus viverra accumsan in. Risus sed vulputate odio ut enim. Ultrices tincidunt arcu non sodales neque. Leo integer malesuada nunc vel risus commodo viverra. Proin sagittis nisl rhoncus mattis rhoncus urna neque viverra justo. Vitae tempus quam pellentesque nec nam aliquam sem. Volutpat sed cras ornare arcu. + +Augue lacus viverra vitae congue eu. In est ante in nibh mauris cursus mattis molestie. Imperdiet massa tincidunt nunc pulvinar. Mi sit amet mauris commodo quis imperdiet massa. Consectetur adipiscing elit ut aliquam purus. Odio tempor orci dapibus ultrices in iaculis nunc. Ipsum a arcu cursus vitae. Tincidunt ornare massa eget egestas purus viverra accumsan in. Volutpat odio facilisis mauris sit amet. Vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor posuere. Tempus imperdiet nulla malesuada pellentesque elit eget gravida cum sociis. Pellentesque habitant morbi tristique senectus et netus. Lorem ipsum dolor sit amet. Consectetur adipiscing elit duis tristique. Vestibulum lectus mauris ultrices eros in cursus turpis massa tincidunt. + +Velit egestas dui id ornare arcu odio. Congue eu consequat ac felis. Facilisis gravida neque convallis a. Fringilla phasellus faucibus scelerisque eleifend. Faucibus a pellentesque sit amet porttitor. Imperdiet proin fermentum leo vel orci porta non pulvinar. Amet dictum sit amet justo donec enim diam vulputate. Commodo viverra maecenas accumsan lacus vel facilisis volutpat est. Tempor nec feugiat nisl pretium fusce. Pellentesque elit ullamcorper dignissim cras tincidunt lobortis. + +Mi tempus imperdiet nulla malesuada pellentesque. Tempor commodo ullamcorper a lacus. Proin nibh nisl condimentum id venenatis. Diam ut venenatis tellus in metus vulputate eu scelerisque felis. Aliquet enim tortor at auctor. Ipsum dolor sit amet consectetur adipiscing elit duis. Lacus laoreet non curabitur gravida arcu ac tortor dignissim. Sed id semper risus in hendrerit gravida rutrum quisque. Parturient montes nascetur ridiculus mus mauris vitae ultricies leo integer. Vel orci porta non pulvinar neque laoreet suspendisse interdum. Lectus sit amet est placerat in egestas erat. Tellus mauris a diam maecenas sed enim ut sem. + +Pellentesque nec nam aliquam sem. Sollicitudin tempor id eu nisl nunc. At lectus urna duis convallis. Nibh nisl condimentum id venenatis. Platea dictumst vestibulum rhoncus est pellentesque elit. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi tincidunt. Auctor augue mauris augue neque gravida in fermentum et. Leo vel fringilla est ullamcorper eget nulla facilisi etiam. Aliquam etiam erat velit scelerisque in dictum non consectetur a. Tristique sollicitudin nibh sit amet commodo nulla facilisi nullam vehicula. Quis hendrerit dolor magna eget est lorem ipsum. Nunc mattis enim ut tellus elementum sagittis vitae. Aliquet porttitor lacus luctus accumsan. Eget sit amet tellus cras adipiscing enim. Nibh cras pulvinar mattis nunc sed blandit libero volutpat sed. Urna neque viverra justo nec ultrices dui sapien. Morbi blandit cursus risus at ultrices mi tempus. Rhoncus urna neque viverra justo nec ultrices dui sapien eget. Tempus urna et pharetra pharetra massa massa ultricies mi quis. + +Adipiscing tristique risus nec feugiat in fermentum posuere urna nec. Ullamcorper eget nulla facilisi etiam dignissim diam quis. Vestibulum lorem sed risus ultricies tristique nulla aliquet enim. Eleifend donec pretium vulputate sapien nec. Enim nunc faucibus a pellentesque sit amet porttitor eget dolor. Facilisis sed odio morbi quis commodo. Quam id leo in vitae. Nunc aliquet bibendum enim facilisis gravida. Odio tempor orci dapibus ultrices in iaculis nunc. Habitasse platea dictumst vestibulum rhoncus. Enim nulla aliquet porttitor lacus. Integer malesuada nunc vel risus. Et magnis dis parturient montes nascetur ridiculus mus. Condimentum vitae sapien pellentesque habitant morbi tristique senectus et. + +Et netus et malesuada fames ac turpis egestas. Vel turpis nunc eget lorem dolor sed viverra. Ut tellus elementum sagittis vitae. Arcu cursus vitae congue mauris rhoncus. Aenean sed adipiscing diam donec adipiscing. Ac ut consequat semper viverra nam libero justo laoreet. Ullamcorper a lacus vestibulum sed arcu non odio euismod. Purus non enim praesent elementum facilisis leo vel. Sagittis orci a scelerisque purus. Viverra justo nec ultrices dui. Lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. + +Mi tempus imperdiet nulla malesuada pellentesque. Et ligula ullamcorper malesuada proin libero nunc. Tempor nec feugiat nisl pretium fusce. Dui vivamus arcu felis bibendum ut tristique et egestas. Donec ultrices tincidunt arcu non sodales. Convallis tellus id interdum velit laoreet id donec. Nibh sit amet commodo nulla facilisi. Lacus sed viverra tellus in hac habitasse platea dictumst vestibulum. Sociis natoque penatibus et magnis dis. Auctor augue mauris augue neque gravida in fermentum. Ipsum dolor sit amet consectetur. + +Maecenas accumsan lacus vel facilisis volutpat. Nibh sed pulvinar proin gravida. Magnis dis parturient montes nascetur. Varius quam quisque id diam. Gravida rutrum quisque non tellus orci ac auctor augue. Morbi tristique senectus et netus et malesuada fames. Semper viverra nam libero justo. Hendrerit dolor magna eget est lorem ipsum dolor sit amet. Morbi non arcu risus quis varius quam quisque id. At consectetur lorem donec massa. Nullam eget felis eget nunc lobortis mattis. Massa eget egestas purus viverra accumsan in nisl. Sem et tortor consequat id. Commodo quis imperdiet massa tincidunt nunc pulvinar sapien et. Euismod elementum nisi quis eleifend quam adipiscing. Ac felis donec et odio pellentesque diam volutpat commodo sed. Purus in massa tempor nec feugiat nisl pretium fusce. + +Accumsan sit amet nulla facilisi. Pretium aenean pharetra magna ac. Scelerisque viverra mauris in aliquam sem. Vitae auctor eu augue ut lectus arcu. Non pulvinar neque laoreet suspendisse interdum consectetur libero id faucibus. Lorem ipsum dolor sit amet consectetur. Neque convallis a cras semper auctor. Ultricies tristique nulla aliquet enim tortor at auctor urna. Quam adipiscing vitae proin sagittis nisl rhoncus. Consectetur adipiscing elit ut aliquam purus. Erat pellentesque adipiscing commodo elit at imperdiet dui accumsan sit. Velit sed ullamcorper morbi tincidunt ornare massa eget egestas purus. Convallis tellus id interdum velit laoreet id donec ultrices. Varius duis at consectetur lorem donec massa sapien. Porttitor rhoncus dolor purus non enim praesent elementum facilisis leo. At quis risus sed vulputate odio ut enim blandit. Scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique. Lectus sit amet est placerat in. + +Et netus et malesuada fames ac turpis egestas sed. Nisi quis eleifend quam adipiscing vitae proin. Cursus metus aliquam eleifend mi in nulla posuere. Sit amet mauris commodo quis imperdiet. Lorem ipsum dolor sit amet. Auctor eu augue ut lectus arcu. Justo nec ultrices dui sapien eget mi proin sed libero. Metus aliquam eleifend mi in. Fusce id velit ut tortor pretium viverra suspendisse. Nisi est sit amet facilisis magna. Sed ullamcorper morbi tincidunt ornare massa eget egestas purus. + +Ut aliquam purus sit amet luctus venenatis lectus magna fringilla. Dictum non consectetur a erat nam at lectus urna duis. Viverra maecenas accumsan lacus vel facilisis volutpat est. In eu mi bibendum neque egestas congue. Aliquam faucibus purus in massa tempor nec feugiat nisl. Lorem mollis aliquam ut porttitor leo. Vel pharetra vel turpis nunc eget. Arcu dictum varius duis at consectetur lorem donec. Turpis in eu mi bibendum neque egestas congue. Sed pulvinar proin gravida hendrerit. Leo integer malesuada nunc vel risus commodo viverra maecenas accumsan. Adipiscing elit ut aliquam purus sit. Lectus nulla at volutpat diam ut venenatis tellus. + +Est placerat in egestas erat imperdiet sed. Pellentesque pulvinar pellentesque habitant morbi tristique. Amet purus gravida quis blandit turpis cursus in hac habitasse. Ultrices neque ornare aenean euismod elementum nisi quis. Purus non enim praesent elementum facilisis. Id neque aliquam vestibulum morbi blandit cursus risus at ultrices. Volutpat consequat mauris nunc congue nisi vitae. Dolor magna eget est lorem ipsum dolor sit amet. Ipsum dolor sit amet consectetur. In massa tempor nec feugiat nisl pretium. Lacus sed viverra tellus in. Nibh venenatis cras sed felis eget velit aliquet. Interdum velit euismod in pellentesque massa placerat duis ultricies lacus. Felis bibendum ut tristique et egestas quis ipsum suspendisse. Quis enim lobortis scelerisque fermentum dui faucibus. + +Nulla malesuada pellentesque elit eget gravida cum sociis natoque. Morbi tincidunt ornare massa eget egestas purus viverra accumsan. Donec ac odio tempor orci dapibus ultrices in iaculis. Auctor eu augue ut lectus arcu bibendum at. Aliquam purus sit amet luctus venenatis lectus magna fringilla urna. Enim neque volutpat ac tincidunt vitae semper. Vulputate dignissim suspendisse in est ante in nibh mauris. Dui id ornare arcu odio ut. Id diam maecenas ultricies mi eget mauris. Sapien et ligula ullamcorper malesuada. Consectetur adipiscing elit pellentesque habitant morbi tristique. Gravida neque convallis a cras semper auctor neque vitae tempus. At risus viverra adipiscing at in tellus. Malesuada nunc vel risus commodo viverra maecenas. Augue lacus viverra vitae congue eu. Turpis in eu mi bibendum neque. Nunc pulvinar sapien et ligula. Ullamcorper morbi tincidunt ornare massa eget egestas purus viverra accumsan. Id venenatis a condimentum vitae sapien pellentesque habitant. + +Tempus iaculis urna id volutpat. Cursus euismod quis viverra nibh cras pulvinar mattis. Nec ullamcorper sit amet risus nullam eget felis eget. Tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Sollicitudin tempor id eu nisl nunc mi ipsum. Ac turpis egestas integer eget aliquet nibh. Varius morbi enim nunc faucibus a pellentesque sit amet. Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi. Fermentum et sollicitudin ac orci phasellus. Odio tempor orci dapibus ultrices. + +Mollis nunc sed id semper risus in hendrerit. Aliquet nec ullamcorper sit amet risus nullam eget. Arcu felis bibendum ut tristique et egestas quis ipsum suspendisse. Duis ut diam quam nulla porttitor massa. Consectetur lorem donec massa sapien faucibus et molestie. Pellentesque elit ullamcorper dignissim cras. Semper auctor neque vitae tempus quam pellentesque nec nam aliquam. Morbi tempus iaculis urna id volutpat lacus. Elementum sagittis vitae et leo duis ut diam. Diam quis enim lobortis scelerisque fermentum. Amet luctus venenatis lectus magna fringilla. Egestas tellus rutrum tellus pellentesque eu tincidunt tortor. Vulputate dignissim suspendisse in est ante. + +Consectetur adipiscing elit duis tristique sollicitudin nibh sit amet. Odio aenean sed adipiscing diam donec adipiscing tristique. Quam id leo in vitae turpis massa sed elementum. Adipiscing elit duis tristique sollicitudin nibh sit amet commodo nulla. Non arcu risus quis varius quam quisque. Sit amet mauris commodo quis imperdiet. Consectetur adipiscing elit duis tristique sollicitudin nibh sit amet. Eget nullam non nisi est sit amet facilisis magna. Cursus in hac habitasse platea. Facilisi cras fermentum odio eu. Mus mauris vitae ultricies leo integer. Arcu cursus vitae congue mauris rhoncus aenean. Odio morbi quis commodo odio aenean. Facilisi morbi tempus iaculis urna. Nulla aliquet porttitor lacus luctus accumsan tortor posuere ac ut. Sed felis eget velit aliquet sagittis id consectetur purus. Lobortis scelerisque fermentum dui faucibus. Tincidunt eget nullam non nisi est sit amet. + +Ultricies tristique nulla aliquet enim tortor at auctor urna nunc. Risus viverra adipiscing at in tellus. Urna duis convallis convallis tellus id interdum velit laoreet id. Consequat ac felis donec et odio pellentesque diam volutpat. Turpis egestas integer eget aliquet. Quis hendrerit dolor magna eget est lorem. Accumsan lacus vel facilisis volutpat est velit egestas dui id. Id interdum velit laoreet id donec ultrices tincidunt arcu non. Bibendum est ultricies integer quis auctor elit. Etiam sit amet nisl purus in mollis nunc. Commodo odio aenean sed adipiscing diam. Faucibus et molestie ac feugiat sed lectus. Porta nibh venenatis cras sed felis. Odio euismod lacinia at quis. + +Orci ac auctor augue mauris augue neque. Diam phasellus vestibulum lorem sed risus ultricies tristique nulla aliquet. Dignissim suspendisse in est ante in nibh mauris. Mi bibendum neque egestas congue quisque egestas diam in arcu. Fermentum dui faucibus in ornare quam viverra. Id ornare arcu odio ut sem. Purus ut faucibus pulvinar elementum integer. Sed enim ut sem viverra aliquet eget sit. Enim sed faucibus turpis in eu. Et molestie ac feugiat sed lectus. Aenean et tortor at risus viverra adipiscing at in. Cras semper auctor neque vitae tempus quam pellentesque nec. + +Sit amet volutpat consequat mauris nunc congue nisi. A diam maecenas sed enim ut sem. Magna sit amet purus gravida quis. Ipsum a arcu cursus vitae congue. In hendrerit gravida rutrum quisque non tellus. Arcu non sodales neque sodales ut. Volutpat diam ut venenatis tellus in. Et ultrices neque ornare aenean euismod elementum nisi quis eleifend. Consequat ac felis donec et odio pellentesque. Tellus in hac habitasse platea dictumst vestibulum rhoncus est. Pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at. Porta lorem mollis aliquam ut porttitor. + +Adipiscing bibendum est ultricies integer. Magna etiam tempor orci eu. Viverra ipsum nunc aliquet bibendum enim. Elementum sagittis vitae et leo duis. Nec nam aliquam sem et tortor consequat. Ut enim blandit volutpat maecenas volutpat blandit. Suscipit adipiscing bibendum est ultricies integer. Amet consectetur adipiscing elit duis tristique sollicitudin nibh sit amet. Tristique senectus et netus et malesuada fames. Vitae aliquet nec ullamcorper sit amet risus nullam. Ac turpis egestas maecenas pharetra convallis posuere morbi. Curabitur vitae nunc sed velit dignissim. Cursus mattis molestie a iaculis at erat pellentesque. Sit amet purus gravida quis blandit turpis cursus in. Tellus in metus vulputate eu. Ultrices vitae auctor eu augue ut lectus arcu bibendum at. Vitae proin sagittis nisl rhoncus. Cursus metus aliquam eleifend mi in. Amet luctus venenatis lectus magna fringilla. Lacinia quis vel eros donec ac odio tempor. + +Laoreet id donec ultrices tincidunt arcu non sodales neque. Non curabitur gravida arcu ac tortor. Egestas egestas fringilla phasellus faucibus scelerisque. Feugiat in ante metus dictum. A erat nam at lectus urna duis convallis convallis tellus. Nisl purus in mollis nunc sed. Ut venenatis tellus in metus. Odio euismod lacinia at quis risus sed vulputate. Tortor vitae purus faucibus ornare suspendisse sed nisi. In iaculis nunc sed augue. Etiam non quam lacus suspendisse faucibus interdum posuere. Dolor sit amet consectetur adipiscing elit ut aliquam purus. Massa sed elementum tempus egestas sed sed risus. Nibh sit amet commodo nulla. Sodales neque sodales ut etiam sit amet nisl purus. Neque aliquam vestibulum morbi blandit cursus risus at ultrices. Scelerisque in dictum non consectetur a erat nam at lectus. Habitant morbi tristique senectus et netus et. Phasellus egestas tellus rutrum tellus pellentesque eu tincidunt tortor. Amet risus nullam eget felis eget nunc lobortis. + +Praesent semper feugiat nibh sed pulvinar proin gravida hendrerit. Dolor sit amet consectetur adipiscing. Mi quis hendrerit dolor magna eget. Vel quam elementum pulvinar etiam. Enim sit amet venenatis urna. Tincidunt vitae semper quis lectus nulla at volutpat. Nisl suscipit adipiscing bibendum est. Aliquet risus feugiat in ante metus dictum at tempor. Bibendum neque egestas congue quisque egestas diam in arcu cursus. Posuere ac ut consequat semper viverra nam libero justo laoreet. Risus nullam eget felis eget nunc lobortis mattis aliquam faucibus. Et malesuada fames ac turpis egestas sed tempus urna et. Est sit amet facilisis magna etiam tempor orci. Risus sed vulputate odio ut enim blandit volutpat maecenas volutpat. Id neque aliquam vestibulum morbi blandit. Facilisis mauris sit amet massa vitae tortor condimentum lacinia. Quam elementum pulvinar etiam non quam lacus suspendisse faucibus. Sit amet porttitor eget dolor morbi non arcu. Elementum tempus egestas sed sed risus. Ut aliquam purus sit amet luctus venenatis lectus magna fringilla. + +Donec massa sapien faucibus et molestie ac feugiat. Nec nam aliquam sem et tortor consequat id. Eleifend quam adipiscing vitae proin sagittis nisl. In nulla posuere sollicitudin aliquam ultrices sagittis. Ornare arcu dui vivamus arcu felis. Risus in hendrerit gravida rutrum quisque non tellus orci. Ultrices eros in cursus turpis massa. Elit eget gravida cum sociis. Aliquet lectus proin nibh nisl condimentum. Quis blandit turpis cursus in hac habitasse platea. Scelerisque eleifend donec pretium vulputate sapien nec. Amet volutpat consequat mauris nunc congue nisi vitae suscipit. + +Nunc aliquet bibendum enim facilisis. Viverra maecenas accumsan lacus vel facilisis volutpat est velit egestas. Risus in hendrerit gravida rutrum quisque non tellus orci. Ultrices in iaculis nunc sed augue. Amet mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan. Egestas integer eget aliquet nibh praesent. Cursus mattis molestie a iaculis at erat pellentesque. Lectus nulla at volutpat diam ut venenatis tellus in. Facilisis gravida neque convallis a cras semper auctor. Id aliquet risus feugiat in ante metus dictum. Vel fringilla est ullamcorper eget nulla facilisi. Lectus nulla at volutpat diam ut venenatis. + +A lacus vestibulum sed arcu. Sed vulputate odio ut enim blandit volutpat maecenas. Vel elit scelerisque mauris pellentesque. Suscipit adipiscing bibendum est ultricies integer quis auctor elit sed. Fermentum dui faucibus in ornare quam viverra. Adipiscing at in tellus integer feugiat. Semper quis lectus nulla at volutpat. Purus faucibus ornare suspendisse sed nisi lacus sed viverra tellus. Amet consectetur adipiscing elit duis. Interdum posuere lorem ipsum dolor sit. Venenatis tellus in metus vulputate eu scelerisque. Aliquam malesuada bibendum arcu vitae. Dui accumsan sit amet nulla facilisi. Malesuada nunc vel risus commodo viverra maecenas. Etiam sit amet nisl purus. Lorem sed risus ultricies tristique nulla aliquet. In hac habitasse platea dictumst quisque sagittis purus sit. Duis ultricies lacus sed turpis tincidunt. Sagittis purus sit amet volutpat consequat mauris nunc congue. + +Egestas diam in arcu cursus euismod. Nisi vitae suscipit tellus mauris a diam maecenas. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada. Pretium viverra suspendisse potenti nullam ac. Enim diam vulputate ut pharetra sit. A erat nam at lectus. Cum sociis natoque penatibus et magnis dis parturient montes nascetur. Vel facilisis volutpat est velit egestas dui id ornare. Dictumst vestibulum rhoncus est pellentesque. Tristique sollicitudin nibh sit amet commodo nulla facilisi nullam. Elit at imperdiet dui accumsan. Ultrices mi tempus imperdiet nulla malesuada pellentesque elit eget gravida. Egestas congue quisque egestas diam in arcu cursus euismod quis. Maecenas pharetra convallis posuere morbi leo urna molestie. Egestas dui id ornare arcu odio ut sem nulla pharetra. Posuere ac ut consequat semper. Neque viverra justo nec ultrices. Cras ornare arcu dui vivamus arcu felis bibendum ut tristique. Ultrices mi tempus imperdiet nulla malesuada. + +Dui id ornare arcu odio ut sem. Leo a diam sollicitudin tempor id eu nisl nunc. Adipiscing commodo elit at imperdiet dui accumsan sit amet. Ut sem nulla pharetra diam sit amet. In hac habitasse platea dictumst vestibulum rhoncus est. Non nisi est sit amet facilisis magna etiam tempor. Non tellus orci ac auctor augue mauris augue neque gravida. Vitae semper quis lectus nulla at volutpat diam. Dictum non consectetur a erat nam at lectus urna duis. Egestas quis ipsum suspendisse ultrices gravida dictum fusce ut placerat. Hendrerit gravida rutrum quisque non. Venenatis lectus magna fringilla urna porttitor rhoncus dolor purus non. + +Dignissim sodales ut eu sem integer vitae. Eget egestas purus viverra accumsan. Cras tincidunt lobortis feugiat vivamus at augue eget arcu. Suspendisse sed nisi lacus sed viverra tellus in hac. Mattis enim ut tellus elementum sagittis vitae et leo duis. Commodo nulla facilisi nullam vehicula ipsum. Pellentesque habitant morbi tristique senectus et netus et. Sed odio morbi quis commodo. Sed adipiscing diam donec adipiscing tristique risus. Nascetur ridiculus mus mauris vitae ultricies. + +Amet nisl suscipit adipiscing bibendum est. Semper viverra nam libero justo. Non pulvinar neque laoreet suspendisse interdum consectetur libero. Ullamcorper morbi tincidunt ornare massa eget egestas purus viverra. Diam phasellus vestibulum lorem sed risus ultricies tristique nulla aliquet. Nisl rhoncus mattis rhoncus urna neque. Risus sed vulputate odio ut enim blandit volutpat maecenas volutpat. Amet volutpat consequat mauris nunc congue nisi vitae suscipit tellus. Elit duis tristique sollicitudin nibh sit amet. Commodo sed egestas egestas fringilla. Nascetur ridiculus mus mauris vitae ultricies leo integer malesuada. Lorem donec massa sapien faucibus et. Laoreet non curabitur gravida arcu ac tortor dignissim convallis. Tincidunt tortor aliquam nulla facilisi cras fermentum. Pretium viverra suspendisse potenti nullam ac tortor. Sagittis vitae et leo duis ut diam quam nulla porttitor. + +Vitae tempus quam pellentesque nec nam aliquam sem et. Malesuada pellentesque elit eget gravida cum sociis natoque penatibus et. Nunc eget lorem dolor sed viverra ipsum nunc. Elementum integer enim neque volutpat ac tincidunt vitae. Viverra mauris in aliquam sem fringilla. Quam quisque id diam vel quam elementum. Vitae sapien pellentesque habitant morbi tristique senectus. Sapien et ligula ullamcorper malesuada proin libero nunc consequat. Sit amet luctus venenatis lectus magna fringilla. At in tellus integer feugiat scelerisque varius. Condimentum mattis pellentesque id nibh. + +In mollis nunc sed id semper. Ullamcorper morbi tincidunt ornare massa eget. Cursus sit amet dictum sit amet justo. Lacinia at quis risus sed vulputate odio ut enim. Senectus et netus et malesuada fames ac turpis egestas. Hendrerit gravida rutrum quisque non tellus orci ac auctor. Dui id ornare arcu odio ut sem nulla pharetra diam. Amet porttitor eget dolor morbi non arcu. Accumsan lacus vel facilisis volutpat est velit. Quis viverra nibh cras pulvinar mattis. Felis eget nunc lobortis mattis aliquam faucibus purus. + +Vitae ultricies leo integer malesuada nunc vel risus commodo viverra. Praesent semper feugiat nibh sed pulvinar proin gravida hendrerit. Aenean sed adipiscing diam donec adipiscing tristique risus. Eros in cursus turpis massa tincidunt. Pharetra convallis posuere morbi leo urna. Massa massa ultricies mi quis hendrerit dolor magna eget est. Pretium lectus quam id leo in vitae turpis massa sed. Lacus vestibulum sed arcu non odio euismod lacinia at. Quis commodo odio aenean sed adipiscing diam donec adipiscing. Pharetra convallis posuere morbi leo urna molestie at elementum eu. Sapien et ligula ullamcorper malesuada proin libero. Nisl vel pretium lectus quam. Facilisi etiam dignissim diam quis enim lobortis scelerisque fermentum dui. + +Nunc faucibus a pellentesque sit amet. Commodo sed egestas egestas fringilla phasellus faucibus scelerisque. Auctor neque vitae tempus quam. Risus ultricies tristique nulla aliquet. Sed nisi lacus sed viverra tellus. Nullam non nisi est sit. Mi in nulla posuere sollicitudin aliquam ultrices sagittis. Ut etiam sit amet nisl purus in. Id consectetur purus ut faucibus pulvinar elementum. Tellus integer feugiat scelerisque varius morbi enim nunc faucibus. Sit amet consectetur adipiscing elit. Pretium quam vulputate dignissim suspendisse in est. + +Cursus metus aliquam eleifend mi in nulla posuere sollicitudin aliquam. Ipsum dolor sit amet consectetur adipiscing elit pellentesque. Rhoncus urna neque viverra justo nec. Dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim. Mi proin sed libero enim sed faucibus turpis in eu. Accumsan sit amet nulla facilisi morbi. Quis commodo odio aenean sed adipiscing diam donec adipiscing. Sit amet mattis vulputate enim. Urna molestie at elementum eu facilisis. Sit amet consectetur adipiscing elit pellentesque. Tristique sollicitudin nibh sit amet commodo nulla. Senectus et netus et malesuada fames. Fringilla phasellus faucibus scelerisque eleifend donec pretium vulputate. Sapien eget mi proin sed. Lacus luctus accumsan tortor posuere ac ut consequat. + +Velit laoreet id donec ultrices. Quis blandit turpis cursus in. Turpis cursus in hac habitasse platea dictumst quisque sagittis. Sociis natoque penatibus et magnis dis parturient montes. Erat nam at lectus urna duis convallis convallis tellus. Turpis massa tincidunt dui ut ornare lectus sit amet est. Fames ac turpis egestas maecenas pharetra convallis. Sollicitudin ac orci phasellus egestas tellus. Id semper risus in hendrerit. Nisi porta lorem mollis aliquam ut porttitor leo a. Amet consectetur adipiscing elit pellentesque habitant. In arcu cursus euismod quis viverra nibh cras. Nibh sit amet commodo nulla facilisi. Eu sem integer vitae justo eget magna fermentum. + +Laoreet suspendisse interdum consectetur libero. Mauris sit amet massa vitae. Eget nulla facilisi etiam dignissim diam quis enim. Libero justo laoreet sit amet cursus sit amet dictum. Dui faucibus in ornare quam viverra orci. Sapien faucibus et molestie ac feugiat sed lectus vestibulum. Amet facilisis magna etiam tempor orci eu lobortis. Tincidunt dui ut ornare lectus. Rhoncus dolor purus non enim praesent elementum facilisis leo. Justo laoreet sit amet cursus sit amet dictum. Eget felis eget nunc lobortis mattis. Cursus sit amet dictum sit. Lacus sed turpis tincidunt id aliquet risus feugiat. Molestie a iaculis at erat pellentesque adipiscing commodo elit. Ultrices vitae auctor eu augue ut lectus arcu. Aenean sed adipiscing diam donec adipiscing tristique risus nec feugiat. Viverra nam libero justo laoreet sit amet cursus sit amet. + +In nulla posuere sollicitudin aliquam. Laoreet id donec ultrices tincidunt arcu non sodales neque. Pharetra convallis posuere morbi leo urna molestie. Libero volutpat sed cras ornare. Neque aliquam vestibulum morbi blandit cursus risus at. Pharetra diam sit amet nisl suscipit adipiscing bibendum est. Convallis convallis tellus id interdum velit laoreet. Enim facilisis gravida neque convallis a cras semper auctor. Egestas quis ipsum suspendisse ultrices gravida dictum fusce ut placerat. Tortor vitae purus faucibus ornare suspendisse sed nisi lacus. Vivamus arcu felis bibendum ut tristique et egestas quis ipsum. Blandit massa enim nec dui nunc mattis enim ut. Faucibus et molestie ac feugiat sed. Et pharetra pharetra massa massa ultricies. Vel pharetra vel turpis nunc eget lorem. Mauris in aliquam sem fringilla ut morbi tincidunt augue interdum. Praesent elementum facilisis leo vel. Ac turpis egestas sed tempus urna et pharetra pharetra. + +Blandit turpis cursus in hac habitasse platea dictumst quisque. Est ultricies integer quis auctor elit sed vulputate. Sem integer vitae justo eget magna fermentum iaculis. Nunc id cursus metus aliquam eleifend mi. Consectetur adipiscing elit duis tristique sollicitudin nibh sit amet. Aliquam nulla facilisi cras fermentum odio. Commodo elit at imperdiet dui accumsan sit amet nulla facilisi. Est velit egestas dui id ornare. Adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus. Sit amet nulla facilisi morbi tempus iaculis urna id volutpat. Diam maecenas ultricies mi eget mauris pharetra. Cursus in hac habitasse platea dictumst quisque. Fermentum leo vel orci porta. Massa id neque aliquam vestibulum morbi. + +Eget velit aliquet sagittis id consectetur. Aenean sed adipiscing diam donec adipiscing tristique. Purus in mollis nunc sed id semper. Dis parturient montes nascetur ridiculus mus mauris vitae ultricies leo. Proin libero nunc consequat interdum varius sit amet mattis vulputate. Facilisi morbi tempus iaculis urna id volutpat lacus laoreet. Tincidunt nunc pulvinar sapien et. Ullamcorper velit sed ullamcorper morbi. Tempus egestas sed sed risus pretium quam vulputate. Eget gravida cum sociis natoque penatibus et. Pellentesque diam volutpat commodo sed. Sed id semper risus in hendrerit gravida rutrum. Ipsum consequat nisl vel pretium lectus quam id leo. Amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien. Et netus et malesuada fames ac turpis. Neque gravida in fermentum et sollicitudin ac. Quis viverra nibh cras pulvinar mattis nunc sed blandit. Vel fringilla est ullamcorper eget nulla facilisi etiam dignissim diam. + +Vitae semper quis lectus nulla at volutpat diam. Nisl nisi scelerisque eu ultrices vitae auctor eu augue ut. Amet luctus venenatis lectus magna fringilla urna porttitor rhoncus dolor. Enim blandit volutpat maecenas volutpat. Et magnis dis parturient montes nascetur ridiculus mus. Id eu nisl nunc mi. Massa sapien faucibus et molestie ac feugiat sed. At lectus urna duis convallis convallis tellus id interdum velit. Fringilla urna porttitor rhoncus dolor. Neque convallis a cras semper auctor neque. Volutpat commodo sed egestas egestas fringilla. Euismod nisi porta lorem mollis aliquam ut porttitor leo. Arcu cursus vitae congue mauris rhoncus aenean. Ultricies leo integer malesuada nunc vel. + +Posuere urna nec tincidunt praesent semper feugiat nibh sed. Eu tincidunt tortor aliquam nulla facilisi cras fermentum odio eu. Sagittis purus sit amet volutpat consequat mauris nunc congue. Id ornare arcu odio ut sem nulla pharetra. Sed faucibus turpis in eu mi. Gravida cum sociis natoque penatibus et magnis. Lorem mollis aliquam ut porttitor leo a diam sollicitudin tempor. Consequat interdum varius sit amet mattis vulputate. Sagittis id consectetur purus ut faucibus pulvinar. Amet mattis vulputate enim nulla aliquet porttitor lacus. Cras sed felis eget velit. Nec dui nunc mattis enim ut tellus elementum. Posuere sollicitudin aliquam ultrices sagittis orci a scelerisque purus semper. Lacus viverra vitae congue eu consequat. Ultrices sagittis orci a scelerisque purus semper. Fermentum dui faucibus in ornare. Cursus mattis molestie a iaculis at erat pellentesque adipiscing. Vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor posuere. Orci eu lobortis elementum nibh tellus molestie nunc. Amet massa vitae tortor condimentum lacinia quis vel. + +Viverra ipsum nunc aliquet bibendum enim. Posuere morbi leo urna molestie. Imperdiet nulla malesuada pellentesque elit eget gravida cum sociis. Ut lectus arcu bibendum at. Mus mauris vitae ultricies leo integer malesuada nunc vel risus. Congue quisque egestas diam in arcu cursus euismod quis viverra. Sed turpis tincidunt id aliquet risus feugiat in ante. Id nibh tortor id aliquet lectus proin nibh nisl condimentum. In cursus turpis massa tincidunt. Fames ac turpis egestas sed. Montes nascetur ridiculus mus mauris. Elementum nisi quis eleifend quam adipiscing vitae proin sagittis. Id neque aliquam vestibulum morbi. Venenatis a condimentum vitae sapien pellentesque habitant morbi tristique. Lorem sed risus ultricies tristique nulla aliquet. Erat imperdiet sed euismod nisi porta lorem. Ut faucibus pulvinar elementum integer enim. + +Sed vulputate odio ut enim blandit. Velit scelerisque in dictum non consectetur. Sit amet risus nullam eget felis eget. Nunc eget lorem dolor sed viverra. Libero justo laoreet sit amet cursus sit amet. Convallis posuere morbi leo urna. In dictum non consectetur a erat nam at lectus. Lacus viverra vitae congue eu consequat ac felis donec. Id porta nibh venenatis cras sed. Blandit volutpat maecenas volutpat blandit aliquam etiam erat velit scelerisque. At lectus urna duis convallis convallis tellus id. Tristique senectus et netus et malesuada fames ac turpis egestas. Tempus urna et pharetra pharetra massa massa ultricies mi. Laoreet sit amet cursus sit amet. Elit duis tristique sollicitudin nibh sit. + +Et malesuada fames ac turpis egestas sed tempus urna et. Purus in mollis nunc sed id. Est lorem ipsum dolor sit amet consectetur adipiscing. Vitae suscipit tellus mauris a diam maecenas sed enim ut. Libero id faucibus nisl tincidunt eget nullam. A iaculis at erat pellentesque adipiscing commodo elit. Nulla facilisi etiam dignissim diam quis. Sollicitudin nibh sit amet commodo nulla. Cursus euismod quis viverra nibh cras pulvinar mattis nunc sed. Metus dictum at tempor commodo ullamcorper a. Ante in nibh mauris cursus mattis molestie. Gravida neque convallis a cras semper auctor neque vitae. Malesuada proin libero nunc consequat interdum varius sit. Eget magna fermentum iaculis eu non. Vestibulum mattis ullamcorper velit sed ullamcorper morbi. + +Nisi est sit amet facilisis magna. Eget est lorem ipsum dolor sit amet consectetur adipiscing elit. Tristique senectus et netus et malesuada fames. Eu ultrices vitae auctor eu augue ut lectus. Tellus mauris a diam maecenas sed. Morbi non arcu risus quis. Habitant morbi tristique senectus et netus. Odio morbi quis commodo odio aenean sed. Purus viverra accumsan in nisl nisi scelerisque eu ultrices. Turpis in eu mi bibendum neque egestas. Nec feugiat in fermentum posuere urna nec tincidunt praesent semper. + +Vehicula ipsum a arcu cursus vitae congue. Cursus vitae congue mauris rhoncus aenean vel elit. Eu mi bibendum neque egestas. Dignissim suspendisse in est ante in nibh mauris. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Lorem dolor sed viverra ipsum nunc aliquet bibendum. Turpis massa sed elementum tempus egestas sed sed risus pretium. Sed pulvinar proin gravida hendrerit lectus. Nullam ac tortor vitae purus. Sit amet nisl purus in mollis nunc sed. Ut sem nulla pharetra diam sit amet nisl suscipit. + +Habitant morbi tristique senectus et. Sit amet risus nullam eget felis eget. Viverra suspendisse potenti nullam ac tortor. Sit amet mattis vulputate enim nulla aliquet porttitor lacus. Mi quis hendrerit dolor magna eget est lorem ipsum. Feugiat pretium nibh ipsum consequat nisl vel pretium lectus quam. Fames ac turpis egestas maecenas pharetra. Velit ut tortor pretium viverra suspendisse potenti nullam ac tortor. Iaculis eu non diam phasellus. Nunc vel risus commodo viverra maecenas accumsan lacus vel facilisis. Gravida in fermentum et sollicitudin. Purus sit amet volutpat consequat mauris nunc. Libero enim sed faucibus turpis in eu mi bibendum. Vestibulum rhoncus est pellentesque elit. Nisi lacus sed viverra tellus in. Nibh tellus molestie nunc non blandit massa enim nec dui. Ultricies mi quis hendrerit dolor magna eget. Ultricies lacus sed turpis tincidunt id aliquet risus. Ut tortor pretium viverra suspendisse potenti nullam ac. Eleifend quam adipiscing vitae proin. + +Adipiscing diam donec adipiscing tristique risus nec feugiat. Adipiscing tristique risus nec feugiat in fermentum posuere urna nec. Purus faucibus ornare suspendisse sed nisi lacus. Imperdiet proin fermentum leo vel. Maecenas ultricies mi eget mauris pharetra et ultrices. Dui sapien eget mi proin sed libero. Suspendisse interdum consectetur libero id faucibus nisl tincidunt. Pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat. Egestas pretium aenean pharetra magna ac placerat. Arcu bibendum at varius vel pharetra vel turpis. A arcu cursus vitae congue mauris rhoncus. Semper quis lectus nulla at volutpat. Fames ac turpis egestas maecenas pharetra convallis. Non pulvinar neque laoreet suspendisse interdum. Non nisi est sit amet facilisis magna etiam tempor. Mauris augue neque gravida in fermentum et. Donec enim diam vulputate ut pharetra sit amet aliquam. Neque viverra justo nec ultrices dui. Neque egestas congue quisque egestas diam in arcu. Aliquam etiam erat velit scelerisque in. + +Metus vulputate eu scelerisque felis imperdiet proin fermentum. Tellus mauris a diam maecenas sed enim ut sem. Nunc consequat interdum varius sit. Aliquam id diam maecenas ultricies mi eget mauris pharetra et. Turpis massa tincidunt dui ut ornare. Varius vel pharetra vel turpis nunc eget lorem dolor sed. Orci a scelerisque purus semper eget duis at tellus. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. Tristique senectus et netus et malesuada fames. At tempor commodo ullamcorper a lacus vestibulum sed arcu non. Id ornare arcu odio ut sem nulla. Venenatis a condimentum vitae sapien pellentesque. Accumsan in nisl nisi scelerisque. + +Donec adipiscing tristique risus nec feugiat. Lorem donec massa sapien faucibus et molestie ac feugiat sed. Vestibulum rhoncus est pellentesque elit ullamcorper. Tristique nulla aliquet enim tortor at auctor. Varius morbi enim nunc faucibus a pellentesque sit. Pretium aenean pharetra magna ac placerat vestibulum. Cursus turpis massa tincidunt dui. Blandit aliquam etiam erat velit. Adipiscing vitae proin sagittis nisl rhoncus mattis rhoncus urna neque. Ut sem nulla pharetra diam. Nibh mauris cursus mattis molestie a iaculis at erat pellentesque. Amet est placerat in egestas erat imperdiet sed euismod. Rhoncus est pellentesque elit ullamcorper. Nisl tincidunt eget nullam non nisi est sit. Scelerisque viverra mauris in aliquam sem fringilla. Volutpat odio facilisis mauris sit amet. + +Nec ultrices dui sapien eget mi proin sed libero enim. Laoreet id donec ultrices tincidunt arcu non sodales. Egestas sed tempus urna et pharetra pharetra massa massa. Aliquam id diam maecenas ultricies mi eget mauris pharetra et. Lectus mauris ultrices eros in cursus turpis. In eu mi bibendum neque egestas. Ultrices mi tempus imperdiet nulla malesuada. In vitae turpis massa sed elementum tempus egestas sed sed. Viverra suspendisse potenti nullam ac tortor vitae. Mi in nulla posuere sollicitudin aliquam ultrices sagittis. Condimentum id venenatis a condimentum. Vitae ultricies leo integer malesuada nunc vel risus. Diam sit amet nisl suscipit adipiscing bibendum est ultricies. Donec ac odio tempor orci dapibus ultrices in. Et sollicitudin ac orci phasellus egestas tellus. diff --git a/test2 b/test2 new file mode 100644 index 0000000..c645c24 --- /dev/null +++ b/test2 @@ -0,0 +1 @@ +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Quam quisque id diam vel quam elementum pulvinar etiam. Massa vitae tortor condimentum lacinia quis vel eros. Nulla facilisi cras fermentum odio eu. Ut tortor pretium viverra suspendisse. Natoque penatibus et magnis dis parturient montes nascetur ridiculus. Ornare suspendisse sed nisi lacus sed viverra tellus. Orci phasellus egestas tellus rutrum. Nisl rhoncus mattis rhoncus urna neque viverra justo. Aliquet bibendum enim facilisis gravida. Eget lorem dolor sed viverra ipsum nunc aliquet bibendum enim. Phasellus faucibus scelerisque eleifend donec. Venenatis a condimentum vitae sapien. In eu mi bibendum neque egestas. diff --git a/utils/ft_atoi_check.o b/utils/ft_atoi_check.o new file mode 100644 index 0000000000000000000000000000000000000000..1959d2ef77230869a5855363d3671a8c181adb6a GIT binary patch literal 3344 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 K6h|eI^Zx_)XI~!x literal 0 HcmV?d00001 diff --git a/utils/ft_quote_remover.o b/utils/ft_quote_remover.o new file mode 100644 index 0000000000000000000000000000000000000000..71e68d8da2db1d055f50947b0cf385a1a0d66992 GIT binary patch literal 3304 zcmbtWTZkJ~7(O$TGfDT7$zJT85^q$I%(UxT+FI&L**2Y45n*L3m6*#U8B8W^W@g!4 zT3bz9EQ{Ep4D*8e|q&TjT3rHDT}^Plhg zZ)eWs&z_q+eppo$B19nv$r=(YA??K4c!CWlND4fsvX}qJw*E|KFP~k`-kWT%fPh}) zdI?>#3zN&)g_o9$o3TV|nHU#->mnaBE0sq= z!lbRX3W=BQ53n#KZYhiy#;?b(ZQV`3aYq?ao=lEVEt%T1EjgqN>x8H#ki+`KW-YnD z|M~u%TaJ#ru!Rtf5|vX&M+k|HuY=Se$m&lJEqSoNzn_r!Mqr{8Fomz-iNQlif^8j6 zt6R2%O%*f(Ag5&90i;KSgh#6Lt0 zqMD3}C*q$+1c}w+*ZEMp&5SfbrV61Kgy~`}?^V(>PSbZAUV8VKxy#&@c{XIm-EWTp z8aJOKVc^z$s~qG`hmF9=HJy3`Ld+tuys~dq8+FIGoTf9EDL8=@H1jk0aMn5$HvP~a zAG7MN=lWHrRwHr-Qmp2i#1ERpCA9`jB=mf@;yIjlJj=bap=Am0okGqSmyFAPEl z4Op@N^g+>bjPg}c=3gbsY)aWS5Kmlz&Djn-J}9_Z`~Ek6ti$%JE^Stqs|+-LQHrHAA6^z8`43 zMPn_xp+yIEn{Kda%BJc8n$W9s0EmQ54V!K{K)06Z4x4VZ>7zD{AD~IFC-i9us?dJ$ zqc#jr&>oP^qQ3a9Z#n;!?sx-1hsg2Az}9R2Sw8>kJOJm9_guH`RPd{7D`!xsmx^hoXn?m54jldDk%4c^toNC>(_wO qj;}O8orh;tp5l(89>${x93eu!fq}esXq)Cg61Nb5U>qJPx&FT_iNxjr literal 0 HcmV?d00001 diff --git a/utils/ft_split_quoted.o b/utils/ft_split_quoted.o new file mode 100644 index 0000000000000000000000000000000000000000..3abfdac55a170c5d3dcd0ba7ea1d65978dda5e51 GIT binary patch literal 5216 zcmbtXYit|G5#Hlz`4&k_j{J!0D30x>NOhDIyRc)zQR7~HzSx0VK(1iarT93CMEP(@ zo+=wq8iaByS^+8pF%lGQkUs_Tt3gqqMIVrr2O=5>3jHWh|FZSNL8T(7m0wZXqUy}v zE^}T{HG-~iw>#g?d^0;cw_N>5Kl4qGq7cy(a)Nv=36zkr*yrP6HXJ4~&>S(E9~q60 z2Zv|YjONt(jQ**ysIQ;`^vkTD)z^*Lv&+%>E`MX4M5n#Lzbel}=g)q6tQDR95?anq zfrY)yXqxXFT4;PmX7sz!=||Y)gLF3*VCtHF_bnxQmBRe$Hb-gMXe=m3Q(s=av9YmX z$U%f1trf1dvQu)e?{Wk83vDno@ zN-zf529gnAJ$rxUX#{b<9`x)NwoTjyc%1MxDgJXaEhq;l346t8jx56#LF`M+(W34+ zT+|ns%$7GDLf*#Ivh44Bu3}j-j_WJY#z_|h@t$pAWkJk$UG)RF-C{{-*U!!NcD0Rg zd00O;ujx1C?P~GLXo>oP1?da0tyegJ#YGM*Y) zVCylO?*h68>s~UN+gt5%BhiA~^WOxn-A8B99BrC}x= zM2Yy$;~Sbs^JC}p2hxB9kcI(XB~XKL5CJlhw##+9KT}MV$NML&YOPQy_a7S42DQO~ zr)@TQ=*1zB4r@n+(R_s>kcq z)I`djjGwftHM@3rC|)X*3$?seED|KJ#*0>&Gmv5hoZIDEVZ3Z*`wQhdsTHnR$vV?? zxgwc-s>;n-2z9GUYV|6~5MUz(QX}gZYxKu*6WAdOWSH4Y@ z$(ZtJ*yo>vl%% z-!c0+4}J<3Oel)-uShp`s0NS1Hh{$KS~XrQq~pcnL}}pA5F4`{j5|9QFO)MyI}03} z_X=og^=#J4X?X&kpfK1QM`~1|-k^U!?P}0KgLZpO8Zc?hq@Dy-y?Gk)j?$<}LneL1 zq&+6xq0z78sAkgLCLOv*kL2hvlO8c?!c_BfR8@B-DD~c=>hG!V0vMarXVM6~6W(#E z{_%^@Wsz=Ao6e(N8KprrFiJhZO1$dcd(@ACdm%y<*mvEcewgvj(U|vnx*dkQOzH;! z%m5H-o?9?<7UXTv-7tI%bWD0+4&O)=yv1B7U_{hWe}aaC{-02Pqd|iW+5>bua!87* zKo)>uFQf}?opg0G_8lhO4k2jtDVDB1CjHtydMrneo0zfZO!Zs1zIXx%Sh_+NU<8)n z6*mDA{!oS&kYT9Ju=fIe94wz?{=m2TGA1AP%m9{7v#`eL=tl~kwnWD_`vogV>tLM1*K zVzS!dhXT)G*VVOc_tF;lO~89x@vv_iu(vsWj<245%YZ!rPbdDRE%1wgW5bo<`TK9U zoMQV2g3x5V!Tli~fJf-R?!xisQQ*Je`IUKM{AW$ZOD-JmV1no8E*!HhaPeCf1Pr-E z6F&go}7Y-HCOHc;1)vvHq}$Uc@85 zzdOz}5j?-)^2ZV`?Efj@!mo2dgZl%_<9>)_u`(!f;*D zN~vP8l9Bb`?x#W2cfe9Hy-5cEg zvNS1)@vVT06)H53u=w5=S-Nv}R_%67(Db`QGLJE;_ R9L2>#JIVvb4woeR|1U(dSu_9u literal 0 HcmV?d00001 diff --git a/utils/ft_str_is_empty.o b/utils/ft_str_is_empty.o new file mode 100644 index 0000000000000000000000000000000000000000..7c95884fdc4dd4b5e93964d0978c4fd5fa445932 GIT binary patch literal 2536 zcmb_d&2Jl35TD)kI!@f!ae_)q5%|yo67p^mQi(5xpvu&>3ayaBp%QY}_OrcWy$<^k zIh9(FLV+kq5W$HPLP7#mu1H)^Bo6!!+YG1BgD<~Q@^&6}NP ze^9;thOTMAqQN?xTFe4Gmp#=t5_JQL7`a*7dsy4MdtCdydPH<>zj|ETfAgsLYbLjQ zTrS=(jme|h?x9xOs~-LN$7nQ~jDq471CI9UCYfG=42QW;~C3S5HAhR}Mnis(+tmpH2fNT*cVCI*ODo>Sx1k>l$5t01qaSP~Rw*G((#=fPLzsD=bRx1^ zZkG^6w-RP12b;~TC*-g9JyX-ccMlZ z1r0ZBi2hczW3|BcJE7eh^hIckK>WgeI*XUI9yw``>yYXJ>hwvBmmcs z05d|X=LFz_H^5S2KXkjkXqOYGdq*@P_;1A~2YoDgW7F=u4cc%)yKrVE_XYO+N#yAv zq1M9dg@upxEAv^sju8MqAe8}uZ%xzwF3c0qr@}`|x&U?@2DaxmZO_~8S5{UNJ!zvo zZlCS?EiZ0k4&}VqFiaCh?Y8Jxz40fWJ^9c^Q8P1h_s!W|b3R))XY1xd-PB*juh}*A zU(C5%W&!EBx>-W{fv#g^Sl6TEQ*>nDuhBHWaXMWSZUc-7n+*d}myt6348ZaSk+815wOI)xr}Z9KbPpO% zyNy2~-HC9|^@Suvuh9vdzEI1+D`DX-k<&!n=@b4x@-?PO&lzVO%Axs@35nFNv^~ENzB8x$XfI5_x~dOUO@Ke_0MIkb-J?trm8hdZN zeoGDSN#e!ST2lG^Oz)sFt$#H+Kintk-)w3<^L^yhnvjBTPw z@58h6oJdpE#MDP$qQ%)j&9@7pJw{%h^}5&z)GBdJSjN7^oaAO#!49j=1bN zEKS7&0Q9Fp%bm?;vjFKla)8XUk%Dh}3?ykn( zPV7+v#y-J!O5MF2c@v+LV(auq(HwR)wm|(EeFcO6G%5nR!oH>eO3H{xIs?n~ z&<(CAQfMo%H9ha{@>>$&ld z)N^CH`YvVwjA2d+e#EGvD1YY0NYSUoM~Nx|X6SpS?KYgSX_>v#i`B)2f@8a3uh4Qs zvu+3ezohufJ7DX3*a__^;OF^+SF0P)ByaT*|b&= zN9{N=Xg4jdu+*{N*vKXu(<^MG!p191eU+v4Hp?PNSJ*^_<^;D>TkWGxG;E(>W6z#Ckj|aXi5AET_gpw!6{=!|eu^asJKa zf*;fx?}0(5ty*g~@#bqCNyh_habUHpD_*T*C1%EhXW&{vt&V!VL;C*;-PXze6!Z0X z1K$*YYxx}JkrNaBF4BwK5d9?hxG=b;vGSZ0`j*G#@p3NpugqxZDGtRve7Z++7ch`K zha&Gg4sY;zay$>O=18Wwrt?NAv)mWzS3Ztz@T71&*vI1-95#N7H>Z&t%yS8ec}fYJ zxRBe)<`xjO7$*?@l_Oh~)9-L_S|oBUe!sv08pG;W<_#h0MD-iNM~oM|jZEGXBG~8a zPe?(@#Xsxe>t7zSKHc8(`gEUZ7y8s@AL26*(fHZZy=LvM|l}ulw0JW&^X$X Gy#8OB-Z@7A literal 0 HcmV?d00001 diff --git a/utils/ft_strncpy.o b/utils/ft_strncpy.o new file mode 100644 index 0000000000000000000000000000000000000000..47206c391e8711ddef1cfb91706a0fe5c53aeb10 GIT binary patch literal 2568 zcmbtU&5zqu5FgudlHF{R>~2+Bick(fRiW6s%OU}V5>$nHL+Jq&ZdK|e&f3Cp7Jsag z6(2<_K|>MR3M3Fhq973Ez!{E6960b#R?M-mdqN3L!?aXMVpo^X9$r zjNhwYcv+St;3C0UI6#~QFtP`BEjDXVLeHi#{?i!0bI%w@w~cZ0mhpRiLd(Xr`ouU> zzg5~jm7v?kwO1z}9nIsyJu>_YubvoQhh3l z7gyh1L$t0v4N>U0f!+&SLFjv(t&!FN-RlLqJ?LA3Zu!=z+O|SH^v!KE8tUgFKZt_$ zHNEe6PGDQE3kR{_4lrZn1A@Dokf%6{^Nw-2dnkbNV zUIS@ZmQF6@@_YCl9zmWS5-K;mR4jiWpF5J3FQNy)k4R(p0cE7s17Ta+F^`vmR<8|DqYeDL|SSs8h2)kXYr`gFDpWFZLN=Z^P^LN#` zUA2&HsB%MH$l7Wd&4q@lJg?>&>U=}ZWM5F_pVj$Gs+?`eGM)_2^&r{Bg$&%8&RSOv zI_}W20?HxGfs!;1hx=Lq?0P}yOiQW#;~FE!$9x{`bQV4p#3$2&2Fg;Rfb&&`kEM8( z*`yv$@w88k;YXRKbM4m~?I$0=Kg)QYcfjy@fsdyLxu(E>#c)U9Z!r9pz<SwDT96)gUxGZ-Pdn(K5ST{GV(da(5liVuWS4dcN7WQYXME(J(=1 zwo#Azr2nt%;Rfk`8tH1)T*CoS>*;r+$j z|KUshI4fReZe}zT*VbJU`bJ zE+>vR1e@=&J%&Omz^$)KT)o%_T z9?y9jIq^(L!7nWTPXtmT`qF=7R{p&i`RQ*g=BNLYa$!nsb_Jh(;r-7EIzNe+{|n^A T+L52lhUz8(6pEu65%d2I%d7z- literal 0 HcmV?d00001 diff --git a/utils/ft_strreplace.o b/utils/ft_strreplace.o new file mode 100644 index 0000000000000000000000000000000000000000..c52c56d3206a76edc54d7c5a366841c33490d671 GIT binary patch literal 3448 zcmb_eU1%It6h5<)JJ}@7W}B2YO{?8vt7yz@lSZ($jghiC*`^|5q&`U8pGmSfI~(RF zriIirrP5_VQt_dJXeg*b5sMa;3RLnOs(7{s#Z?jMCY#WRHklf(t=h=Eoq&pW$obw?ZSd2c#GPFsYPhH*i2~)sWnRf z?G8DWsYR{gu4t8^WnL$>sL5EMoVtX?u-DXVuoDE`S*?6akcoI@lTiL1ldfpeZG>;5 zNwvtHLwg17CA8;}&Sy}W!hk!E^|a2RB~fz`Nnc|EC0+}VPhBHo1!L0BTIZ>ypX#DG z0qmokT0_02o&Rwf=k)Rq(st=!tc}UB_^v&%?NX}(5NW}PtYV~9>2H@~N1L8#dT94R z+mpKi>KH^gG|&dXdaGQe1qiJ_0CKFasi_Gd`k;q2>_p{P!rI?rtHXw2Z=<()cKFkW zv4|{C@}w8ZlUm-vZ(Zc_xbJ=7dt+7JE1nns%#WSk^jPHbbDq~qRnXHsuZ@_XyoaB9 z&ytjnQAY`AxIqX?MD=3zQ5ed)rsF1ZM#daXOz4(fD4B`w9`%rVsOzxn1-sAnpx3KD z2Ch>u?Bs|uY&({vj~khsuI30L#Hh0b{n4u^cc;I2PBm3!|op9g6&F74S?ADzYB*ozo7651VjDi(hua-vz0k4Q*?`w**x90nvw`YYB< zifGs*Z%H8O+E&siWRr$5QS9pO@oaBRlm1#J3uex6^Ey;dA6E~H*iJsLkEml1!J^RM zeaVvJ66c$&p-Fy$DMPI{#F8MZgg)ERal%?__(IuaEm z?wn!U(yVcn?K#FCKm+L!tSKocBeWVc*ng3aFjfbDtk_h`&JWw3%RX<@pxweu{mtD>Ld^+p%(yO8~A(Omo5TP!nk)qIZi(Tg6|R; zh4^$Y1y1833D>#m!&~@Y1n}T^ez^z!X8;fO+rl?A+%MH6X~eeioS`jNo^Z+$(#j2i zi*?xc>|0aaL&HV(|v^K%@@qShi3$I&)QqP|u zGdF$))V!W`M~5@ntffzYYUxHsb@WLG)Lf}p)baV{40@*hu%A&dM@qbqp_`zZB}Z4E zd3LA^pYhzQpweSFoXO|$M`g4s(I}WY2lTPw5i3*FtKUT^W(=d0s|NA0RB;GSCX4z^ zk@Wu~UtyWxc@|YaiTc)p0Jsjncl!`0OxzDa@8^biM+6>zOX%DO?~UNC@XN8n0s1#X z`^$#~?Hs537akLZ&T-J;JfXteJ`990;;wS=mPq6}%sqm5t?@7O1-Zf#X#6y#@c324 zh;j&9P_FaCEdI5KnCM^VgBYllZ}Ls0`auzSLcf4PVF!8d);bh5xR-ovoDX-S#2n9m zd;{?fF@FJHK%>_BO>&~xXIejcLqxv7Uqh_c_?LM9`$NHy3-q4V>VLLI|8&;E{pS&r l2iHrerm=0vJSU1}r16u4`~MEH@Y;FA(D|o4I#S{O{{dh>=W74} literal 0 HcmV?d00001 diff --git a/utils/ft_strshift.o b/utils/ft_strshift.o new file mode 100644 index 0000000000000000000000000000000000000000..6e52f4faa07623a185d535c9d4283ac83176a9e0 GIT binary patch literal 2696 zcmb_e-D@0G6hAYwce2eUyZLBqYHi7bA}TwR#ppW80g=XXnw{8C!qQ3~H>vg>;|IYC&XWWj=?b7=9N@-(md*_?| z{rw#p^5q|uVdbIxsL=95_npoUDop`)CJ87n5mE}8y48)XS5P4e zVzh)Rqi(e#G`vbmbnq3mSXUw?GJUtnfucEmAI27_Kg7-~%-2FU2*>MA)m<20vOM4J zxZ~$0jR|9-_;?sO&%H5;Xv#PbVPHGH*$gUv;Q1}P85ngi-KKB0I&I50Ezepm)~vt` zyy{Xl?3%No=ZF5(q}jGz+izKp1Bqn7QJ~(cdJv5Twi|#AP6sDKW~Ji$_KH;rfc1Zy zZ2YOm>b@U1AyU->~& zw08I?Q5(Pveb2Prx)U}mvwQJE<-%0avE8s+TyR6PW(WSig!s!oB>REQ#L+F;o^~)1tpD&Y*Kz4C*a0jGhx^ zF~Z@Gzd27ce~<<$RN{|P{FcPyQd19-ec&4=-3KrlRxMnpRBJWQS^^`mx&avVPP=X4Sx?>y zGLS9@!?T>K#J1b)fZ=um%XsGb`Jx|G>#u_0I7{tHwb8(PYvD*ZoUl^|08#BnB;!sQOD(m{hSG@sZU8MARvzSH~VI!!RyNW5F1icZhA~| z-Ie~P)U496m(Y>sDE5pbKjTEH)3N7~Po6stUzFsUOvuYPylNvElloEA6fz+(t8ZoA zS4>FF^;w@lzE^%jZc_SFNDAk%zKTw^lW}*Fn>^u2$F9Wri|O!BBylm3OD2Cm(;*tY z`uCf>oVZWazhjAf=56HCb3zJ!mi7N6kdSn21AV>fXXS?EI#i!-Yo0&z^vj}M+o#`< iHGB?)_dgSqPm-=r_fEQZ6n9S^sxJwkP##SwUH@;$mLlZ< literal 0 HcmV?d00001