├── .travis.yml
├── CHANGELOG.md
├── src
├── index.js
└── main.jsx
├── .babelrc
├── examples
├── styles.css
├── run.jsx
├── base.html
└── main.jsx
├── .eslintrc
├── LICENSE
├── test
└── Back2TopTest.js
├── karma.config.js
├── webpack.examples.cfg.js
├── webpack.server.js
├── .gitignore
├── .npmignore
├── package.json
└── README.md
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "6.11"
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## Changelog
2 |
3 | * **0.1.0** Initial release
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import Back2Top from './main';
2 |
3 | export default Back2Top
--------------------------------------------------------------------------------
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | [
4 | "env",
5 | {
6 | "modules": false
7 | }
8 | ],
9 | "react",
10 | "stage-0"
11 | ],
12 | "plugins": [
13 | "transform-object-assign",
14 | "transform-react-display-name",
15 | "transform-runtime"
16 | ]
17 | }
--------------------------------------------------------------------------------
/examples/styles.css:
--------------------------------------------------------------------------------
1 | .back-to-top {
2 | position: fixed;
3 | top: 100px;
4 | right: 15px;
5 | z-index: 1000;
6 | display: none;
7 | padding-top: 13px;
8 | width: 50px;
9 | height: 40px;
10 | /*border: 0;*/
11 | /*border-radius: 50%;*/
12 | /*background: #00A79D;*/
13 | /*box-shadow: 0 0 9px rgba(153, 153, 153, 0.8);*/
14 | /*color: white;*/
15 | text-align: center;
16 | font-size: 20px;
17 | transform: translate(0, 0);
18 | text-rendering: auto;
19 | -webkit-font-smoothing: antialiased;
20 | -moz-osx-font-smoothing: grayscale;
21 | }
22 |
23 | .back-to-top:hover {
24 | background: transparent;
25 | color: white;
26 | }
--------------------------------------------------------------------------------
/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "parser": "babel-eslint",
3 | "plugins": [
4 | "react",
5 | "eslint-plugin-react"
6 | ],
7 | "env": {
8 | "browser": true,
9 | "amd": true,
10 | "es6": true,
11 | "node": false
12 | },
13 | "rules": {
14 | "comma-dangle": 1,
15 | "quotes": [
16 | 1,
17 | "single"
18 | ],
19 | "no-undef": 1,
20 | "global-strict": 0,
21 | "no-extra-semi": 1,
22 | "no-underscore-dangle": 0,
23 | "no-extra-parens": 0,
24 | "no-console": 1,
25 | "no-unused-vars": 1,
26 | "no-trailing-spaces": [
27 | 1,
28 | {
29 | "skipBlankLines": true
30 | }
31 | ],
32 | "no-alert": 0,
33 | "no-unreachable": 1,
34 | "react/jsx-uses-react": 1,
35 | "react/jsx-uses-vars": 1
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2016 Thomas Bolis
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/examples/run.jsx:
--------------------------------------------------------------------------------
1 | /*global module*/
2 | 'use strict';
3 | (function () {
4 | let React = require('react');
5 | let ReactDOM = require('react-dom');
6 | let AppContainer = require('react-hot-loader').AppContainer;
7 | let injectTapEventPlugin = require('react-tap-event-plugin');
8 | let DemoApp = require('./main').default;
9 |
10 | // Needed for React Developer Tools (Chrome Extension)
11 | window.React = React;
12 |
13 | /* Some components use react-tap-event-plugin to listen for touch events.
14 | This dependency is temporary and will go away once react v1.0 is released.
15 | Until then, be sure to inject this plugin at the start of your app */
16 | injectTapEventPlugin();
17 |
18 | const containerEl = document.getElementById('container');
19 |
20 | // Render the main app react component into the app div
21 | ReactDOM.render(
39 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis consectetur turpis in arcu 40 | consectetur, a mollis erat rhoncus. Suspendisse quam turpis, cursus et sapien dignissim, ornare 41 | suscipit lectus. Ut elementum felis ac magna fringilla, a semper lacus commodo. Vivamus et vehicula 42 | orci. Pellentesque porta tincidunt arcu, a consectetur risus maximus in. Aliquam at justo molestie, 43 | mattis nibh in, varius neque. Quisque ac tellus egestas, malesuada tortor ut, luctus dolor. Sed 44 | facilisis mauris quis fringilla pellentesque. Curabitur ullamcorper ut quam vel commodo. In 45 | tincidunt placerat tempus. Morbi nisi ligula, tristique in lorem quis, blandit iaculis libero. Duis 46 | sodales, purus eget pretium suscipit, massa lorem lobortis augue, in porta sem felis at lacus. 47 | Praesent ut condimentum ex. 48 |
49 | 50 | .... 51 | 52 | {/* A Long page */} 53 | 54 |35 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis consectetur turpis in arcu 36 | consectetur, a mollis erat rhoncus. Suspendisse quam turpis, cursus et sapien dignissim, ornare 37 | suscipit lectus. Ut elementum felis ac magna fringilla, a semper lacus commodo. Vivamus et 38 | vehicula 39 | orci. Pellentesque porta tincidunt arcu, a consectetur risus maximus in. Aliquam at justo 40 | molestie, 41 | mattis nibh in, varius neque. Quisque ac tellus egestas, malesuada tortor ut, luctus dolor. Sed 42 | facilisis mauris quis fringilla pellentesque. Curabitur ullamcorper ut quam vel commodo. In 43 | tincidunt placerat tempus. Morbi nisi ligula, tristique in lorem quis, blandit iaculis libero. 44 | Duis 45 | sodales, purus eget pretium suscipit, massa lorem lobortis augue, in porta sem felis at lacus. 46 | Praesent ut condimentum ex. 47 |
48 | 49 |50 | Sed fringilla est tempus, ornare risus non, lobortis quam. Aliquam scelerisque dignissim 51 | hendrerit. 52 | Fusce sem tortor, vestibulum ac luctus a, pulvinar feugiat eros. Suspendisse viverra orci vel 53 | odio 54 | facilisis, laoreet vulputate diam lacinia. Curabitur nulla odio, condimentum a dapibus ac, 55 | venenatis 56 | a odio. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos 57 | himenaeos. 58 | Cras sapien felis, sagittis in vehicula sit amet, maximus nec ex. Vivamus id velit eu tortor 59 | lobortis imperdiet. Morbi efficitur congue sem. Pellentesque vitae tortor at lectus pharetra 60 | vulputate. Nulla posuere leo vel massa consectetur, sit amet volutpat diam euismod. Phasellus ut 61 | enim viverra libero viverra dictum. 62 |
63 | 64 |65 | Integer sapien velit, laoreet laoreet magna eget, tincidunt rutrum turpis. Curabitur eu lorem 66 | vestibulum dolor feugiat feugiat et congue metus. Quisque vehicula posuere libero. Curabitur a 67 | suscipit erat. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam eget pulvinar odio. 68 | Curabitur in magna nec est ultricies varius. Ut euismod suscipit condimentum. Nunc sit amet 69 | risus 70 | tortor. Vivamus pretium, odio ut volutpat tempor, metus mi facilisis metus, ac pretium nunc nibh 71 | id 72 | mi. Suspendisse consectetur erat id elit ullamcorper tristique. 73 |
74 | 75 |76 | Suspendisse porttitor porta metus quis congue. Morbi in venenatis nunc, vitae lacinia leo. Fusce 77 | vulputate tincidunt urna vel egestas. Sed sit amet est sit amet lectus rutrum elementum non eu 78 | ipsum. Quisque vulputate, ligula nec tincidunt maximus, massa lorem mattis purus, hendrerit 79 | egestas 80 | augue mi ac odio. Donec finibus dui ac arcu accumsan, a bibendum mi porttitor. Fusce odio eros, 81 | egestas quis urna ut, imperdiet maximus ligula. Fusce nisi turpis, rutrum et cursus et, 82 | porttitor 83 | non lectus. Sed tempor risus non ultricies dapibus. Suspendisse potenti. Cum sociis natoque 84 | penatibus et magnis dis parturient montes, nascetur ridiculus mus. Integer vestibulum urna sit 85 | amet 86 | auctor vestibulum. Aenean quam augue, accumsan a imperdiet vitae, porttitor sed sem. 87 |
88 | 89 |90 | Suspendisse posuere finibus neque, quis efficitur est facilisis in. Sed hendrerit tellus massa, 91 | eget 92 | pulvinar neque efficitur ac. Mauris nibh est, venenatis non sollicitudin in, fermentum et ipsum. 93 | Quisque massa libero, rhoncus nec lobortis et, semper sit amet lacus. Donec suscipit interdum 94 | varius. Maecenas dui metus, gravida sed libero quis, suscipit blandit magna. Suspendisse 95 | faucibus 96 | enim non massa consectetur, fermentum suscipit risus venenatis. Ut suscipit hendrerit sem, eu 97 | semper 98 | quam gravida id. Curabitur elementum felis ac lorem elementum porttitor vitae vel metus. Morbi 99 | in 100 | facilisis purus, sed ornare felis. Nam eros nisi, vestibulum nec luctus gravida, molestie in 101 | erat. 102 | Proin ac orci consequat, elementum tortor sed, fringilla nisl. Sed nec eros sit amet lacus 103 | rutrum 104 | posuere eu quis leo. Aliquam erat volutpat. Maecenas tempus massa at viverra vulputate. Etiam 105 | vitae 106 | iaculis lectus. 107 |
108 | 109 |110 | Etiam non mattis nisi, at molestie velit. Curabitur ut est lectus. Ut lobortis est aliquam porta 111 | vulputate. Nunc porttitor nulla augue, eget feugiat leo convallis sed. Nullam in semper leo. 112 | Nunc ac 113 | cursus lacus. Praesent feugiat ex sed sapien sodales blandit. Morbi mollis massa dignissim augue 114 | molestie, quis vulputate risus hendrerit. Aliquam porttitor nulla dui, vel ultrices libero 115 | convallis 116 | sed. Curabitur dapibus, neque vel aliquet scelerisque, libero ligula vestibulum ligula, vel 117 | pellentesque tortor risus ut augue. Phasellus viverra ullamcorper nulla quis molestie. 118 |
119 | 120 |121 | Suspendisse potenti. Ut consectetur, sem ac laoreet rutrum, sem ipsum egestas metus, vel feugiat 122 | justo turpis non dolor. Vestibulum eros erat, rhoncus in ligula a, vulputate pretium ante. Morbi 123 | ut 124 | mauris ex. Aenean erat tortor, hendrerit vitae pulvinar eget, gravida vitae nisi. Fusce placerat 125 | sit 126 | amet neque eu pharetra. Quisque lacinia dignissim ligula in pulvinar. Nulla non sapien congue 127 | ipsum 128 | tempus euismod. Nulla finibus nisl a metus commodo blandit. Praesent orci massa, convallis a 129 | vehicula a, euismod et nunc. 130 |
131 | 132 |133 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis consectetur turpis in arcu 134 | consectetur, a mollis erat rhoncus. Suspendisse quam turpis, cursus et sapien dignissim, ornare 135 | suscipit lectus. Ut elementum felis ac magna fringilla, a semper lacus commodo. Vivamus et 136 | vehicula 137 | orci. Pellentesque porta tincidunt arcu, a consectetur risus maximus in. Aliquam at justo 138 | molestie, 139 | mattis nibh in, varius neque. Quisque ac tellus egestas, malesuada tortor ut, luctus dolor. Sed 140 | facilisis mauris quis fringilla pellentesque. Curabitur ullamcorper ut quam vel commodo. In 141 | tincidunt placerat tempus. Morbi nisi ligula, tristique in lorem quis, blandit iaculis libero. 142 | Duis 143 | sodales, purus eget pretium suscipit, massa lorem lobortis augue, in porta sem felis at lacus. 144 | Praesent ut condimentum ex. 145 |
146 | 147 |148 | Sed fringilla est tempus, ornare risus non, lobortis quam. Aliquam scelerisque dignissim 149 | hendrerit. 150 | Fusce sem tortor, vestibulum ac luctus a, pulvinar feugiat eros. Suspendisse viverra orci vel 151 | odio 152 | facilisis, laoreet vulputate diam lacinia. Curabitur nulla odio, condimentum a dapibus ac, 153 | venenatis 154 | a odio. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos 155 | himenaeos. 156 | Cras sapien felis, sagittis in vehicula sit amet, maximus nec ex. Vivamus id velit eu tortor 157 | lobortis imperdiet. Morbi efficitur congue sem. Pellentesque vitae tortor at lectus pharetra 158 | vulputate. Nulla posuere leo vel massa consectetur, sit amet volutpat diam euismod. Phasellus ut 159 | enim viverra libero viverra dictum. 160 |
161 | 162 |163 | Integer sapien velit, laoreet laoreet magna eget, tincidunt rutrum turpis. Curabitur eu lorem 164 | vestibulum dolor feugiat feugiat et congue metus. Quisque vehicula posuere libero. Curabitur a 165 | suscipit erat. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam eget pulvinar odio. 166 | Curabitur in magna nec est ultricies varius. Ut euismod suscipit condimentum. Nunc sit amet 167 | risus 168 | tortor. Vivamus pretium, odio ut volutpat tempor, metus mi facilisis metus, ac pretium nunc nibh 169 | id 170 | mi. Suspendisse consectetur erat id elit ullamcorper tristique. 171 |
172 | 173 |174 | Suspendisse porttitor porta metus quis congue. Morbi in venenatis nunc, vitae lacinia leo. Fusce 175 | vulputate tincidunt urna vel egestas. Sed sit amet est sit amet lectus rutrum elementum non eu 176 | ipsum. Quisque vulputate, ligula nec tincidunt maximus, massa lorem mattis purus, hendrerit 177 | egestas 178 | augue mi ac odio. Donec finibus dui ac arcu accumsan, a bibendum mi porttitor. Fusce odio eros, 179 | egestas quis urna ut, imperdiet maximus ligula. Fusce nisi turpis, rutrum et cursus et, 180 | porttitor 181 | non lectus. Sed tempor risus non ultricies dapibus. Suspendisse potenti. Cum sociis natoque 182 | penatibus et magnis dis parturient montes, nascetur ridiculus mus. Integer vestibulum urna sit 183 | amet 184 | auctor vestibulum. Aenean quam augue, accumsan a imperdiet vitae, porttitor sed sem. 185 |
186 | 187 |188 | Suspendisse posuere finibus neque, quis efficitur est facilisis in. Sed hendrerit tellus massa, 189 | eget 190 | pulvinar neque efficitur ac. Mauris nibh est, venenatis non sollicitudin in, fermentum et ipsum. 191 | Quisque massa libero, rhoncus nec lobortis et, semper sit amet lacus. Donec suscipit interdum 192 | varius. Maecenas dui metus, gravida sed libero quis, suscipit blandit magna. Suspendisse 193 | faucibus 194 | enim non massa consectetur, fermentum suscipit risus venenatis. Ut suscipit hendrerit sem, eu 195 | semper 196 | quam gravida id. Curabitur elementum felis ac lorem elementum porttitor vitae vel metus. Morbi 197 | in 198 | facilisis purus, sed ornare felis. Nam eros nisi, vestibulum nec luctus gravida, molestie in 199 | erat. 200 | Proin ac orci consequat, elementum tortor sed, fringilla nisl. Sed nec eros sit amet lacus 201 | rutrum 202 | posuere eu quis leo. Aliquam erat volutpat. Maecenas tempus massa at viverra vulputate. Etiam 203 | vitae 204 | iaculis lectus. 205 |
206 | 207 |208 | Etiam non mattis nisi, at molestie velit. Curabitur ut est lectus. Ut lobortis est aliquam porta 209 | vulputate. Nunc porttitor nulla augue, eget feugiat leo convallis sed. Nullam in semper leo. 210 | Nunc ac 211 | cursus lacus. Praesent feugiat ex sed sapien sodales blandit. Morbi mollis massa dignissim augue 212 | molestie, quis vulputate risus hendrerit. Aliquam porttitor nulla dui, vel ultrices libero 213 | convallis 214 | sed. Curabitur dapibus, neque vel aliquet scelerisque, libero ligula vestibulum ligula, vel 215 | pellentesque tortor risus ut augue. Phasellus viverra ullamcorper nulla quis molestie. 216 |
217 | 218 |219 | Suspendisse potenti. Ut consectetur, sem ac laoreet rutrum, sem ipsum egestas metus, vel feugiat 220 | justo turpis non dolor. Vestibulum eros erat, rhoncus in ligula a, vulputate pretium ante. Morbi 221 | ut 222 | mauris ex. Aenean erat tortor, hendrerit vitae pulvinar eget, gravida vitae nisi. Fusce placerat 223 | sit 224 | amet neque eu pharetra. Quisque lacinia dignissim ligula in pulvinar. Nulla non sapien congue 225 | ipsum 226 | tempus euismod. Nulla finibus nisl a metus commodo blandit. Praesent orci massa, convallis a 227 | vehicula a, euismod et nunc. 228 |
229 | 230 |231 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis consectetur turpis in arcu 232 | consectetur, a mollis erat rhoncus. Suspendisse quam turpis, cursus et sapien dignissim, ornare 233 | suscipit lectus. Ut elementum felis ac magna fringilla, a semper lacus commodo. Vivamus et 234 | vehicula 235 | orci. Pellentesque porta tincidunt arcu, a consectetur risus maximus in. Aliquam at justo 236 | molestie, 237 | mattis nibh in, varius neque. Quisque ac tellus egestas, malesuada tortor ut, luctus dolor. Sed 238 | facilisis mauris quis fringilla pellentesque. Curabitur ullamcorper ut quam vel commodo. In 239 | tincidunt placerat tempus. Morbi nisi ligula, tristique in lorem quis, blandit iaculis libero. 240 | Duis 241 | sodales, purus eget pretium suscipit, massa lorem lobortis augue, in porta sem felis at lacus. 242 | Praesent ut condimentum ex. 243 |
244 | 245 |246 | Sed fringilla est tempus, ornare risus non, lobortis quam. Aliquam scelerisque dignissim 247 | hendrerit. 248 | Fusce sem tortor, vestibulum ac luctus a, pulvinar feugiat eros. Suspendisse viverra orci vel 249 | odio 250 | facilisis, laoreet vulputate diam lacinia. Curabitur nulla odio, condimentum a dapibus ac, 251 | venenatis 252 | a odio. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos 253 | himenaeos. 254 | Cras sapien felis, sagittis in vehicula sit amet, maximus nec ex. Vivamus id velit eu tortor 255 | lobortis imperdiet. Morbi efficitur congue sem. Pellentesque vitae tortor at lectus pharetra 256 | vulputate. Nulla posuere leo vel massa consectetur, sit amet volutpat diam euismod. Phasellus ut 257 | enim viverra libero viverra dictum. 258 |
259 | 260 |261 | Integer sapien velit, laoreet laoreet magna eget, tincidunt rutrum turpis. Curabitur eu lorem 262 | vestibulum dolor feugiat feugiat et congue metus. Quisque vehicula posuere libero. Curabitur a 263 | suscipit erat. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam eget pulvinar odio. 264 | Curabitur in magna nec est ultricies varius. Ut euismod suscipit condimentum. Nunc sit amet 265 | risus 266 | tortor. Vivamus pretium, odio ut volutpat tempor, metus mi facilisis metus, ac pretium nunc nibh 267 | id 268 | mi. Suspendisse consectetur erat id elit ullamcorper tristique. 269 |
270 | 271 |272 | Suspendisse porttitor porta metus quis congue. Morbi in venenatis nunc, vitae lacinia leo. Fusce 273 | vulputate tincidunt urna vel egestas. Sed sit amet est sit amet lectus rutrum elementum non eu 274 | ipsum. Quisque vulputate, ligula nec tincidunt maximus, massa lorem mattis purus, hendrerit 275 | egestas 276 | augue mi ac odio. Donec finibus dui ac arcu accumsan, a bibendum mi porttitor. Fusce odio eros, 277 | egestas quis urna ut, imperdiet maximus ligula. Fusce nisi turpis, rutrum et cursus et, 278 | porttitor 279 | non lectus. Sed tempor risus non ultricies dapibus. Suspendisse potenti. Cum sociis natoque 280 | penatibus et magnis dis parturient montes, nascetur ridiculus mus. Integer vestibulum urna sit 281 | amet 282 | auctor vestibulum. Aenean quam augue, accumsan a imperdiet vitae, porttitor sed sem. 283 |
284 | 285 |286 | Suspendisse posuere finibus neque, quis efficitur est facilisis in. Sed hendrerit tellus massa, 287 | eget 288 | pulvinar neque efficitur ac. Mauris nibh est, venenatis non sollicitudin in, fermentum et ipsum. 289 | Quisque massa libero, rhoncus nec lobortis et, semper sit amet lacus. Donec suscipit interdum 290 | varius. Maecenas dui metus, gravida sed libero quis, suscipit blandit magna. Suspendisse 291 | faucibus 292 | enim non massa consectetur, fermentum suscipit risus venenatis. Ut suscipit hendrerit sem, eu 293 | semper 294 | quam gravida id. Curabitur elementum felis ac lorem elementum porttitor vitae vel metus. Morbi 295 | in 296 | facilisis purus, sed ornare felis. Nam eros nisi, vestibulum nec luctus gravida, molestie in 297 | erat. 298 | Proin ac orci consequat, elementum tortor sed, fringilla nisl. Sed nec eros sit amet lacus 299 | rutrum 300 | posuere eu quis leo. Aliquam erat volutpat. Maecenas tempus massa at viverra vulputate. Etiam 301 | vitae 302 | iaculis lectus. 303 |
304 | 305 |306 | Etiam non mattis nisi, at molestie velit. Curabitur ut est lectus. Ut lobortis est aliquam porta 307 | vulputate. Nunc porttitor nulla augue, eget feugiat leo convallis sed. Nullam in semper leo. 308 | Nunc ac 309 | cursus lacus. Praesent feugiat ex sed sapien sodales blandit. Morbi mollis massa dignissim augue 310 | molestie, quis vulputate risus hendrerit. Aliquam porttitor nulla dui, vel ultrices libero 311 | convallis 312 | sed. Curabitur dapibus, neque vel aliquet scelerisque, libero ligula vestibulum ligula, vel 313 | pellentesque tortor risus ut augue. Phasellus viverra ullamcorper nulla quis molestie. 314 |
315 | 316 |317 | Suspendisse potenti. Ut consectetur, sem ac laoreet rutrum, sem ipsum egestas metus, vel feugiat 318 | justo turpis non dolor. Vestibulum eros erat, rhoncus in ligula a, vulputate pretium ante. Morbi 319 | ut 320 | mauris ex. Aenean erat tortor, hendrerit vitae pulvinar eget, gravida vitae nisi. Fusce placerat 321 | sit 322 | amet neque eu pharetra. Quisque lacinia dignissim ligula in pulvinar. Nulla non sapien congue 323 | ipsum 324 | tempus euismod. Nulla finibus nisl a metus commodo blandit. Praesent orci massa, convallis a 325 | vehicula a, euismod et nunc. 326 |
327 |328 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis consectetur turpis in arcu 329 | consectetur, a mollis erat rhoncus. Suspendisse quam turpis, cursus et sapien dignissim, ornare 330 | suscipit lectus. Ut elementum felis ac magna fringilla, a semper lacus commodo. Vivamus et 331 | vehicula 332 | orci. Pellentesque porta tincidunt arcu, a consectetur risus maximus in. Aliquam at justo 333 | molestie, 334 | mattis nibh in, varius neque. Quisque ac tellus egestas, malesuada tortor ut, luctus dolor. Sed 335 | facilisis mauris quis fringilla pellentesque. Curabitur ullamcorper ut quam vel commodo. In 336 | tincidunt placerat tempus. Morbi nisi ligula, tristique in lorem quis, blandit iaculis libero. 337 | Duis 338 | sodales, purus eget pretium suscipit, massa lorem lobortis augue, in porta sem felis at lacus. 339 | Praesent ut condimentum ex. 340 |
341 | 342 |343 | Sed fringilla est tempus, ornare risus non, lobortis quam. Aliquam scelerisque dignissim 344 | hendrerit. 345 | Fusce sem tortor, vestibulum ac luctus a, pulvinar feugiat eros. Suspendisse viverra orci vel 346 | odio 347 | facilisis, laoreet vulputate diam lacinia. Curabitur nulla odio, condimentum a dapibus ac, 348 | venenatis 349 | a odio. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos 350 | himenaeos. 351 | Cras sapien felis, sagittis in vehicula sit amet, maximus nec ex. Vivamus id velit eu tortor 352 | lobortis imperdiet. Morbi efficitur congue sem. Pellentesque vitae tortor at lectus pharetra 353 | vulputate. Nulla posuere leo vel massa consectetur, sit amet volutpat diam euismod. Phasellus ut 354 | enim viverra libero viverra dictum. 355 |
356 | 357 |358 | Integer sapien velit, laoreet laoreet magna eget, tincidunt rutrum turpis. Curabitur eu lorem 359 | vestibulum dolor feugiat feugiat et congue metus. Quisque vehicula posuere libero. Curabitur a 360 | suscipit erat. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam eget pulvinar odio. 361 | Curabitur in magna nec est ultricies varius. Ut euismod suscipit condimentum. Nunc sit amet 362 | risus 363 | tortor. Vivamus pretium, odio ut volutpat tempor, metus mi facilisis metus, ac pretium nunc nibh 364 | id 365 | mi. Suspendisse consectetur erat id elit ullamcorper tristique. 366 |
367 | 368 |369 | Suspendisse porttitor porta metus quis congue. Morbi in venenatis nunc, vitae lacinia leo. Fusce 370 | vulputate tincidunt urna vel egestas. Sed sit amet est sit amet lectus rutrum elementum non eu 371 | ipsum. Quisque vulputate, ligula nec tincidunt maximus, massa lorem mattis purus, hendrerit 372 | egestas 373 | augue mi ac odio. Donec finibus dui ac arcu accumsan, a bibendum mi porttitor. Fusce odio eros, 374 | egestas quis urna ut, imperdiet maximus ligula. Fusce nisi turpis, rutrum et cursus et, 375 | porttitor 376 | non lectus. Sed tempor risus non ultricies dapibus. Suspendisse potenti. Cum sociis natoque 377 | penatibus et magnis dis parturient montes, nascetur ridiculus mus. Integer vestibulum urna sit 378 | amet 379 | auctor vestibulum. Aenean quam augue, accumsan a imperdiet vitae, porttitor sed sem. 380 |
381 | 382 |383 | Suspendisse posuere finibus neque, quis efficitur est facilisis in. Sed hendrerit tellus massa, 384 | eget 385 | pulvinar neque efficitur ac. Mauris nibh est, venenatis non sollicitudin in, fermentum et ipsum. 386 | Quisque massa libero, rhoncus nec lobortis et, semper sit amet lacus. Donec suscipit interdum 387 | varius. Maecenas dui metus, gravida sed libero quis, suscipit blandit magna. Suspendisse 388 | faucibus 389 | enim non massa consectetur, fermentum suscipit risus venenatis. Ut suscipit hendrerit sem, eu 390 | semper 391 | quam gravida id. Curabitur elementum felis ac lorem elementum porttitor vitae vel metus. Morbi 392 | in 393 | facilisis purus, sed ornare felis. Nam eros nisi, vestibulum nec luctus gravida, molestie in 394 | erat. 395 | Proin ac orci consequat, elementum tortor sed, fringilla nisl. Sed nec eros sit amet lacus 396 | rutrum 397 | posuere eu quis leo. Aliquam erat volutpat. Maecenas tempus massa at viverra vulputate. Etiam 398 | vitae 399 | iaculis lectus. 400 |
401 | 402 |403 | Etiam non mattis nisi, at molestie velit. Curabitur ut est lectus. Ut lobortis est aliquam porta 404 | vulputate. Nunc porttitor nulla augue, eget feugiat leo convallis sed. Nullam in semper leo. 405 | Nunc ac 406 | cursus lacus. Praesent feugiat ex sed sapien sodales blandit. Morbi mollis massa dignissim augue 407 | molestie, quis vulputate risus hendrerit. Aliquam porttitor nulla dui, vel ultrices libero 408 | convallis 409 | sed. Curabitur dapibus, neque vel aliquet scelerisque, libero ligula vestibulum ligula, vel 410 | pellentesque tortor risus ut augue. Phasellus viverra ullamcorper nulla quis molestie. 411 |
412 | 413 |414 | Suspendisse potenti. Ut consectetur, sem ac laoreet rutrum, sem ipsum egestas metus, vel feugiat 415 | justo turpis non dolor. Vestibulum eros erat, rhoncus in ligula a, vulputate pretium ante. Morbi 416 | ut 417 | mauris ex. Aenean erat tortor, hendrerit vitae pulvinar eget, gravida vitae nisi. Fusce placerat 418 | sit 419 | amet neque eu pharetra. Quisque lacinia dignissim ligula in pulvinar. Nulla non sapien congue 420 | ipsum 421 | tempus euismod. Nulla finibus nisl a metus commodo blandit. Praesent orci massa, convallis a 422 | vehicula a, euismod et nunc. 423 |
424 | 425 |426 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis consectetur turpis in arcu 427 | consectetur, a mollis erat rhoncus. Suspendisse quam turpis, cursus et sapien dignissim, ornare 428 | suscipit lectus. Ut elementum felis ac magna fringilla, a semper lacus commodo. Vivamus et 429 | vehicula 430 | orci. Pellentesque porta tincidunt arcu, a consectetur risus maximus in. Aliquam at justo 431 | molestie, 432 | mattis nibh in, varius neque. Quisque ac tellus egestas, malesuada tortor ut, luctus dolor. Sed 433 | facilisis mauris quis fringilla pellentesque. Curabitur ullamcorper ut quam vel commodo. In 434 | tincidunt placerat tempus. Morbi nisi ligula, tristique in lorem quis, blandit iaculis libero. 435 | Duis 436 | sodales, purus eget pretium suscipit, massa lorem lobortis augue, in porta sem felis at lacus. 437 | Praesent ut condimentum ex. 438 |
439 | 440 |441 | Sed fringilla est tempus, ornare risus non, lobortis quam. Aliquam scelerisque dignissim 442 | hendrerit. 443 | Fusce sem tortor, vestibulum ac luctus a, pulvinar feugiat eros. Suspendisse viverra orci vel 444 | odio 445 | facilisis, laoreet vulputate diam lacinia. Curabitur nulla odio, condimentum a dapibus ac, 446 | venenatis 447 | a odio. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos 448 | himenaeos. 449 | Cras sapien felis, sagittis in vehicula sit amet, maximus nec ex. Vivamus id velit eu tortor 450 | lobortis imperdiet. Morbi efficitur congue sem. Pellentesque vitae tortor at lectus pharetra 451 | vulputate. Nulla posuere leo vel massa consectetur, sit amet volutpat diam euismod. Phasellus ut 452 | enim viverra libero viverra dictum. 453 |
454 | 455 |456 | Integer sapien velit, laoreet laoreet magna eget, tincidunt rutrum turpis. Curabitur eu lorem 457 | vestibulum dolor feugiat feugiat et congue metus. Quisque vehicula posuere libero. Curabitur a 458 | suscipit erat. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam eget pulvinar odio. 459 | Curabitur in magna nec est ultricies varius. Ut euismod suscipit condimentum. Nunc sit amet 460 | risus 461 | tortor. Vivamus pretium, odio ut volutpat tempor, metus mi facilisis metus, ac pretium nunc nibh 462 | id 463 | mi. Suspendisse consectetur erat id elit ullamcorper tristique. 464 |
465 | 466 |467 | Suspendisse porttitor porta metus quis congue. Morbi in venenatis nunc, vitae lacinia leo. Fusce 468 | vulputate tincidunt urna vel egestas. Sed sit amet est sit amet lectus rutrum elementum non eu 469 | ipsum. Quisque vulputate, ligula nec tincidunt maximus, massa lorem mattis purus, hendrerit 470 | egestas 471 | augue mi ac odio. Donec finibus dui ac arcu accumsan, a bibendum mi porttitor. Fusce odio eros, 472 | egestas quis urna ut, imperdiet maximus ligula. Fusce nisi turpis, rutrum et cursus et, 473 | porttitor 474 | non lectus. Sed tempor risus non ultricies dapibus. Suspendisse potenti. Cum sociis natoque 475 | penatibus et magnis dis parturient montes, nascetur ridiculus mus. Integer vestibulum urna sit 476 | amet 477 | auctor vestibulum. Aenean quam augue, accumsan a imperdiet vitae, porttitor sed sem. 478 |
479 | 480 |481 | Suspendisse posuere finibus neque, quis efficitur est facilisis in. Sed hendrerit tellus massa, 482 | eget 483 | pulvinar neque efficitur ac. Mauris nibh est, venenatis non sollicitudin in, fermentum et ipsum. 484 | Quisque massa libero, rhoncus nec lobortis et, semper sit amet lacus. Donec suscipit interdum 485 | varius. Maecenas dui metus, gravida sed libero quis, suscipit blandit magna. Suspendisse 486 | faucibus 487 | enim non massa consectetur, fermentum suscipit risus venenatis. Ut suscipit hendrerit sem, eu 488 | semper 489 | quam gravida id. Curabitur elementum felis ac lorem elementum porttitor vitae vel metus. Morbi 490 | in 491 | facilisis purus, sed ornare felis. Nam eros nisi, vestibulum nec luctus gravida, molestie in 492 | erat. 493 | Proin ac orci consequat, elementum tortor sed, fringilla nisl. Sed nec eros sit amet lacus 494 | rutrum 495 | posuere eu quis leo. Aliquam erat volutpat. Maecenas tempus massa at viverra vulputate. Etiam 496 | vitae 497 | iaculis lectus. 498 |
499 | 500 |501 | Etiam non mattis nisi, at molestie velit. Curabitur ut est lectus. Ut lobortis est aliquam porta 502 | vulputate. Nunc porttitor nulla augue, eget feugiat leo convallis sed. Nullam in semper leo. 503 | Nunc ac 504 | cursus lacus. Praesent feugiat ex sed sapien sodales blandit. Morbi mollis massa dignissim augue 505 | molestie, quis vulputate risus hendrerit. Aliquam porttitor nulla dui, vel ultrices libero 506 | convallis 507 | sed. Curabitur dapibus, neque vel aliquet scelerisque, libero ligula vestibulum ligula, vel 508 | pellentesque tortor risus ut augue. Phasellus viverra ullamcorper nulla quis molestie. 509 |
510 | 511 |512 | Suspendisse potenti. Ut consectetur, sem ac laoreet rutrum, sem ipsum egestas metus, vel feugiat 513 | justo turpis non dolor. Vestibulum eros erat, rhoncus in ligula a, vulputate pretium ante. Morbi 514 | ut 515 | mauris ex. Aenean erat tortor, hendrerit vitae pulvinar eget, gravida vitae nisi. Fusce placerat 516 | sit 517 | amet neque eu pharetra. Quisque lacinia dignissim ligula in pulvinar. Nulla non sapien congue 518 | ipsum 519 | tempus euismod. Nulla finibus nisl a metus commodo blandit. Praesent orci massa, convallis a 520 | vehicula a, euismod et nunc. 521 |
522 | 523 |524 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis consectetur turpis in arcu 525 | consectetur, a mollis erat rhoncus. Suspendisse quam turpis, cursus et sapien dignissim, ornare 526 | suscipit lectus. Ut elementum felis ac magna fringilla, a semper lacus commodo. Vivamus et 527 | vehicula 528 | orci. Pellentesque porta tincidunt arcu, a consectetur risus maximus in. Aliquam at justo 529 | molestie, 530 | mattis nibh in, varius neque. Quisque ac tellus egestas, malesuada tortor ut, luctus dolor. Sed 531 | facilisis mauris quis fringilla pellentesque. Curabitur ullamcorper ut quam vel commodo. In 532 | tincidunt placerat tempus. Morbi nisi ligula, tristique in lorem quis, blandit iaculis libero. 533 | Duis 534 | sodales, purus eget pretium suscipit, massa lorem lobortis augue, in porta sem felis at lacus. 535 | Praesent ut condimentum ex. 536 |
537 | 538 |539 | Sed fringilla est tempus, ornare risus non, lobortis quam. Aliquam scelerisque dignissim 540 | hendrerit. 541 | Fusce sem tortor, vestibulum ac luctus a, pulvinar feugiat eros. Suspendisse viverra orci vel 542 | odio 543 | facilisis, laoreet vulputate diam lacinia. Curabitur nulla odio, condimentum a dapibus ac, 544 | venenatis 545 | a odio. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos 546 | himenaeos. 547 | Cras sapien felis, sagittis in vehicula sit amet, maximus nec ex. Vivamus id velit eu tortor 548 | lobortis imperdiet. Morbi efficitur congue sem. Pellentesque vitae tortor at lectus pharetra 549 | vulputate. Nulla posuere leo vel massa consectetur, sit amet volutpat diam euismod. Phasellus ut 550 | enim viverra libero viverra dictum. 551 |
552 | 553 |554 | Integer sapien velit, laoreet laoreet magna eget, tincidunt rutrum turpis. Curabitur eu lorem 555 | vestibulum dolor feugiat feugiat et congue metus. Quisque vehicula posuere libero. Curabitur a 556 | suscipit erat. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam eget pulvinar odio. 557 | Curabitur in magna nec est ultricies varius. Ut euismod suscipit condimentum. Nunc sit amet 558 | risus 559 | tortor. Vivamus pretium, odio ut volutpat tempor, metus mi facilisis metus, ac pretium nunc nibh 560 | id 561 | mi. Suspendisse consectetur erat id elit ullamcorper tristique. 562 |
563 | 564 |565 | Suspendisse porttitor porta metus quis congue. Morbi in venenatis nunc, vitae lacinia leo. Fusce 566 | vulputate tincidunt urna vel egestas. Sed sit amet est sit amet lectus rutrum elementum non eu 567 | ipsum. Quisque vulputate, ligula nec tincidunt maximus, massa lorem mattis purus, hendrerit 568 | egestas 569 | augue mi ac odio. Donec finibus dui ac arcu accumsan, a bibendum mi porttitor. Fusce odio eros, 570 | egestas quis urna ut, imperdiet maximus ligula. Fusce nisi turpis, rutrum et cursus et, 571 | porttitor 572 | non lectus. Sed tempor risus non ultricies dapibus. Suspendisse potenti. Cum sociis natoque 573 | penatibus et magnis dis parturient montes, nascetur ridiculus mus. Integer vestibulum urna sit 574 | amet 575 | auctor vestibulum. Aenean quam augue, accumsan a imperdiet vitae, porttitor sed sem. 576 |
577 | 578 |579 | Suspendisse posuere finibus neque, quis efficitur est facilisis in. Sed hendrerit tellus massa, 580 | eget 581 | pulvinar neque efficitur ac. Mauris nibh est, venenatis non sollicitudin in, fermentum et ipsum. 582 | Quisque massa libero, rhoncus nec lobortis et, semper sit amet lacus. Donec suscipit interdum 583 | varius. Maecenas dui metus, gravida sed libero quis, suscipit blandit magna. Suspendisse 584 | faucibus 585 | enim non massa consectetur, fermentum suscipit risus venenatis. Ut suscipit hendrerit sem, eu 586 | semper 587 | quam gravida id. Curabitur elementum felis ac lorem elementum porttitor vitae vel metus. Morbi 588 | in 589 | facilisis purus, sed ornare felis. Nam eros nisi, vestibulum nec luctus gravida, molestie in 590 | erat. 591 | Proin ac orci consequat, elementum tortor sed, fringilla nisl. Sed nec eros sit amet lacus 592 | rutrum 593 | posuere eu quis leo. Aliquam erat volutpat. Maecenas tempus massa at viverra vulputate. Etiam 594 | vitae 595 | iaculis lectus. 596 |
597 | 598 |599 | Etiam non mattis nisi, at molestie velit. Curabitur ut est lectus. Ut lobortis est aliquam porta 600 | vulputate. Nunc porttitor nulla augue, eget feugiat leo convallis sed. Nullam in semper leo. 601 | Nunc ac 602 | cursus lacus. Praesent feugiat ex sed sapien sodales blandit. Morbi mollis massa dignissim augue 603 | molestie, quis vulputate risus hendrerit. Aliquam porttitor nulla dui, vel ultrices libero 604 | convallis 605 | sed. Curabitur dapibus, neque vel aliquet scelerisque, libero ligula vestibulum ligula, vel 606 | pellentesque tortor risus ut augue. Phasellus viverra ullamcorper nulla quis molestie. 607 |
608 | 609 |610 | Suspendisse potenti. Ut consectetur, sem ac laoreet rutrum, sem ipsum egestas metus, vel feugiat 611 | justo turpis non dolor. Vestibulum eros erat, rhoncus in ligula a, vulputate pretium ante. Morbi 612 | ut 613 | mauris ex. Aenean erat tortor, hendrerit vitae pulvinar eget, gravida vitae nisi. Fusce placerat 614 | sit 615 | amet neque eu pharetra. Quisque lacinia dignissim ligula in pulvinar. Nulla non sapien congue 616 | ipsum 617 | tempus euismod. Nulla finibus nisl a metus commodo blandit. Praesent orci massa, convallis a 618 | vehicula a, euismod et nunc. 619 |
620 | 621 | 622 |