Card image cap

Not finding an explanation in science I began to seek for it in life, hoping to find it among the people around me. And I began to observe how the people around me people like myself - lived, and what their attitude was to this question which had brought me to despair.

And this is what I found among people who were in the same position as myself as regards education and manner of life.

I found that for people of my circle there were four ways out of the terrible position in which we are all placed.

The first was that of ignorance. It consists in not knowing, not understanding, that life is an evil and an absurdity. People of this sort-chiefly women, or very young or very dull people-have not yet understood that question of life which presented itself to Schopenhauer, Solomon, and Buddha. They see neither the dragon that awaits them nor the mice gnawing the shrub by which they are hanging, and they lick the drops of honey, but they lick those drops of honey only for a while: something will turn their attention to the dragon and the mice, and there will be an end to their licking. From them I had nothing to learn-one cannot cease to know what one does know.

The second way out is epicureanism. It consists, while knowing the hopelessness of life, in making use meanwhile of the advantages one has, disregarding the dragon and the mice, and licking the honey in the best way, especially if there is much of it within reach. Solomon expresses this way out thus: "Then I commended mirth, because a man hath no better thing under the sun, than to eat, and to drink, and to be merry: and that this should accompany him in his labour the days of his life, which God giveth him under the sun.

Therefore eat thy bread with joy and drink thy wine with a merry heart. ... Live joyfully with the wife whom thou lovest all the days of the life of thy vanity ... for this is thy portion in life and in thy labours which thou takest under the sun. ... Whatsoever thy hand findeth to do, do it with thy might, for there is not work, nor device, nor knowledge, nor wisdom, in the grave, whither thou goest.

That is the way in which the majority of people of our circle make life possible for themselves. Their circumstances furnish them with more of welfare than of hardship, and their moral dullness makes it possible for them to forget that the advantage of their position is accidental, and that not everyone can have a thousand wives and palaces like Solomon, that for everyone who has a thousand wives there are a thousand without a wife, and that for each palace there are a thousand people who have to build it in the sweat of their brows; and that the accident that has today made me a Solomon may tomorrow make me a Solomon`s slave. The dullness of these people`s imagination enables them to forget the things that gave Buddha no peace-the inevitability of sickness, old age, and death, which today or tomorrow will destroy all these pleasures.

The third escape is that of strength and energy. It consists in destroying life, when one has understood that it is an evil and an absurdity. A few exceptionally strong and consistent people act so. Having understood the stupidity of the joke that has been played on them, and having understood that it is better to be dead than to be alive, and that it is best of all not to exist, they act accordingly and promptly end this stupid joke, since there are means: a rope round one`s neck, water, a knife to stick into one`s heart, or the trains on the railways; and the number of those of our circle who act in this way becomes greater and greater, and for the most part they act so at the best time of their life, when the strength of their mind is in full bloom and few habits degrading to the mind have as yet been acquired.

The fourth way out is that of weakness. It consists in seeing the truth of the situation and yet clinging to life, knowing in advance that nothing can come of it. People of this kind know that death is better than life, but not having the strength to act rationally-to end the deception quickly and kill themselves-they seem to wait for something. This is the escape of weakness, for if I know what is best and it is within my power, why not yield to what is best? ... I found myself in that category.

So people of my class evade the terrible contradiction in four ways. Strain my attention as I would, I saw no way except those four. One way was not to understand that life is senseless, vanity, and an evil, and that it is better not to live. I could not help knowing this, and when I once knew it could not shut my eyes to it. The second way was to use life such as it is without thinking of the future. And I could not do that. I, like Sakya Muni, could not ride out hunting when I knew that old age, suffering, and death exist. My imagination was too vivid. Nor could I rejoice in the momentary accidents that for an instant threw pleasure to my lot. The third way, having understood that life is evil and stupid, was to end it by killing oneself. I understood that, but somehow still did not kill myself. The fourth way was to live like Solomon and Schopenhauer-knowing that life is a stupid joke played upon us, and still to go on living, washing oneself, dressing, dining, talking, and even writing books. This was to me repulsive and tormenting, but I remained in that position.

I see now that if I did not kill myself it was due to some dim consciousness of the invalidity of my thoughts. However convincing and indubitable appeared to me the sequence of my thoughts and of those of the wise that have brought us to the admission of the senselessness of life, there remained in me a vague doubt of the justice of my conclusion.

It was like this: I, my reason, have acknowledged that life is senseless. If there is nothing higher than reason (and there is not: nothing can prove that there is,','), then reason is the creator of life for me. If reason did not exist there would be for me no life. How can reason deny life when it is the creator of life? Or to put it the other way: were there no life, my reason would not exist; therefore reason is life`s son. Life is all. Reason is its fruit yet reason rejects life itself! I felt that there was something wrong here.

Card image cap

Begin each day by telling yourself:

Today I shall be meeting with interference, ingratitude, insolence, disloyalty, ill-will, and selfishness all of them due to the offenders` ignorance of what is good or evil.

Marcus Aurelius

But for my part I have long perceived the nature of good and its nobility, the nature of evil and its meanness, and also the nature of the culprit himself, who is my brother (not in the physical sense, but as a fellow creature similarly endowed with reason and a share of the divine);therefore none of those things can injure me, for nobody can implicate me in what is degrading.

Neither can I be angry with my brother or fall foul of him; for he and I were born to work together, like a man`s two hands, feet or eyelids, or the upper and lower rows of his teeth.

To obstruct each other is against Nature`s law - and what is irritation or aversion but a form of obstruction.

Consectetur adipiscing elit. Praesent vel tortor facilisis, volutpat nulla placerat, tincidunt mi.

Nullam vel orci dui. Su spendisse sit amet laoreet neque. Fusce sagittis suscipit sem a consequat. Proin nec interdum sem.

Quisque in porttitor magna, a imperdiet est. Donec accumsan justo nulla, sit amet varius urna laoreet vitae. Maecenas feugiat fringilla metus.

Nullam vel orci dui. Su spendisse sit amet laoreet neque. Fusce sagittis suscipit sem a consequat. Proin nec interdum sem.

Quisque in porttitor magna, a imperdiet est. Donec accumsan justo nulla, sit amet varius urna laoreet vitae. Maecenas feugiat fringilla metus.

  1. (
  2. [0] => menu.48ac5d25ab7fb8065a03b2a19458089a
  3. [1] => menu.48ac5d25ab7fb8065a03b2a19458089a_expire
  4. [2] => menu.94598630b740ec08860f5f0e9483c030
  5. [3] => menu.94598630b740ec08860f5f0e9483c030_expire
  6. [4] => posts.90cf0d166863c2321af16c08dc566ab7
  7. [5] => posts.90cf0d166863c2321af16c08dc566ab7_expire
  8. [6] => posts.d94e88b79394c4004b5322416beadb1c
  9. [7] => posts.d94e88b79394c4004b5322416beadb1c_expire
  10. [8] => comments.15fa890ce6343d7f41567c41e0e6635d
  11. [9] => comments.15fa890ce6343d7f41567c41e0e6635d_expire
  12. [10] => content\categories.c5f09ba3257d23587936d87ea55124da
  13. [11] => content\categories.c5f09ba3257d23587936d87ea55124da_expire
  14. [12] => content\categories.21b383783637152eb488559a25b8eefa
  15. [13] => content\categories.21b383783637152eb488559a25b8eefa_expire
  16. [14] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  17. [15] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  18. [16] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  19. [17] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  20. )
  21. [27-May-2026 03:05:26 PRC] error:CACHE max retry reached for ecomdemo.micodetest.com/cat/software
  22. c5f09ba3257d23587936d87ea55124da
  23. [11] => content\categories.c5f09ba3257d23587936d87ea55124da_expire
  24. [12] => content\categories.21b383783637152eb488559a25b8eefa
  25. [13] => content\categories.21b383783637152eb488559a25b8eefa_expire
  26. [14] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  27. [15] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  28. [16] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  29. [17] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  30. )
  31. [27-May-2026 03:05:22 PRC] error:CACHE max retry reached for ecomdemo.micodetest.com/cat/electronics
  32. [27-May-2026 03:05:22 PRC] wait cache /cat/softwareArray
  33. (
  34. [0] => menu.48ac5d25ab7fb8065a03b2a19458089a
  35. [1] => menu.48ac5d25ab7fb8065a03b2a19458089a_expire
  36. [2] => menu.94598630b740ec08860f5f0e9483c030
  37. [3] => menu.94598630b740ec08860f5f0e9483c030_expire
  38. [4] => posts.90cf0d166863c2321af16c08dc566ab7
  39. [5] => posts.90cf0d166863c2321af16c08dc566ab7_expire
  40. [6] => posts.d94e88b79394c4004b5322416beadb1c
  41. [7] => posts.d94e88b79394c4004b5322416beadb1c_expire
  42. [8] => comments.15fa890ce6343d7f41567c41e0e6635d
  43. [9] => comments.15fa890ce6343d7f41567c41e0e6635d_expire
  44. [10] => content\categories.c5f09ba3257d23587936d87ea55124da
  45. [11] => content\categories.c5f09ba3257d23587936d87ea55124da_expire
  46. [12] => content\categories.21b383783637152eb488559a25b8eefa
  47. [13] => content\categories.21b383783637152eb488559a25b8eefa_expire
  48. [14] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  49. [15] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  50. [16] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  51. [17] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  52. )
  53. [27-May-2026 03:05:24 PRC] wait cache /cat/softwareArray
  54. (
  55. [0] => menu.48ac5d25ab7fb8065a03b2a19458089a
  56. [1] => menu.48ac5d25ab7fb8065a03b2a19458089a_expire
  57. [2] => menu.94598630b740ec08860f5f0e9483c030
  58. [3] => menu.94598630b740ec08860f5f0e9483c030_expire
  59. [4] => posts.90cf0d166863c2321af16c08dc566ab7
  60. [5] => posts.90cf0d166863c2321af16c08dc566ab7_expire
  61. [6] => posts.d94e88b79394c4004b5322416beadb1c
  62. [7] => posts.d94e88b79394c4004b5322416beadb1c_expire
  63. [8] => comments.15fa890ce6343d7f41567c41e0e6635d
  64. [9] => comments.15fa890ce6343d7f41567c41e0e6635d_expire
  65. [10] => content\categories.c5f09ba3257d23587936d87ea55124da
  66. [11] => content\categories.c5f09ba3257d23587936d87ea55124da_expire
  67. [12] => content\categories.21b383783637152eb488559a25b8eefa
  68. [13] => content\categories.21b383783637152eb488559a25b8eefa_expire
  69. [14] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  70. [15] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  71. [16] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  72. [17] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  73. )
  74. [27-May-2026 03:05:25 PRC] wait cache /cat/softwareArray
  75. (
  76. [0] => menu.48ac5d25ab7fb8065a03b2a19458089a
  77. [1] => menu.48ac5d25ab7fb8065a03b2a19458089a_expire
  78. [2] => menu.94598630b740ec08860f5f0e9483c030
  79. [3] => menu.94598630b740ec08860f5f0e9483c030_expire
  80. [4] => posts.90cf0d166863c2321af16c08dc566ab7
  81. [5] => posts.90cf0d166863c2321af16c08dc566ab7_expire
  82. [6] => posts.d94e88b79394c4004b5322416beadb1c
  83. [7] => posts.d94e88b79394c4004b5322416beadb1c_expire
  84. [8] => comments.15fa890ce6343d7f41567c41e0e6635d
  85. [9] => comments.15fa890ce6343d7f41567c41e0e6635d_expire
  86. [10] => content\categories.c5f09ba3257d23587936d87ea55124da
  87. [11] => content\categories.c5f09ba3257d23587936d87ea55124da_expire
  88. [12] => content\categories.21b383783637152eb488559a25b8eefa
  89. [13] => content\categories.21b383783637152eb488559a25b8eefa_expire
  90. [14] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  91. [15] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  92. [16] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea
  93. [17] => content\archives.7dd3ad53d7acb600b6cc89c01126d6ea_expire
  94. )
  95. [27-May-2026 03:05:26 PRC] error:CACHE max retry reached for ecomdemo.micodetest.com/cat/software
    1. SELECT namespace, `key`, value FROM setting AS _ WHERE 1 = 1 AND _.site_id = :site_id AND _.namespace = :namespace AND _.`key` IN (:key)
      1. insert-scripts
        1. header
        2. footer
      2. 1
      3. SELECT namespace, `key`, value FROM setting AS _ WHERE 1 = 1 AND _.site_id = 1 AND _.namespace = 'insert-scripts' AND _.`key` IN ('header','footer')
    1. SELECT pd.*,post.*,ad.username,ad.display_name,ad.admin_id,ad.email, ad.avatar, ad.bio, ad.first_name, ad.last_name ,(SELECT COUNT(c.comment_id) FROM comment c WHERE post.post_id = c.post_id AND c.status = :comment_status ) AS comment_count ,(SELECT JSON_ARRAYAGG( JSON_OBJECT('taxonomy_item_id', taxonomies.taxonomy_item_id, 'name' , td.name, 'slug' , td.slug) ) FROM taxonomy_item AS taxonomies INNER JOIN taxonomy_to_site t2s ON (taxonomies.taxonomy_item_id = t2s.taxonomy_item_id AND t2s.site_id = site_id) INNER JOIN taxonomy_item_content td ON (taxonomies.taxonomy_item_id = td.taxonomy_item_id AND td.language_id = :language_id) INNER JOIN taxonomy t ON (taxonomies.taxonomy_id = t.taxonomy_id) LEFT JOIN post_to_taxonomy_item pt ON (taxonomies.taxonomy_item_id = pt.taxonomy_item_id) WHERE td.language_id = :language_id AND t2s.site_id = :site_id AND pt.post_id = post.post_id AND t.type = "categories" AND pt.post_id = post.post_id LIMIT :categories ) as categories ,(SELECT JSON_ARRAYAGG( JSON_OBJECT('taxonomy_item_id', taxonomies.taxonomy_item_id, 'name' , td.name, 'slug' , td.slug) ) FROM taxonomy_item AS taxonomies INNER JOIN taxonomy_to_site t2s ON (taxonomies.taxonomy_item_id = t2s.taxonomy_item_id AND t2s.site_id = site_id) INNER JOIN taxonomy_item_content td ON (taxonomies.taxonomy_item_id = td.taxonomy_item_id AND td.language_id = :language_id) INNER JOIN taxonomy t ON (taxonomies.taxonomy_id = t.taxonomy_id) LEFT JOIN post_to_taxonomy_item pt ON (taxonomies.taxonomy_item_id = pt.taxonomy_item_id) WHERE td.language_id = :language_id AND t2s.site_id = :site_id AND pt.post_id = post.post_id AND t.type = "tags" AND pt.post_id = post.post_id LIMIT :tags ) as tags FROM post LEFT JOIN post_content pd ON ( post.post_id = pd.post_id AND pd.l
      1. 4
      2. 1
      3. 1
      4. 1
      5. en_US
      6. en_US
      7. 1
      8. 1
      9. 2
        1. autocomplete
        2. post
        3. 4
        4. post_id
        5. desc
        6. publish
        7. 200
        8. 1
        9. 1
        10. 1
        11. large
        12. 3
        13. 5
        14. SELECT pd.*,post.*,ad.username,ad.display_name,ad.admin_id,ad.email, ad.avatar, ad.bio, ad.first_name, ad.last_name ,(SELECT COUNT(c.comment_id) FROM comment c WHERE post.post_id = c.post_id AND c.status = 1 ) AS comment_count ,(SELECT JSON_ARRAYAGG( JSON_OBJECT('taxonomy_item_id', taxonomies.taxonomy_item_id, 'name' , td.name, 'slug' , td.slug) ) FROM taxonomy_item AS taxonomies INNER JOIN taxonomy_to_site t2s ON (taxonomies.taxonomy_item_id = t2s.taxonomy_item_id AND t2s.site_id = site_id) INNER JOIN taxonomy_item_content td ON (taxonomies.taxonomy_item_id = td.taxonomy_item_id AND td.language_id = 1) INNER JOIN taxonomy t ON (taxonomies.taxonomy_id = t.taxonomy_id) LEFT JOIN post_to_taxonomy_item pt ON (taxonomies.taxonomy_item_id = pt.taxonomy_item_id) WHERE td.language_id = 1 AND t2s.site_id = 1 AND pt.post_id = post.post_id AND t.type = "categories" AND pt.post_id = post.post_id LIMIT 3 ) as categories ,(SELECT JSON_ARRAYAGG( JSON_OBJECT('taxonomy_item_id', taxonomies.taxonomy_item_id, 'name' , td.name, 'slug' , td.slug) ) FROM taxonomy_item AS taxonomies INNER JOIN taxonomy_to_site t2s ON (taxonomies.taxonomy_item_id = t2s.taxonomy_item_id AND t2s.site_id = site_id) INNER JOIN taxonomy_item_content td ON (taxonomies.taxonomy_item_id = td.taxonomy_item_id AND td.language_id = 1) INNER JOIN taxonomy t ON (taxonomies.taxonomy_id = t.taxonomy_id) LEFT JOIN post_to_taxonomy_item pt ON (taxonomies.taxonomy_item_id = pt.taxonomy_item_id) WHERE td.language_id = 1 AND t2s.site_id = 1 AND pt.post_id = post.post_id AND t.type = "tags" AND pt.post_id = post.post_id LIMIT 5 ) as tags FROM post LEFT JOIN post_content pd ON ( post.post_id = pd.post_id AND pd.language_id = 1 ) LEFT JOIN post_to_site ps ON (post.post_id = ps.post_id
      1. SELECT count(*) FROM ( SELECT post.post_id FROM post LEFT JOIN post_content pd ON ( post.post_id = pd.post_id AND pd.language_id = :language_id ) LEFT JOIN post_to_site ps ON (post.post_id = ps.post_id) LEFT JOIN admin ad ON (post.admin_id = ad.admin_id) WHERE 1 = 1 AND post.type = :type AND post.status = :status AND ps.site_id = :site_id ORDER BY post.post_id desc ) as count
        1. 4
        2. 1
        3. 1
        4. 1
        5. en_US
        6. en_US
        7. 1
        8. 1
        9. 2
          1. autocomplete
          2. post
          3. 4
          4. post_id
          5. desc
          6. publish
          7. 200
          8. 1
          9. 1
          10. 1
          11. large
          12. 3
          13. 5
          14. SELECT count(*) FROM ( SELECT post.post_id FROM post LEFT JOIN post_content pd ON ( post.post_id = pd.post_id AND pd.language_id = 1 ) LEFT JOIN post_to_site ps ON (post.post_id = ps.post_id) LEFT JOIN admin ad ON (post.admin_id = ad.admin_id) WHERE 1 = 1 AND post.type = 'post' AND post.status = 'publish' AND ps.site_id = 1 ORDER BY post.post_id desc ) as count
        1. SELECT user.username, user.email, user.first_name, user.last_name, user.display_name, user.avatar, user.bio, user.subscribe, comment.*, comment_id as array_key ,post_content.name, post_content.slug FROM comment LEFT JOIN user ON (user.user_id = comment.user_id) LEFT JOIN post_content ON (post_content.post_id = comment.post_id) WHERE 1 = 1 AND post_content.language_id = :language_id AND comment.status = :status ORDER BY parent_id, comment_id DESC LIMIT :start, :limit
          1. 1
          2. 1
          3. 1
          4. en_US
          5. en_US
          6. 1
          7. 1
          8. true
          9. 1
          10. 4
          11. desc
          12. SELECT user.username, user.email, user.first_name, user.last_name, user.display_name, user.avatar, user.bio, user.subscribe, comment.*, comment_id as array_key ,post_content.name, post_content.slug FROM comment LEFT JOIN user ON (user.user_id = comment.user_id) LEFT JOIN post_content ON (post_content.post_id = comment.post_id) WHERE 1 = 1 AND post_content.language_id = 1 AND comment.status = 1 ORDER BY parent_id, comment_id DESC LIMIT 0, 4
        1. SELECT count(*) FROM ( SELECT comment_id FROM comment LEFT JOIN user ON (user.user_id = comment.user_id) LEFT JOIN post_content ON (post_content.post_id = comment.post_id) WHERE 1 = 1 AND post_content.language_id = :language_id AND comment.status = :status ORDER BY parent_id, comment_id DESC ) as count
          1. 1
          2. 1
          3. 1
          4. en_US
          5. en_US
          6. 1
          7. 1
          8. true
          9. 1
          10. 4
          11. desc
          12. SELECT count(*) FROM ( SELECT comment_id FROM comment LEFT JOIN user ON (user.user_id = comment.user_id) LEFT JOIN post_content ON (post_content.post_id = comment.post_id) WHERE 1 = 1 AND post_content.language_id = 1 AND comment.status = 1 ORDER BY parent_id, comment_id DESC ) as count
        1. SELECT namespace, `key`, value FROM setting AS _ WHERE 1 = 1 AND _.site_id = :site_id AND _.namespace = :namespace AND _.`key` IN (:key)
          1. dicebear
            1. url
            2. size
            3. style
            4. flip
          2. 1
          3. SELECT namespace, `key`, value FROM setting AS _ WHERE 1 = 1 AND _.site_id = 1 AND _.namespace = 'dicebear' AND _.`key` IN ('url','size','style','flip')
        1. SELECT namespace, `key`, value FROM setting AS _ WHERE 1 = 1 AND _.site_id = :site_id AND _.namespace = :namespace AND _.`key` IN (:key)
          1. gravatar
            1. size
            2. rating
            3. default
          2. 1
          3. SELECT namespace, `key`, value FROM setting AS _ WHERE 1 = 1 AND _.site_id = 1 AND _.namespace = 'gravatar' AND _.`key` IN ('size','rating','default')
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/cdn/plugin.php [line: 75 - 83] */
              function ($publicPath, $type, $image, $size){
              			$publicPath = $options['url'];
              			$publicPath = str_replace(
              				['%host%', '%type%', '%image%', '%size%'],
              				[$_SERVER['HTTP_HOST'], $type, $image, $size],
              				$publicPath);
              
              			return [$publicPath, $type, $image, $size];
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/theme-market/plugin.php [line: 107 - 113] */
              function ($image, $type, $size){
              			if ($type == 'product') {
              				$image = str_replace('/media/', '', $image);
              			}
              
              			return [$image, $type, $size];
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/debug/plugin.php [line: 124 - 129] */
              function ($sql, $params){
              			$debugSql = $db->debugSql($sql, $params);
              			$this->view->debug['data']['sql'][] = [$sql, $params + ['sql' => $debugSql]];
              
              			return [$sql, $params];
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/debug/plugin.php [line: 167 - 180] */
              function (){
              			$events = Event::getEvents();
              
              			array_walk_recursive($events, function (&$value, $key) {
              				if (is_object($value)) {
              					if ($value instanceof \Closure) {
              						$value = $this->closureDump($value);
              					}
              				}
              			});
              
              			$this->view->debug['data']['filters'] = $events;
              			$this->view->debug['data']['request'] = Routes::getUrlData();
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/theme-market/plugin.php [line: 90 - 99] */
              function ($template, $htmlFile, $tplFile, $vTpl, $view){
              			// add captcha js and field to page
              			//if ($url = Routes::getUrlData()) {
              			//if (in_array($url['module'], $routes)) {
              			$vTpl->loadTemplateFile(__DIR__ . '/app/template/common.tpl');
              			//}
              			//}
              
              			return [$template, $htmlFile, $tplFile, $vTpl, $view];
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/dicebear/plugin.php [line: 61 - 94] */
              function ($comments){
              			$options = \Vvveb\getSetting('dicebear', ['url', 'size', 'style', 'flip']);
              
              			$commentType = false;
              
              			foreach ($types as $type) {
              				if (isset($comments[$type])) {
              					$commentType = $type;
              
              					break;
              				}
              			}
              
              			if ($commentType) {
              				foreach ($comments[$commentType] as &$comment) {
              					if ((! isset($comment['avatar']) || ! $comment['avatar']) &&
              						(isset($comment['email']) || ! $comment['email'])) {
              						$comment['avatar'] = $this->getDiceBear(
              								$comment['email'],
              								$options['url'] ?? DICEBAR_URL,
              								$options['size'] ?? 60,
              								$options['style'] ?? 'fun-emoji',
              								$options['flip'] ?? 'false'
              							);
              					}
              
              					if (isset($options['size'])) {
              						$comment['size'] = $options['size'];
              					}
              				}
              			}
              
              			return [$comments];
              		};
              
            2. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/gravatar/plugin.php [line: 61 - 88] */
              function ($comments){
              			$options = \Vvveb\getSetting('gravatar', ['size', 'rating', 'default']);
              
              			$commentType = false;
              
              			foreach ($types as $type) {
              				if (isset($comments[$type])) {
              					$commentType = $type;
              
              					break;
              				}
              			}
              
              			if ($commentType) {
              				foreach ($comments[$commentType] as &$comment) {
              					if (! isset($comment['avatar']) || ! $comment['avatar']) {
              						$comment['avatar'] = $this->getGravatar(
              								$comment['email'],
              								$options['size'] ?? 60,
              								$options['default'] ?? 'mm',
              								$options['rating'] ?? 'g'
              							);
              					}
              				}
              			}
              
              			return [$comments];
              		};
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/dicebear/plugin.php [line: 61 - 94] */
              function ($comments){
              			$options = \Vvveb\getSetting('dicebear', ['url', 'size', 'style', 'flip']);
              
              			$commentType = false;
              
              			foreach ($types as $type) {
              				if (isset($comments[$type])) {
              					$commentType = $type;
              
              					break;
              				}
              			}
              
              			if ($commentType) {
              				foreach ($comments[$commentType] as &$comment) {
              					if ((! isset($comment['avatar']) || ! $comment['avatar']) &&
              						(isset($comment['email']) || ! $comment['email'])) {
              						$comment['avatar'] = $this->getDiceBear(
              								$comment['email'],
              								$options['url'] ?? DICEBAR_URL,
              								$options['size'] ?? 60,
              								$options['style'] ?? 'fun-emoji',
              								$options['flip'] ?? 'false'
              							);
              					}
              
              					if (isset($options['size'])) {
              						$comment['size'] = $options['size'];
              					}
              				}
              			}
              
              			return [$comments];
              		};
              
            2. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/gravatar/plugin.php [line: 61 - 88] */
              function ($comments){
              			$options = \Vvveb\getSetting('gravatar', ['size', 'rating', 'default']);
              
              			$commentType = false;
              
              			foreach ($types as $type) {
              				if (isset($comments[$type])) {
              					$commentType = $type;
              
              					break;
              				}
              			}
              
              			if ($commentType) {
              				foreach ($comments[$commentType] as &$comment) {
              					if (! isset($comment['avatar']) || ! $comment['avatar']) {
              						$comment['avatar'] = $this->getGravatar(
              								$comment['email'],
              								$options['size'] ?? 60,
              								$options['default'] ?? 'mm',
              								$options['rating'] ?? 'g'
              							);
              					}
              				}
              			}
              
              			return [$comments];
              		};
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/dicebear/plugin.php [line: 61 - 94] */
              function ($comments){
              			$options = \Vvveb\getSetting('dicebear', ['url', 'size', 'style', 'flip']);
              
              			$commentType = false;
              
              			foreach ($types as $type) {
              				if (isset($comments[$type])) {
              					$commentType = $type;
              
              					break;
              				}
              			}
              
              			if ($commentType) {
              				foreach ($comments[$commentType] as &$comment) {
              					if ((! isset($comment['avatar']) || ! $comment['avatar']) &&
              						(isset($comment['email']) || ! $comment['email'])) {
              						$comment['avatar'] = $this->getDiceBear(
              								$comment['email'],
              								$options['url'] ?? DICEBAR_URL,
              								$options['size'] ?? 60,
              								$options['style'] ?? 'fun-emoji',
              								$options['flip'] ?? 'false'
              							);
              					}
              
              					if (isset($options['size'])) {
              						$comment['size'] = $options['size'];
              					}
              				}
              			}
              
              			return [$comments];
              		};
              
            2. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/gravatar/plugin.php [line: 61 - 88] */
              function ($comments){
              			$options = \Vvveb\getSetting('gravatar', ['size', 'rating', 'default']);
              
              			$commentType = false;
              
              			foreach ($types as $type) {
              				if (isset($comments[$type])) {
              					$commentType = $type;
              
              					break;
              				}
              			}
              
              			if ($commentType) {
              				foreach ($comments[$commentType] as &$comment) {
              					if (! isset($comment['avatar']) || ! $comment['avatar']) {
              						$comment['avatar'] = $this->getGravatar(
              								$comment['email'],
              								$options['size'] ?? 60,
              								$options['default'] ?? 'mm',
              								$options['rating'] ?? 'g'
              							);
              					}
              				}
              			}
              
              			return [$comments];
              		};
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/shipping/plugin.php [line: 79 - 89] */
              function ($site){
              			$request = Request::getInstance();
              			$route = $request->get['route'] ?? '';
              			$module = $request->get['module'] ?? '';
              
              			if ($route == '/checkout' || $module == 'checkout/checkout/index') {
              				$this->init();
              			}
              
              			return [$site];
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/theme-market/plugin.php [line: 116 - 120] */
              function ($options){
              			$options['type'] = 'theme';
              
              			return [$options];
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/theme-market/plugin.php [line: 123 - 131] */
              function ($results){
              			if (isset($results['product'])) {
              				foreach ($results['product'] as &$product) {
              					$product['download_link'] = PUBLIC_PATH . 'market/themes/' . $product['slug'] . '.zip';
              				}
              			}
              
              			return [$results];
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/theme-market/plugin.php [line: 134 - 140] */
              function ($results){
              			if ($results) {
              				$results['download_link'] = PUBLIC_PATH . 'market/themes/' . $results['slug'] . '.zip';
              			}
              
              			return [$results];
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/toc-posts/plugin.php [line: 174 - 180] */
              function ($results = false){
              			if ($results && isset($results['content'])) {
              				$this->toc($results);
              			}
              
              			return [$results];
              		});
              
            1. /* /www/wwwroot/ecomdemo.micodetest.com/plugins/toc-posts/plugin.php [line: 182 - 188] */
              function ($results = false){
              			if ($results && isset($results[0])) {
              				$this->toc($results[0]);
              			}
              
              			return [$results];
              		});
              
      1. 2
      2. /blog/#page#
      3. content
      4. \/blog\/(?\d+)