diff --git a/app/controllers/questionnaire.php b/app/controllers/questionnaire.php
index 4016b9dd04e5602369e28406c2ac550fd73cdf39..94e4d049ba8033d0f4bd5b682b99b1a56c527fdc 100644
--- a/app/controllers/questionnaire.php
+++ b/app/controllers/questionnaire.php
@@ -1,7 +1,5 @@
 <?php
 
-require_once 'lib/classes/QuestionType.interface.php';
-
 class QuestionnaireController extends AuthenticatedController
 {
     protected $allow_nobody = true; //nobody is allowed
diff --git a/composer.json b/composer.json
index 218f448a596268d410ea5920d98e18f020bbb5e6..56db8e1b7a72863ba6377c78ebe242c82cc80523 100644
--- a/composer.json
+++ b/composer.json
@@ -7,6 +7,65 @@
             "php": "8.1"
         }
     },
+    "autoload": {
+        "psr-4": {
+            "exTpl\\": "lib/exTpl/",
+            "Flexi\\": "lib/flexi/",
+            "Studip\\Activity\\": "lib/activities/",
+            "Studip\\Cache\\": "lib/classes/cache/",
+            "Studip\\Calendar\\": "lib/classes/calendar/",
+            "Studip\\": "lib/classes/",
+            "Trails\\": "lib/trails/",
+            "": [
+                "lib/calendar/",
+                "lib/calendar/lib/",
+                "lib/classes/",
+                "lib/classes/admission/",
+                "lib/classes/admission/userfilter/",
+                "lib/classes/auth_plugins/",
+                "lib/classes/calendar/",
+                "lib/classes/coursewizardsteps/",
+                "lib/classes/exportdocument/",
+                "lib/classes/forms/",
+                "lib/classes/globalsearch/",
+                "lib/classes/helpbar/",
+                "lib/classes/librarysearch/",
+                "lib/classes/librarysearch/resultparsers/",
+                "lib/classes/librarysearch/searchmodules/",
+                "lib/classes/searchtypes/",
+                "lib/classes/sidebar/",
+                "lib/classes/visibility/",
+                "lib/classes/wiki/",
+                "lib/elearning/",
+                "lib/exTpl', 'exTpl/",
+                "lib/exceptions/",
+                "lib/exceptions/resources/",
+                "lib/extern/",
+                "lib/filesystem/",
+                "lib/ilias_interface",
+                "lib/migrations/",
+                "lib/models/",
+                "lib/models/calendar/",
+                "lib/models/resources/",
+                "lib/modules/",
+                "lib/navigation/",
+                "lib/phplib/",
+                "lib/plugins/core/",
+                "lib/plugins/db/",
+                "lib/plugins/engine/",
+                "lib/raumzeit/",
+                "lib/resources/"
+            ]
+        },
+        "classmap": [
+            "lib/phplib/email_validation.php",
+            "lib/messaging.inc.php",
+            "lib/plugins/core/StudIPPlugin.php",
+            "app/controllers/module/mvv_controller.php",
+            "vendor/phpass/PasswordHash.php",
+            "composer/phpxmlrpc/phpxmlrpc/lib/xmlrpc.inc"
+        ]
+    },
     "require-dev": {
         "woohoolabs/yang": "3.0.0",
         "codeception/codeception": "5.1.2",
@@ -14,7 +73,8 @@
         "overtrue/phplint": "9.3.0",
         "phpstan/phpstan": "1.11.0",
         "symfony/var-dumper": "6.4.7",
-        "maximebf/debugbar": "1.22.3"
+        "maximebf/debugbar": "1.22.3",
+        "codeception/specify": "^2.0"
     },
     "require": {
         "php": "^8.1",
diff --git a/composer.lock b/composer.lock
index c9814d01e04aa190f52641532249d717c0393efd..e4b114b35fa404ada6ff6065639e60342ee7029f 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
         "This file is @generated automatically"
     ],
-    "content-hash": "be0994b08d5455c5b4d6512e6d019659",
+    "content-hash": "d524d0543302bb6f60235cbdecb3f811",
     "packages": [
         {
             "name": "algo26-matthias/idna-convert",
@@ -196,12 +196,12 @@
             "source": {
                 "type": "git",
                 "url": "https://github.com/edu-sharing/php-auth-plugin.git",
-                "reference": "4dc40c400afea63bd75ddd5ad4cea8033e477e72"
+                "reference": "d0384dce4023449220052d1b648bb1b41babd3d0"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/edu-sharing/php-auth-plugin/zipball/4dc40c400afea63bd75ddd5ad4cea8033e477e72",
-                "reference": "4dc40c400afea63bd75ddd5ad4cea8033e477e72",
+                "url": "https://api.github.com/repos/edu-sharing/php-auth-plugin/zipball/d0384dce4023449220052d1b648bb1b41babd3d0",
+                "reference": "d0384dce4023449220052d1b648bb1b41babd3d0",
                 "shasum": ""
             },
             "require": {
@@ -235,7 +235,7 @@
                 "issues": "https://github.com/edu-sharing/php-auth-plugin/issues",
                 "source": "https://github.com/edu-sharing/php-auth-plugin/tree/8.0"
             },
-            "time": "2024-04-02T10:02:58+00:00"
+            "time": "2024-06-03T10:59:11+00:00"
         },
         {
             "name": "ezyang/htmlpurifier",
@@ -1066,16 +1066,16 @@
         },
         {
             "name": "lcobucci/jwt",
-            "version": "5.2.0",
+            "version": "5.3.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/lcobucci/jwt.git",
-                "reference": "0ba88aed12c04bd2ed9924f500673f32b67a6211"
+                "reference": "08071d8d2c7f4b00222cc4b1fb6aa46990a80f83"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/lcobucci/jwt/zipball/0ba88aed12c04bd2ed9924f500673f32b67a6211",
-                "reference": "0ba88aed12c04bd2ed9924f500673f32b67a6211",
+                "url": "https://api.github.com/repos/lcobucci/jwt/zipball/08071d8d2c7f4b00222cc4b1fb6aa46990a80f83",
+                "reference": "08071d8d2c7f4b00222cc4b1fb6aa46990a80f83",
                 "shasum": ""
             },
             "require": {
@@ -1123,7 +1123,7 @@
             ],
             "support": {
                 "issues": "https://github.com/lcobucci/jwt/issues",
-                "source": "https://github.com/lcobucci/jwt/tree/5.2.0"
+                "source": "https://github.com/lcobucci/jwt/tree/5.3.0"
             },
             "funding": [
                 {
@@ -1135,7 +1135,7 @@
                     "type": "patreon"
                 }
             ],
-            "time": "2023-11-20T21:17:42+00:00"
+            "time": "2024-04-11T23:07:54+00:00"
         },
         {
             "name": "league/event",
@@ -1455,29 +1455,35 @@
         },
         {
             "name": "maennchen/zipstream-php",
-            "version": "2.1.0",
+            "version": "3.1.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/maennchen/ZipStream-PHP.git",
-                "reference": "c4c5803cc1f93df3d2448478ef79394a5981cc58"
+                "reference": "b8174494eda667f7d13876b4a7bfef0f62a7c0d1"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/c4c5803cc1f93df3d2448478ef79394a5981cc58",
-                "reference": "c4c5803cc1f93df3d2448478ef79394a5981cc58",
+                "url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/b8174494eda667f7d13876b4a7bfef0f62a7c0d1",
+                "reference": "b8174494eda667f7d13876b4a7bfef0f62a7c0d1",
                 "shasum": ""
             },
             "require": {
-                "myclabs/php-enum": "^1.5",
-                "php": ">= 7.1",
-                "psr/http-message": "^1.0",
-                "symfony/polyfill-mbstring": "^1.0"
+                "ext-mbstring": "*",
+                "ext-zlib": "*",
+                "php-64bit": "^8.1"
             },
             "require-dev": {
                 "ext-zip": "*",
-                "guzzlehttp/guzzle": ">= 6.3",
+                "friendsofphp/php-cs-fixer": "^3.16",
+                "guzzlehttp/guzzle": "^7.5",
                 "mikey179/vfsstream": "^1.6",
-                "phpunit/phpunit": ">= 7.5"
+                "php-coveralls/php-coveralls": "^2.5",
+                "phpunit/phpunit": "^10.0",
+                "vimeo/psalm": "^5.0"
+            },
+            "suggest": {
+                "guzzlehttp/psr7": "^2.4",
+                "psr/http-message": "^2.0"
             },
             "type": "library",
             "autoload": {
@@ -1514,7 +1520,7 @@
             ],
             "support": {
                 "issues": "https://github.com/maennchen/ZipStream-PHP/issues",
-                "source": "https://github.com/maennchen/ZipStream-PHP/tree/2.1.0"
+                "source": "https://github.com/maennchen/ZipStream-PHP/tree/3.1.0"
             },
             "funding": [
                 {
@@ -1526,7 +1532,7 @@
                     "type": "open_collective"
                 }
             ],
-            "time": "2020-05-30T13:11:16+00:00"
+            "time": "2023-06-21T14:59:35+00:00"
         },
         {
             "name": "markbaker/complex",
@@ -1637,16 +1643,16 @@
         },
         {
             "name": "monolog/monolog",
-            "version": "2.9.1",
+            "version": "2.9.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/Seldaek/monolog.git",
-                "reference": "f259e2b15fb95494c83f52d3caad003bbf5ffaa1"
+                "reference": "a30bfe2e142720dfa990d0a7e573997f5d884215"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/Seldaek/monolog/zipball/f259e2b15fb95494c83f52d3caad003bbf5ffaa1",
-                "reference": "f259e2b15fb95494c83f52d3caad003bbf5ffaa1",
+                "url": "https://api.github.com/repos/Seldaek/monolog/zipball/a30bfe2e142720dfa990d0a7e573997f5d884215",
+                "reference": "a30bfe2e142720dfa990d0a7e573997f5d884215",
                 "shasum": ""
             },
             "require": {
@@ -1667,8 +1673,8 @@
                 "mongodb/mongodb": "^1.8",
                 "php-amqplib/php-amqplib": "~2.4 || ^3",
                 "phpspec/prophecy": "^1.15",
-                "phpstan/phpstan": "^0.12.91",
-                "phpunit/phpunit": "^8.5.14",
+                "phpstan/phpstan": "^1.10",
+                "phpunit/phpunit": "^8.5.38 || ^9.6.19",
                 "predis/predis": "^1.1 || ^2.0",
                 "rollbar/rollbar": "^1.3 || ^2 || ^3",
                 "ruflin/elastica": "^7",
@@ -1723,7 +1729,7 @@
             ],
             "support": {
                 "issues": "https://github.com/Seldaek/monolog/issues",
-                "source": "https://github.com/Seldaek/monolog/tree/2.9.1"
+                "source": "https://github.com/Seldaek/monolog/tree/2.9.3"
             },
             "funding": [
                 {
@@ -1735,94 +1741,33 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-02-06T13:44:46+00:00"
-        },
-        {
-            "name": "myclabs/php-enum",
-            "version": "1.7.7",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/myclabs/php-enum.git",
-                "reference": "d178027d1e679832db9f38248fcc7200647dc2b7"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/myclabs/php-enum/zipball/d178027d1e679832db9f38248fcc7200647dc2b7",
-                "reference": "d178027d1e679832db9f38248fcc7200647dc2b7",
-                "shasum": ""
-            },
-            "require": {
-                "ext-json": "*",
-                "php": ">=7.1"
-            },
-            "require-dev": {
-                "phpunit/phpunit": "^7",
-                "squizlabs/php_codesniffer": "1.*",
-                "vimeo/psalm": "^3.8"
-            },
-            "type": "library",
-            "autoload": {
-                "psr-4": {
-                    "MyCLabs\\Enum\\": "src/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "PHP Enum contributors",
-                    "homepage": "https://github.com/myclabs/php-enum/graphs/contributors"
-                }
-            ],
-            "description": "PHP Enum implementation",
-            "homepage": "http://github.com/myclabs/php-enum",
-            "keywords": [
-                "enum"
-            ],
-            "support": {
-                "issues": "https://github.com/myclabs/php-enum/issues",
-                "source": "https://github.com/myclabs/php-enum/tree/1.7.7"
-            },
-            "funding": [
-                {
-                    "url": "https://github.com/mnapoli",
-                    "type": "github"
-                },
-                {
-                    "url": "https://tidelift.com/funding/github/packagist/myclabs/php-enum",
-                    "type": "tidelift"
-                }
-            ],
-            "time": "2020-11-14T18:14:52+00:00"
+            "time": "2024-04-12T20:52:51+00:00"
         },
         {
             "name": "neomerx/cors-psr7",
-            "version": "v2.0.2",
+            "version": "3.0.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/neomerx/cors-psr7.git",
-                "reference": "454e923aaf9ba4aa162f7aca2a514e41708b6ba5"
+                "reference": "515d7fdb60b9d475da70029d4e5662beaae1875f"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/neomerx/cors-psr7/zipball/454e923aaf9ba4aa162f7aca2a514e41708b6ba5",
-                "reference": "454e923aaf9ba4aa162f7aca2a514e41708b6ba5",
+                "url": "https://api.github.com/repos/neomerx/cors-psr7/zipball/515d7fdb60b9d475da70029d4e5662beaae1875f",
+                "reference": "515d7fdb60b9d475da70029d4e5662beaae1875f",
                 "shasum": ""
             },
             "require": {
-                "php": ">=7.1.0",
+                "php": ">=8.0.0",
                 "psr/http-message": "^1.0",
-                "psr/log": "^1.0"
+                "psr/log": "^3.0"
             },
             "require-dev": {
-                "friendsofphp/php-cs-fixer": "^2.14",
+                "friendsofphp/php-cs-fixer": "^3.11",
                 "mockery/mockery": "^1.0",
-                "phpmd/phpmd": "^2.6",
-                "phpunit/phpunit": "^7.0",
+                "phpunit/phpunit": "^9.2",
                 "scrutinizer/ocular": "^1.4",
-                "squizlabs/php_codesniffer": "^2.9"
+                "squizlabs/php_codesniffer": "^3.0"
             },
             "type": "library",
             "autoload": {
@@ -1854,9 +1799,9 @@
             ],
             "support": {
                 "issues": "https://github.com/neomerx/cors-psr7/issues",
-                "source": "https://github.com/neomerx/cors-psr7/tree/develop"
+                "source": "https://github.com/neomerx/cors-psr7/tree/3.0.2"
             },
-            "time": "2019-02-14T10:35:50+00:00"
+            "time": "2022-11-28T03:29:06+00:00"
         },
         {
             "name": "nikic/fast-route",
@@ -2218,16 +2163,16 @@
         },
         {
             "name": "paragonie/constant_time_encoding",
-            "version": "v2.6.3",
+            "version": "v2.7.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/paragonie/constant_time_encoding.git",
-                "reference": "58c3f47f650c94ec05a151692652a868995d2938"
+                "reference": "52a0d99e69f56b9ec27ace92ba56897fe6993105"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/58c3f47f650c94ec05a151692652a868995d2938",
-                "reference": "58c3f47f650c94ec05a151692652a868995d2938",
+                "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/52a0d99e69f56b9ec27ace92ba56897fe6993105",
+                "reference": "52a0d99e69f56b9ec27ace92ba56897fe6993105",
                 "shasum": ""
             },
             "require": {
@@ -2281,7 +2226,7 @@
                 "issues": "https://github.com/paragonie/constant_time_encoding/issues",
                 "source": "https://github.com/paragonie/constant_time_encoding"
             },
-            "time": "2022-06-14T06:56:20+00:00"
+            "time": "2024-05-08T12:18:48+00:00"
         },
         {
             "name": "paragonie/random_compat",
@@ -2438,24 +2383,26 @@
         },
         {
             "name": "php-di/invoker",
-            "version": "2.0.0",
+            "version": "2.3.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/PHP-DI/Invoker.git",
-                "reference": "540c27c86f663e20fe39a24cd72fa76cdb21d41a"
+                "reference": "33234b32dafa8eb69202f950a1fc92055ed76a86"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/PHP-DI/Invoker/zipball/540c27c86f663e20fe39a24cd72fa76cdb21d41a",
-                "reference": "540c27c86f663e20fe39a24cd72fa76cdb21d41a",
+                "url": "https://api.github.com/repos/PHP-DI/Invoker/zipball/33234b32dafa8eb69202f950a1fc92055ed76a86",
+                "reference": "33234b32dafa8eb69202f950a1fc92055ed76a86",
                 "shasum": ""
             },
             "require": {
-                "psr/container": "~1.0"
+                "php": ">=7.3",
+                "psr/container": "^1.0|^2.0"
             },
             "require-dev": {
                 "athletic/athletic": "~0.1.8",
-                "phpunit/phpunit": "~4.5"
+                "mnapoli/hard-mode": "~0.3.0",
+                "phpunit/phpunit": "^9.0"
             },
             "type": "library",
             "autoload": {
@@ -2479,9 +2426,15 @@
             ],
             "support": {
                 "issues": "https://github.com/PHP-DI/Invoker/issues",
-                "source": "https://github.com/PHP-DI/Invoker/tree/master"
+                "source": "https://github.com/PHP-DI/Invoker/tree/2.3.4"
             },
-            "time": "2017-03-20T19:28:22+00:00"
+            "funding": [
+                {
+                    "url": "https://github.com/mnapoli",
+                    "type": "github"
+                }
+            ],
+            "time": "2023-09-08T09:24:21+00:00"
         },
         {
             "name": "php-di/php-di",
@@ -2899,21 +2852,21 @@
         },
         {
             "name": "phpxmlrpc/extras",
-            "version": "1.0.0-beta2",
+            "version": "1.0.0-beta4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/gggeek/phpxmlrpc-extras.git",
-                "reference": "4bf48852955f7b4698b37ae91cce83c49f658b4c"
+                "reference": "7aedeb5100b0bca4085692a2c626fafb726c73b6"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/gggeek/phpxmlrpc-extras/zipball/4bf48852955f7b4698b37ae91cce83c49f658b4c",
-                "reference": "4bf48852955f7b4698b37ae91cce83c49f658b4c",
+                "url": "https://api.github.com/repos/gggeek/phpxmlrpc-extras/zipball/7aedeb5100b0bca4085692a2c626fafb726c73b6",
+                "reference": "7aedeb5100b0bca4085692a2c626fafb726c73b6",
                 "shasum": ""
             },
             "require": {
-                "php": "^5.3.0 || ^7.0 || ^8.0",
-                "phpxmlrpc/phpxmlrpc": "^4.6.0"
+                "php": "^5.4.0 || ^7.0 || ^8.0",
+                "phpxmlrpc/phpxmlrpc": "^4.10.1"
             },
             "require-dev": {
                 "ext-curl": "*",
@@ -2945,22 +2898,22 @@
             ],
             "support": {
                 "issues": "https://github.com/gggeek/phpxmlrpc-extras/issues",
-                "source": "https://github.com/gggeek/phpxmlrpc-extras/tree/1.0.0-beta2"
+                "source": "https://github.com/gggeek/phpxmlrpc-extras/tree/1.0.0-beta4"
             },
-            "time": "2023-01-19T14:20:38+00:00"
+            "time": "2024-04-16T15:48:39+00:00"
         },
         {
             "name": "phpxmlrpc/phpxmlrpc",
-            "version": "4.10.0",
+            "version": "4.10.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/gggeek/phpxmlrpc.git",
-                "reference": "7103864975ca0b930574cabc8b4593093ee4432e"
+                "reference": "6725f215cd7d7c7d36c1d773aa89902aef2da67c"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/gggeek/phpxmlrpc/zipball/7103864975ca0b930574cabc8b4593093ee4432e",
-                "reference": "7103864975ca0b930574cabc8b4593093ee4432e",
+                "url": "https://api.github.com/repos/gggeek/phpxmlrpc/zipball/6725f215cd7d7c7d36c1d773aa89902aef2da67c",
+                "reference": "6725f215cd7d7c7d36c1d773aa89902aef2da67c",
                 "shasum": ""
             },
             "require": {
@@ -2968,7 +2921,8 @@
                 "php": "^5.4.0 || ^7.0 || ^8.0"
             },
             "conflict": {
-                "phpxmlrpc/extras": "<= 0.6.3"
+                "phpxmlrpc/extras": "<= 1.0.0-beta2",
+                "phpxmlrpc/jsonrpc": "<= 1.0.0-beta1"
             },
             "require-dev": {
                 "ext-curl": "*",
@@ -3004,9 +2958,9 @@
             ],
             "support": {
                 "issues": "https://github.com/gggeek/phpxmlrpc/issues",
-                "source": "https://github.com/gggeek/phpxmlrpc/tree/4.10.0"
+                "source": "https://github.com/gggeek/phpxmlrpc/tree/4.10.3"
             },
-            "time": "2023-02-11T17:10:30+00:00"
+            "time": "2024-04-23T10:50:06+00:00"
         },
         {
             "name": "psr/cache",
@@ -3107,22 +3061,27 @@
         },
         {
             "name": "psr/container",
-            "version": "1.1.2",
+            "version": "2.0.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-fig/container.git",
-                "reference": "513e0666f7216c7459170d56df27dfcefe1689ea"
+                "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea",
-                "reference": "513e0666f7216c7459170d56df27dfcefe1689ea",
+                "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963",
+                "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963",
                 "shasum": ""
             },
             "require": {
                 "php": ">=7.4.0"
             },
             "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "2.0.x-dev"
+                }
+            },
             "autoload": {
                 "psr-4": {
                     "Psr\\Container\\": "src/"
@@ -3149,27 +3108,27 @@
             ],
             "support": {
                 "issues": "https://github.com/php-fig/container/issues",
-                "source": "https://github.com/php-fig/container/tree/1.1.2"
+                "source": "https://github.com/php-fig/container/tree/2.0.2"
             },
-            "time": "2021-11-05T16:50:12+00:00"
+            "time": "2021-11-05T16:47:00+00:00"
         },
         {
             "name": "psr/http-client",
-            "version": "1.0.1",
+            "version": "1.0.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-fig/http-client.git",
-                "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621"
+                "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621",
-                "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621",
+                "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90",
+                "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90",
                 "shasum": ""
             },
             "require": {
                 "php": "^7.0 || ^8.0",
-                "psr/http-message": "^1.0"
+                "psr/http-message": "^1.0 || ^2.0"
             },
             "type": "library",
             "extra": {
@@ -3189,7 +3148,7 @@
             "authors": [
                 {
                     "name": "PHP-FIG",
-                    "homepage": "http://www.php-fig.org/"
+                    "homepage": "https://www.php-fig.org/"
                 }
             ],
             "description": "Common interface for HTTP clients",
@@ -3201,26 +3160,26 @@
                 "psr-18"
             ],
             "support": {
-                "source": "https://github.com/php-fig/http-client/tree/master"
+                "source": "https://github.com/php-fig/http-client"
             },
-            "time": "2020-06-29T06:28:15+00:00"
+            "time": "2023-09-23T14:17:50+00:00"
         },
         {
             "name": "psr/http-factory",
-            "version": "1.0.2",
+            "version": "1.1.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-fig/http-factory.git",
-                "reference": "e616d01114759c4c489f93b099585439f795fe35"
+                "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35",
-                "reference": "e616d01114759c4c489f93b099585439f795fe35",
+                "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a",
+                "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a",
                 "shasum": ""
             },
             "require": {
-                "php": ">=7.0.0",
+                "php": ">=7.1",
                 "psr/http-message": "^1.0 || ^2.0"
             },
             "type": "library",
@@ -3244,7 +3203,7 @@
                     "homepage": "https://www.php-fig.org/"
                 }
             ],
-            "description": "Common interfaces for PSR-7 HTTP message factories",
+            "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories",
             "keywords": [
                 "factory",
                 "http",
@@ -3256,9 +3215,9 @@
                 "response"
             ],
             "support": {
-                "source": "https://github.com/php-fig/http-factory/tree/1.0.2"
+                "source": "https://github.com/php-fig/http-factory"
             },
-            "time": "2023-04-10T20:10:41+00:00"
+            "time": "2024-04-15T12:06:14+00:00"
         },
         {
             "name": "psr/http-message",
@@ -3315,21 +3274,21 @@
         },
         {
             "name": "psr/http-server-handler",
-            "version": "1.0.1",
+            "version": "1.0.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-fig/http-server-handler.git",
-                "reference": "aff2f80e33b7f026ec96bb42f63242dc50ffcae7"
+                "reference": "84c4fb66179be4caaf8e97bd239203245302e7d4"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-fig/http-server-handler/zipball/aff2f80e33b7f026ec96bb42f63242dc50ffcae7",
-                "reference": "aff2f80e33b7f026ec96bb42f63242dc50ffcae7",
+                "url": "https://api.github.com/repos/php-fig/http-server-handler/zipball/84c4fb66179be4caaf8e97bd239203245302e7d4",
+                "reference": "84c4fb66179be4caaf8e97bd239203245302e7d4",
                 "shasum": ""
             },
             "require": {
                 "php": ">=7.0",
-                "psr/http-message": "^1.0"
+                "psr/http-message": "^1.0 || ^2.0"
             },
             "type": "library",
             "extra": {
@@ -3349,7 +3308,7 @@
             "authors": [
                 {
                     "name": "PHP-FIG",
-                    "homepage": "http://www.php-fig.org/"
+                    "homepage": "https://www.php-fig.org/"
                 }
             ],
             "description": "Common interface for HTTP server-side request handler",
@@ -3365,28 +3324,27 @@
                 "server"
             ],
             "support": {
-                "issues": "https://github.com/php-fig/http-server-handler/issues",
-                "source": "https://github.com/php-fig/http-server-handler/tree/master"
+                "source": "https://github.com/php-fig/http-server-handler/tree/1.0.2"
             },
-            "time": "2018-10-30T16:46:14+00:00"
+            "time": "2023-04-10T20:06:20+00:00"
         },
         {
             "name": "psr/http-server-middleware",
-            "version": "1.0.1",
+            "version": "1.0.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-fig/http-server-middleware.git",
-                "reference": "2296f45510945530b9dceb8bcedb5cb84d40c5f5"
+                "reference": "c1481f747daaa6a0782775cd6a8c26a1bf4a3829"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-fig/http-server-middleware/zipball/2296f45510945530b9dceb8bcedb5cb84d40c5f5",
-                "reference": "2296f45510945530b9dceb8bcedb5cb84d40c5f5",
+                "url": "https://api.github.com/repos/php-fig/http-server-middleware/zipball/c1481f747daaa6a0782775cd6a8c26a1bf4a3829",
+                "reference": "c1481f747daaa6a0782775cd6a8c26a1bf4a3829",
                 "shasum": ""
             },
             "require": {
                 "php": ">=7.0",
-                "psr/http-message": "^1.0",
+                "psr/http-message": "^1.0 || ^2.0",
                 "psr/http-server-handler": "^1.0"
             },
             "type": "library",
@@ -3407,7 +3365,7 @@
             "authors": [
                 {
                     "name": "PHP-FIG",
-                    "homepage": "http://www.php-fig.org/"
+                    "homepage": "https://www.php-fig.org/"
                 }
             ],
             "description": "Common interface for HTTP server-side middleware",
@@ -3423,36 +3381,36 @@
             ],
             "support": {
                 "issues": "https://github.com/php-fig/http-server-middleware/issues",
-                "source": "https://github.com/php-fig/http-server-middleware/tree/master"
+                "source": "https://github.com/php-fig/http-server-middleware/tree/1.0.2"
             },
-            "time": "2018-10-30T17:12:04+00:00"
+            "time": "2023-04-11T06:14:47+00:00"
         },
         {
             "name": "psr/log",
-            "version": "1.1.4",
+            "version": "3.0.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-fig/log.git",
-                "reference": "d49695b909c3b7628b6289db5479a1c204601f11"
+                "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11",
-                "reference": "d49695b909c3b7628b6289db5479a1c204601f11",
+                "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001",
+                "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001",
                 "shasum": ""
             },
             "require": {
-                "php": ">=5.3.0"
+                "php": ">=8.0.0"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.1.x-dev"
+                    "dev-master": "3.x-dev"
                 }
             },
             "autoload": {
                 "psr-4": {
-                    "Psr\\Log\\": "Psr/Log/"
+                    "Psr\\Log\\": "src"
                 }
             },
             "notification-url": "https://packagist.org/downloads/",
@@ -3473,31 +3431,31 @@
                 "psr-3"
             ],
             "support": {
-                "source": "https://github.com/php-fig/log/tree/1.1.4"
+                "source": "https://github.com/php-fig/log/tree/3.0.0"
             },
-            "time": "2021-05-03T11:20:27+00:00"
+            "time": "2021-07-14T16:46:02+00:00"
         },
         {
             "name": "psr/simple-cache",
-            "version": "1.0.1",
+            "version": "3.0.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-fig/simple-cache.git",
-                "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b"
+                "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
-                "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b",
+                "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865",
+                "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865",
                 "shasum": ""
             },
             "require": {
-                "php": ">=5.3.0"
+                "php": ">=8.0.0"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.0.x-dev"
+                    "dev-master": "3.0.x-dev"
                 }
             },
             "autoload": {
@@ -3512,7 +3470,7 @@
             "authors": [
                 {
                     "name": "PHP-FIG",
-                    "homepage": "http://www.php-fig.org/"
+                    "homepage": "https://www.php-fig.org/"
                 }
             ],
             "description": "Common interfaces for simple caching",
@@ -3524,9 +3482,9 @@
                 "simple-cache"
             ],
             "support": {
-                "source": "https://github.com/php-fig/simple-cache/tree/master"
+                "source": "https://github.com/php-fig/simple-cache/tree/3.0.0"
             },
-            "time": "2017-10-23T01:57:42+00:00"
+            "time": "2021-10-29T13:26:27+00:00"
         },
         {
             "name": "psy/psysh",
@@ -4706,16 +4664,16 @@
         },
         {
             "name": "symfony/string",
-            "version": "v6.4.7",
+            "version": "v6.4.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/string.git",
-                "reference": "ffeb9591c61f65a68d47f77d12b83fa530227a69"
+                "reference": "a147c0f826c4a1f3afb763ab8e009e37c877a44d"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/string/zipball/ffeb9591c61f65a68d47f77d12b83fa530227a69",
-                "reference": "ffeb9591c61f65a68d47f77d12b83fa530227a69",
+                "url": "https://api.github.com/repos/symfony/string/zipball/a147c0f826c4a1f3afb763ab8e009e37c877a44d",
+                "reference": "a147c0f826c4a1f3afb763ab8e009e37c877a44d",
                 "shasum": ""
             },
             "require": {
@@ -4772,7 +4730,7 @@
                 "utf8"
             ],
             "support": {
-                "source": "https://github.com/symfony/string/tree/v6.4.7"
+                "source": "https://github.com/symfony/string/tree/v6.4.8"
             },
             "funding": [
                 {
@@ -4788,7 +4746,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-04-18T09:22:46+00:00"
+            "time": "2024-05-31T14:49:08+00:00"
         },
         {
             "name": "symfony/var-dumper",
@@ -5650,6 +5608,52 @@
             },
             "time": "2022-02-16T19:48:08+00:00"
         },
+        {
+            "name": "codeception/specify",
+            "version": "2.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Codeception/Specify.git",
+                "reference": "b718b4b9bb722be4756aa7c9aa7e89b6babc2cf6"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Codeception/Specify/zipball/b718b4b9bb722be4756aa7c9aa7e89b6babc2cf6",
+                "reference": "b718b4b9bb722be4756aa7c9aa7e89b6babc2cf6",
+                "shasum": ""
+            },
+            "require": {
+                "myclabs/deep-copy": "^1.10",
+                "php": ">=7.4.0",
+                "phpunit/phpunit": "^8.0|^9.0"
+            },
+            "type": "library",
+            "autoload": {
+                "psr-0": {
+                    "Codeception\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Michael Bodnarchuk",
+                    "email": "davert@codeception.com"
+                },
+                {
+                    "name": "Gustavo Nieves",
+                    "homepage": "https://medium.com/@ganieves"
+                }
+            ],
+            "description": "BDD code blocks for PHPUnit and Codeception",
+            "support": {
+                "issues": "https://github.com/Codeception/Specify/issues",
+                "source": "https://github.com/Codeception/Specify/tree/2.0.0"
+            },
+            "time": "2021-11-22T00:16:11+00:00"
+        },
         {
             "name": "codeception/stub",
             "version": "4.1.3",
@@ -5691,6 +5695,76 @@
             },
             "time": "2024-02-02T19:21:00+00:00"
         },
+        {
+            "name": "doctrine/instantiator",
+            "version": "2.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/doctrine/instantiator.git",
+                "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
+                "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
+                "shasum": ""
+            },
+            "require": {
+                "php": "^8.1"
+            },
+            "require-dev": {
+                "doctrine/coding-standard": "^11",
+                "ext-pdo": "*",
+                "ext-phar": "*",
+                "phpbench/phpbench": "^1.2",
+                "phpstan/phpstan": "^1.9.4",
+                "phpstan/phpstan-phpunit": "^1.3",
+                "phpunit/phpunit": "^9.5.27",
+                "vimeo/psalm": "^5.4"
+            },
+            "type": "library",
+            "autoload": {
+                "psr-4": {
+                    "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Marco Pivetta",
+                    "email": "ocramius@gmail.com",
+                    "homepage": "https://ocramius.github.io/"
+                }
+            ],
+            "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
+            "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
+            "keywords": [
+                "constructor",
+                "instantiate"
+            ],
+            "support": {
+                "issues": "https://github.com/doctrine/instantiator/issues",
+                "source": "https://github.com/doctrine/instantiator/tree/2.0.0"
+            },
+            "funding": [
+                {
+                    "url": "https://www.doctrine-project.org/sponsorship.html",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://www.patreon.com/phpdoctrine",
+                    "type": "patreon"
+                },
+                {
+                    "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator",
+                    "type": "tidelift"
+                }
+            ],
+            "time": "2022-12-30T00:23:10+00:00"
+        },
         {
             "name": "maximebf/debugbar",
             "version": "v1.22.3",
@@ -5761,16 +5835,16 @@
         },
         {
             "name": "myclabs/deep-copy",
-            "version": "1.11.1",
+            "version": "1.12.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/myclabs/DeepCopy.git",
-                "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c"
+                "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c",
-                "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c",
+                "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c",
+                "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c",
                 "shasum": ""
             },
             "require": {
@@ -5778,11 +5852,12 @@
             },
             "conflict": {
                 "doctrine/collections": "<1.6.8",
-                "doctrine/common": "<2.13.3 || >=3,<3.2.2"
+                "doctrine/common": "<2.13.3 || >=3 <3.2.2"
             },
             "require-dev": {
                 "doctrine/collections": "^1.6.8",
                 "doctrine/common": "^2.13.3 || ^3.2.2",
+                "phpspec/prophecy": "^1.10",
                 "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13"
             },
             "type": "library",
@@ -5808,7 +5883,7 @@
             ],
             "support": {
                 "issues": "https://github.com/myclabs/DeepCopy/issues",
-                "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1"
+                "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0"
             },
             "funding": [
                 {
@@ -5816,7 +5891,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-03-08T13:26:56+00:00"
+            "time": "2024-06-12T14:39:25+00:00"
         },
         {
             "name": "overtrue/phplint",
@@ -6034,34 +6109,29 @@
         },
         {
             "name": "php-http/httplug",
-            "version": "2.3.0",
+            "version": "2.4.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-http/httplug.git",
-                "reference": "f640739f80dfa1152533976e3c112477f69274eb"
+                "reference": "625ad742c360c8ac580fcc647a1541d29e257f67"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-http/httplug/zipball/f640739f80dfa1152533976e3c112477f69274eb",
-                "reference": "f640739f80dfa1152533976e3c112477f69274eb",
+                "url": "https://api.github.com/repos/php-http/httplug/zipball/625ad742c360c8ac580fcc647a1541d29e257f67",
+                "reference": "625ad742c360c8ac580fcc647a1541d29e257f67",
                 "shasum": ""
             },
             "require": {
                 "php": "^7.1 || ^8.0",
                 "php-http/promise": "^1.1",
                 "psr/http-client": "^1.0",
-                "psr/http-message": "^1.0"
+                "psr/http-message": "^1.0 || ^2.0"
             },
             "require-dev": {
-                "friends-of-phpspec/phpspec-code-coverage": "^4.1",
-                "phpspec/phpspec": "^5.1 || ^6.0"
+                "friends-of-phpspec/phpspec-code-coverage": "^4.1 || ^5.0 || ^6.0",
+                "phpspec/phpspec": "^5.1 || ^6.0 || ^7.0"
             },
             "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "2.x-dev"
-                }
-            },
             "autoload": {
                 "psr-4": {
                     "Http\\Client\\": "src/"
@@ -6090,37 +6160,32 @@
             ],
             "support": {
                 "issues": "https://github.com/php-http/httplug/issues",
-                "source": "https://github.com/php-http/httplug/tree/2.3.0"
+                "source": "https://github.com/php-http/httplug/tree/2.4.0"
             },
-            "time": "2022-02-21T09:52:22+00:00"
+            "time": "2023-04-14T15:10:03+00:00"
         },
         {
             "name": "php-http/promise",
-            "version": "1.1.0",
+            "version": "1.3.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-http/promise.git",
-                "reference": "4c4c1f9b7289a2ec57cde7f1e9762a5789506f88"
+                "reference": "fc85b1fba37c169a69a07ef0d5a8075770cc1f83"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-http/promise/zipball/4c4c1f9b7289a2ec57cde7f1e9762a5789506f88",
-                "reference": "4c4c1f9b7289a2ec57cde7f1e9762a5789506f88",
+                "url": "https://api.github.com/repos/php-http/promise/zipball/fc85b1fba37c169a69a07ef0d5a8075770cc1f83",
+                "reference": "fc85b1fba37c169a69a07ef0d5a8075770cc1f83",
                 "shasum": ""
             },
             "require": {
                 "php": "^7.1 || ^8.0"
             },
             "require-dev": {
-                "friends-of-phpspec/phpspec-code-coverage": "^4.3.2",
-                "phpspec/phpspec": "^5.1.2 || ^6.2"
+                "friends-of-phpspec/phpspec-code-coverage": "^4.3.2 || ^6.3",
+                "phpspec/phpspec": "^5.1.2 || ^6.2 || ^7.4"
             },
             "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.1-dev"
-                }
-            },
             "autoload": {
                 "psr-4": {
                     "Http\\Promise\\": "src/"
@@ -6147,9 +6212,9 @@
             ],
             "support": {
                 "issues": "https://github.com/php-http/promise/issues",
-                "source": "https://github.com/php-http/promise/tree/1.1.0"
+                "source": "https://github.com/php-http/promise/tree/1.3.1"
             },
-            "time": "2020-07-07T09:29:14+00:00"
+            "time": "2024-03-15T13:55:21+00:00"
         },
         {
             "name": "phpstan/phpstan",
@@ -6211,16 +6276,16 @@
         },
         {
             "name": "phpunit/php-code-coverage",
-            "version": "10.1.14",
+            "version": "9.2.31",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
-                "reference": "e3f51450ebffe8e0efdf7346ae966a656f7d5e5b"
+                "reference": "48c34b5d8d983006bd2adc2d0de92963b9155965"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/e3f51450ebffe8e0efdf7346ae966a656f7d5e5b",
-                "reference": "e3f51450ebffe8e0efdf7346ae966a656f7d5e5b",
+                "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/48c34b5d8d983006bd2adc2d0de92963b9155965",
+                "reference": "48c34b5d8d983006bd2adc2d0de92963b9155965",
                 "shasum": ""
             },
             "require": {
@@ -6228,18 +6293,18 @@
                 "ext-libxml": "*",
                 "ext-xmlwriter": "*",
                 "nikic/php-parser": "^4.18 || ^5.0",
-                "php": ">=8.1",
-                "phpunit/php-file-iterator": "^4.0",
-                "phpunit/php-text-template": "^3.0",
-                "sebastian/code-unit-reverse-lookup": "^3.0",
-                "sebastian/complexity": "^3.0",
-                "sebastian/environment": "^6.0",
-                "sebastian/lines-of-code": "^2.0",
-                "sebastian/version": "^4.0",
+                "php": ">=7.3",
+                "phpunit/php-file-iterator": "^3.0.3",
+                "phpunit/php-text-template": "^2.0.2",
+                "sebastian/code-unit-reverse-lookup": "^2.0.2",
+                "sebastian/complexity": "^2.0",
+                "sebastian/environment": "^5.1.2",
+                "sebastian/lines-of-code": "^1.0.3",
+                "sebastian/version": "^3.0.1",
                 "theseer/tokenizer": "^1.2.0"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.1"
+                "phpunit/phpunit": "^9.3"
             },
             "suggest": {
                 "ext-pcov": "PHP extension that provides line coverage",
@@ -6248,7 +6313,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "10.1-dev"
+                    "dev-master": "9.2-dev"
                 }
             },
             "autoload": {
@@ -6277,7 +6342,7 @@
             "support": {
                 "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
                 "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
-                "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.1.14"
+                "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.31"
             },
             "funding": [
                 {
@@ -6285,32 +6350,32 @@
                     "type": "github"
                 }
             ],
-            "time": "2024-03-12T15:33:41+00:00"
+            "time": "2024-03-02T06:37:42+00:00"
         },
         {
             "name": "phpunit/php-file-iterator",
-            "version": "4.1.0",
+            "version": "3.0.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
-                "reference": "a95037b6d9e608ba092da1b23931e537cadc3c3c"
+                "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/a95037b6d9e608ba092da1b23931e537cadc3c3c",
-                "reference": "a95037b6d9e608ba092da1b23931e537cadc3c3c",
+                "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf",
+                "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "4.0-dev"
+                    "dev-master": "3.0-dev"
                 }
             },
             "autoload": {
@@ -6337,8 +6402,7 @@
             ],
             "support": {
                 "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues",
-                "security": "https://github.com/sebastianbergmann/php-file-iterator/security/policy",
-                "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/4.1.0"
+                "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6"
             },
             "funding": [
                 {
@@ -6346,28 +6410,28 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-08-31T06:24:48+00:00"
+            "time": "2021-12-02T12:48:52+00:00"
         },
         {
             "name": "phpunit/php-invoker",
-            "version": "4.0.0",
+            "version": "3.1.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/php-invoker.git",
-                "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7"
+                "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7",
-                "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7",
+                "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
+                "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
                 "ext-pcntl": "*",
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "suggest": {
                 "ext-pcntl": "*"
@@ -6375,7 +6439,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "4.0-dev"
+                    "dev-master": "3.1-dev"
                 }
             },
             "autoload": {
@@ -6401,7 +6465,7 @@
             ],
             "support": {
                 "issues": "https://github.com/sebastianbergmann/php-invoker/issues",
-                "source": "https://github.com/sebastianbergmann/php-invoker/tree/4.0.0"
+                "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1"
             },
             "funding": [
                 {
@@ -6409,32 +6473,32 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-02-03T06:56:09+00:00"
+            "time": "2020-09-28T05:58:55+00:00"
         },
         {
             "name": "phpunit/php-text-template",
-            "version": "3.0.1",
+            "version": "2.0.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/php-text-template.git",
-                "reference": "0c7b06ff49e3d5072f057eb1fa59258bf287a748"
+                "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/0c7b06ff49e3d5072f057eb1fa59258bf287a748",
-                "reference": "0c7b06ff49e3d5072f057eb1fa59258bf287a748",
+                "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
+                "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.0-dev"
+                    "dev-master": "2.0-dev"
                 }
             },
             "autoload": {
@@ -6460,8 +6524,7 @@
             ],
             "support": {
                 "issues": "https://github.com/sebastianbergmann/php-text-template/issues",
-                "security": "https://github.com/sebastianbergmann/php-text-template/security/policy",
-                "source": "https://github.com/sebastianbergmann/php-text-template/tree/3.0.1"
+                "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4"
             },
             "funding": [
                 {
@@ -6469,32 +6532,32 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-08-31T14:07:24+00:00"
+            "time": "2020-10-26T05:33:50+00:00"
         },
         {
             "name": "phpunit/php-timer",
-            "version": "6.0.0",
+            "version": "5.0.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/php-timer.git",
-                "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d"
+                "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/e2a2d67966e740530f4a3343fe2e030ffdc1161d",
-                "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d",
+                "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
+                "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "6.0-dev"
+                    "dev-master": "5.0-dev"
                 }
             },
             "autoload": {
@@ -6520,7 +6583,7 @@
             ],
             "support": {
                 "issues": "https://github.com/sebastianbergmann/php-timer/issues",
-                "source": "https://github.com/sebastianbergmann/php-timer/tree/6.0.0"
+                "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3"
             },
             "funding": [
                 {
@@ -6528,23 +6591,24 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-02-03T06:57:52+00:00"
+            "time": "2020-10-26T13:16:10+00:00"
         },
         {
             "name": "phpunit/phpunit",
-            "version": "10.5.20",
+            "version": "9.6.19",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/phpunit.git",
-                "reference": "547d314dc24ec1e177720d45c6263fb226cc2ae3"
+                "reference": "a1a54a473501ef4cdeaae4e06891674114d79db8"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/547d314dc24ec1e177720d45c6263fb226cc2ae3",
-                "reference": "547d314dc24ec1e177720d45c6263fb226cc2ae3",
+                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a1a54a473501ef4cdeaae4e06891674114d79db8",
+                "reference": "a1a54a473501ef4cdeaae4e06891674114d79db8",
                 "shasum": ""
             },
             "require": {
+                "doctrine/instantiator": "^1.3.1 || ^2",
                 "ext-dom": "*",
                 "ext-json": "*",
                 "ext-libxml": "*",
@@ -6554,26 +6618,27 @@
                 "myclabs/deep-copy": "^1.10.1",
                 "phar-io/manifest": "^2.0.3",
                 "phar-io/version": "^3.0.2",
-                "php": ">=8.1",
-                "phpunit/php-code-coverage": "^10.1.5",
-                "phpunit/php-file-iterator": "^4.0",
-                "phpunit/php-invoker": "^4.0",
-                "phpunit/php-text-template": "^3.0",
-                "phpunit/php-timer": "^6.0",
-                "sebastian/cli-parser": "^2.0",
-                "sebastian/code-unit": "^2.0",
-                "sebastian/comparator": "^5.0",
-                "sebastian/diff": "^5.0",
-                "sebastian/environment": "^6.0",
-                "sebastian/exporter": "^5.1",
-                "sebastian/global-state": "^6.0.1",
-                "sebastian/object-enumerator": "^5.0",
-                "sebastian/recursion-context": "^5.0",
-                "sebastian/type": "^4.0",
-                "sebastian/version": "^4.0"
+                "php": ">=7.3",
+                "phpunit/php-code-coverage": "^9.2.28",
+                "phpunit/php-file-iterator": "^3.0.5",
+                "phpunit/php-invoker": "^3.1.1",
+                "phpunit/php-text-template": "^2.0.3",
+                "phpunit/php-timer": "^5.0.2",
+                "sebastian/cli-parser": "^1.0.1",
+                "sebastian/code-unit": "^1.0.6",
+                "sebastian/comparator": "^4.0.8",
+                "sebastian/diff": "^4.0.3",
+                "sebastian/environment": "^5.1.3",
+                "sebastian/exporter": "^4.0.5",
+                "sebastian/global-state": "^5.0.1",
+                "sebastian/object-enumerator": "^4.0.3",
+                "sebastian/resource-operations": "^3.0.3",
+                "sebastian/type": "^3.2",
+                "sebastian/version": "^3.0.2"
             },
             "suggest": {
-                "ext-soap": "To be able to generate mocks based on WSDL files"
+                "ext-soap": "To be able to generate mocks based on WSDL files",
+                "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage"
             },
             "bin": [
                 "phpunit"
@@ -6581,7 +6646,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "10.5-dev"
+                    "dev-master": "9.6-dev"
                 }
             },
             "autoload": {
@@ -6613,7 +6678,7 @@
             "support": {
                 "issues": "https://github.com/sebastianbergmann/phpunit/issues",
                 "security": "https://github.com/sebastianbergmann/phpunit/security/policy",
-                "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.20"
+                "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.19"
             },
             "funding": [
                 {
@@ -6629,7 +6694,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-04-24T06:32:35+00:00"
+            "time": "2024-04-05T04:35:58+00:00"
         },
         {
             "name": "psr/event-dispatcher",
@@ -6683,28 +6748,28 @@
         },
         {
             "name": "sebastian/cli-parser",
-            "version": "2.0.1",
+            "version": "1.0.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/cli-parser.git",
-                "reference": "c34583b87e7b7a8055bf6c450c2c77ce32a24084"
+                "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/c34583b87e7b7a8055bf6c450c2c77ce32a24084",
-                "reference": "c34583b87e7b7a8055bf6c450c2c77ce32a24084",
+                "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b",
+                "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "2.0-dev"
+                    "dev-master": "1.0-dev"
                 }
             },
             "autoload": {
@@ -6727,8 +6792,7 @@
             "homepage": "https://github.com/sebastianbergmann/cli-parser",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/cli-parser/issues",
-                "security": "https://github.com/sebastianbergmann/cli-parser/security/policy",
-                "source": "https://github.com/sebastianbergmann/cli-parser/tree/2.0.1"
+                "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.2"
             },
             "funding": [
                 {
@@ -6736,32 +6800,32 @@
                     "type": "github"
                 }
             ],
-            "time": "2024-03-02T07:12:49+00:00"
+            "time": "2024-03-02T06:27:43+00:00"
         },
         {
             "name": "sebastian/code-unit",
-            "version": "2.0.0",
+            "version": "1.0.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/code-unit.git",
-                "reference": "a81fee9eef0b7a76af11d121767abc44c104e503"
+                "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/a81fee9eef0b7a76af11d121767abc44c104e503",
-                "reference": "a81fee9eef0b7a76af11d121767abc44c104e503",
+                "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120",
+                "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "2.0-dev"
+                    "dev-master": "1.0-dev"
                 }
             },
             "autoload": {
@@ -6784,7 +6848,7 @@
             "homepage": "https://github.com/sebastianbergmann/code-unit",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/code-unit/issues",
-                "source": "https://github.com/sebastianbergmann/code-unit/tree/2.0.0"
+                "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8"
             },
             "funding": [
                 {
@@ -6792,32 +6856,32 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-02-03T06:58:43+00:00"
+            "time": "2020-10-26T13:08:54+00:00"
         },
         {
             "name": "sebastian/code-unit-reverse-lookup",
-            "version": "3.0.0",
+            "version": "2.0.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
-                "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d"
+                "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/5e3a687f7d8ae33fb362c5c0743794bbb2420a1d",
-                "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d",
+                "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
+                "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.0-dev"
+                    "dev-master": "2.0-dev"
                 }
             },
             "autoload": {
@@ -6839,7 +6903,7 @@
             "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues",
-                "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/3.0.0"
+                "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3"
             },
             "funding": [
                 {
@@ -6847,36 +6911,34 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-02-03T06:59:15+00:00"
+            "time": "2020-09-28T05:30:19+00:00"
         },
         {
             "name": "sebastian/comparator",
-            "version": "5.0.1",
+            "version": "4.0.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/comparator.git",
-                "reference": "2db5010a484d53ebf536087a70b4a5423c102372"
+                "reference": "fa0f136dd2334583309d32b62544682ee972b51a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2db5010a484d53ebf536087a70b4a5423c102372",
-                "reference": "2db5010a484d53ebf536087a70b4a5423c102372",
+                "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a",
+                "reference": "fa0f136dd2334583309d32b62544682ee972b51a",
                 "shasum": ""
             },
             "require": {
-                "ext-dom": "*",
-                "ext-mbstring": "*",
-                "php": ">=8.1",
-                "sebastian/diff": "^5.0",
-                "sebastian/exporter": "^5.0"
+                "php": ">=7.3",
+                "sebastian/diff": "^4.0",
+                "sebastian/exporter": "^4.0"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.3"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "5.0-dev"
+                    "dev-master": "4.0-dev"
                 }
             },
             "autoload": {
@@ -6915,8 +6977,7 @@
             ],
             "support": {
                 "issues": "https://github.com/sebastianbergmann/comparator/issues",
-                "security": "https://github.com/sebastianbergmann/comparator/security/policy",
-                "source": "https://github.com/sebastianbergmann/comparator/tree/5.0.1"
+                "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8"
             },
             "funding": [
                 {
@@ -6924,33 +6985,33 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-08-14T13:18:12+00:00"
+            "time": "2022-09-14T12:41:17+00:00"
         },
         {
             "name": "sebastian/complexity",
-            "version": "3.2.0",
+            "version": "2.0.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/complexity.git",
-                "reference": "68ff824baeae169ec9f2137158ee529584553799"
+                "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/68ff824baeae169ec9f2137158ee529584553799",
-                "reference": "68ff824baeae169ec9f2137158ee529584553799",
+                "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a",
+                "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a",
                 "shasum": ""
             },
             "require": {
                 "nikic/php-parser": "^4.18 || ^5.0",
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.2-dev"
+                    "dev-master": "2.0-dev"
                 }
             },
             "autoload": {
@@ -6973,8 +7034,7 @@
             "homepage": "https://github.com/sebastianbergmann/complexity",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/complexity/issues",
-                "security": "https://github.com/sebastianbergmann/complexity/security/policy",
-                "source": "https://github.com/sebastianbergmann/complexity/tree/3.2.0"
+                "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.3"
             },
             "funding": [
                 {
@@ -6982,33 +7042,33 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-12-21T08:37:17+00:00"
+            "time": "2023-12-22T06:19:30+00:00"
         },
         {
             "name": "sebastian/diff",
-            "version": "5.1.1",
+            "version": "4.0.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/diff.git",
-                "reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e"
+                "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/c41e007b4b62af48218231d6c2275e4c9b975b2e",
-                "reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e",
+                "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc",
+                "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0",
-                "symfony/process": "^6.4"
+                "phpunit/phpunit": "^9.3",
+                "symfony/process": "^4.2 || ^5"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "5.1-dev"
+                    "dev-master": "4.0-dev"
                 }
             },
             "autoload": {
@@ -7040,8 +7100,7 @@
             ],
             "support": {
                 "issues": "https://github.com/sebastianbergmann/diff/issues",
-                "security": "https://github.com/sebastianbergmann/diff/security/policy",
-                "source": "https://github.com/sebastianbergmann/diff/tree/5.1.1"
+                "source": "https://github.com/sebastianbergmann/diff/tree/4.0.6"
             },
             "funding": [
                 {
@@ -7049,27 +7108,27 @@
                     "type": "github"
                 }
             ],
-            "time": "2024-03-02T07:15:17+00:00"
+            "time": "2024-03-02T06:30:58+00:00"
         },
         {
             "name": "sebastian/environment",
-            "version": "6.1.0",
+            "version": "5.1.5",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/environment.git",
-                "reference": "8074dbcd93529b357029f5cc5058fd3e43666984"
+                "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/8074dbcd93529b357029f5cc5058fd3e43666984",
-                "reference": "8074dbcd93529b357029f5cc5058fd3e43666984",
+                "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
+                "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "suggest": {
                 "ext-posix": "*"
@@ -7077,7 +7136,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "6.1-dev"
+                    "dev-master": "5.1-dev"
                 }
             },
             "autoload": {
@@ -7096,7 +7155,7 @@
                 }
             ],
             "description": "Provides functionality to handle HHVM/PHP environments",
-            "homepage": "https://github.com/sebastianbergmann/environment",
+            "homepage": "http://www.github.com/sebastianbergmann/environment",
             "keywords": [
                 "Xdebug",
                 "environment",
@@ -7104,8 +7163,7 @@
             ],
             "support": {
                 "issues": "https://github.com/sebastianbergmann/environment/issues",
-                "security": "https://github.com/sebastianbergmann/environment/security/policy",
-                "source": "https://github.com/sebastianbergmann/environment/tree/6.1.0"
+                "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5"
             },
             "funding": [
                 {
@@ -7113,34 +7171,34 @@
                     "type": "github"
                 }
             ],
-            "time": "2024-03-23T08:47:14+00:00"
+            "time": "2023-02-03T06:03:51+00:00"
         },
         {
             "name": "sebastian/exporter",
-            "version": "5.1.2",
+            "version": "4.0.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/exporter.git",
-                "reference": "955288482d97c19a372d3f31006ab3f37da47adf"
+                "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/955288482d97c19a372d3f31006ab3f37da47adf",
-                "reference": "955288482d97c19a372d3f31006ab3f37da47adf",
+                "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/78c00df8f170e02473b682df15bfcdacc3d32d72",
+                "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72",
                 "shasum": ""
             },
             "require": {
-                "ext-mbstring": "*",
-                "php": ">=8.1",
-                "sebastian/recursion-context": "^5.0"
+                "php": ">=7.3",
+                "sebastian/recursion-context": "^4.0"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "ext-mbstring": "*",
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "5.1-dev"
+                    "dev-master": "4.0-dev"
                 }
             },
             "autoload": {
@@ -7182,8 +7240,7 @@
             ],
             "support": {
                 "issues": "https://github.com/sebastianbergmann/exporter/issues",
-                "security": "https://github.com/sebastianbergmann/exporter/security/policy",
-                "source": "https://github.com/sebastianbergmann/exporter/tree/5.1.2"
+                "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.6"
             },
             "funding": [
                 {
@@ -7191,35 +7248,38 @@
                     "type": "github"
                 }
             ],
-            "time": "2024-03-02T07:17:12+00:00"
+            "time": "2024-03-02T06:33:00+00:00"
         },
         {
             "name": "sebastian/global-state",
-            "version": "6.0.2",
+            "version": "5.0.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/global-state.git",
-                "reference": "987bafff24ecc4c9ac418cab1145b96dd6e9cbd9"
+                "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/987bafff24ecc4c9ac418cab1145b96dd6e9cbd9",
-                "reference": "987bafff24ecc4c9ac418cab1145b96dd6e9cbd9",
+                "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9",
+                "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1",
-                "sebastian/object-reflector": "^3.0",
-                "sebastian/recursion-context": "^5.0"
+                "php": ">=7.3",
+                "sebastian/object-reflector": "^2.0",
+                "sebastian/recursion-context": "^4.0"
             },
             "require-dev": {
                 "ext-dom": "*",
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
+            },
+            "suggest": {
+                "ext-uopz": "*"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "6.0-dev"
+                    "dev-master": "5.0-dev"
                 }
             },
             "autoload": {
@@ -7238,14 +7298,13 @@
                 }
             ],
             "description": "Snapshotting of global state",
-            "homepage": "https://www.github.com/sebastianbergmann/global-state",
+            "homepage": "http://www.github.com/sebastianbergmann/global-state",
             "keywords": [
                 "global state"
             ],
             "support": {
                 "issues": "https://github.com/sebastianbergmann/global-state/issues",
-                "security": "https://github.com/sebastianbergmann/global-state/security/policy",
-                "source": "https://github.com/sebastianbergmann/global-state/tree/6.0.2"
+                "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.7"
             },
             "funding": [
                 {
@@ -7253,33 +7312,33 @@
                     "type": "github"
                 }
             ],
-            "time": "2024-03-02T07:19:19+00:00"
+            "time": "2024-03-02T06:35:11+00:00"
         },
         {
             "name": "sebastian/lines-of-code",
-            "version": "2.0.2",
+            "version": "1.0.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/lines-of-code.git",
-                "reference": "856e7f6a75a84e339195d48c556f23be2ebf75d0"
+                "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/856e7f6a75a84e339195d48c556f23be2ebf75d0",
-                "reference": "856e7f6a75a84e339195d48c556f23be2ebf75d0",
+                "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5",
+                "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5",
                 "shasum": ""
             },
             "require": {
                 "nikic/php-parser": "^4.18 || ^5.0",
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "2.0-dev"
+                    "dev-master": "1.0-dev"
                 }
             },
             "autoload": {
@@ -7302,8 +7361,7 @@
             "homepage": "https://github.com/sebastianbergmann/lines-of-code",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/lines-of-code/issues",
-                "security": "https://github.com/sebastianbergmann/lines-of-code/security/policy",
-                "source": "https://github.com/sebastianbergmann/lines-of-code/tree/2.0.2"
+                "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.4"
             },
             "funding": [
                 {
@@ -7311,34 +7369,34 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-12-21T08:38:20+00:00"
+            "time": "2023-12-22T06:20:34+00:00"
         },
         {
             "name": "sebastian/object-enumerator",
-            "version": "5.0.0",
+            "version": "4.0.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/object-enumerator.git",
-                "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906"
+                "reference": "5c9eeac41b290a3712d88851518825ad78f45c71"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/202d0e344a580d7f7d04b3fafce6933e59dae906",
-                "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906",
+                "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71",
+                "reference": "5c9eeac41b290a3712d88851518825ad78f45c71",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1",
-                "sebastian/object-reflector": "^3.0",
-                "sebastian/recursion-context": "^5.0"
+                "php": ">=7.3",
+                "sebastian/object-reflector": "^2.0",
+                "sebastian/recursion-context": "^4.0"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "5.0-dev"
+                    "dev-master": "4.0-dev"
                 }
             },
             "autoload": {
@@ -7360,7 +7418,7 @@
             "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/object-enumerator/issues",
-                "source": "https://github.com/sebastianbergmann/object-enumerator/tree/5.0.0"
+                "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4"
             },
             "funding": [
                 {
@@ -7368,32 +7426,32 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-02-03T07:08:32+00:00"
+            "time": "2020-10-26T13:12:34+00:00"
         },
         {
             "name": "sebastian/object-reflector",
-            "version": "3.0.0",
+            "version": "2.0.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/object-reflector.git",
-                "reference": "24ed13d98130f0e7122df55d06c5c4942a577957"
+                "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/24ed13d98130f0e7122df55d06c5c4942a577957",
-                "reference": "24ed13d98130f0e7122df55d06c5c4942a577957",
+                "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
+                "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.0-dev"
+                    "dev-master": "2.0-dev"
                 }
             },
             "autoload": {
@@ -7415,7 +7473,7 @@
             "homepage": "https://github.com/sebastianbergmann/object-reflector/",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/object-reflector/issues",
-                "source": "https://github.com/sebastianbergmann/object-reflector/tree/3.0.0"
+                "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4"
             },
             "funding": [
                 {
@@ -7423,32 +7481,32 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-02-03T07:06:18+00:00"
+            "time": "2020-10-26T13:14:26+00:00"
         },
         {
             "name": "sebastian/recursion-context",
-            "version": "5.0.0",
+            "version": "4.0.5",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/recursion-context.git",
-                "reference": "05909fb5bc7df4c52992396d0116aed689f93712"
+                "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/05909fb5bc7df4c52992396d0116aed689f93712",
-                "reference": "05909fb5bc7df4c52992396d0116aed689f93712",
+                "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
+                "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "5.0-dev"
+                    "dev-master": "4.0-dev"
                 }
             },
             "autoload": {
@@ -7478,7 +7536,7 @@
             "homepage": "https://github.com/sebastianbergmann/recursion-context",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/recursion-context/issues",
-                "source": "https://github.com/sebastianbergmann/recursion-context/tree/5.0.0"
+                "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5"
             },
             "funding": [
                 {
@@ -7486,32 +7544,86 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-02-03T07:05:40+00:00"
+            "time": "2023-02-03T06:07:39+00:00"
+        },
+        {
+            "name": "sebastian/resource-operations",
+            "version": "3.0.4",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/sebastianbergmann/resource-operations.git",
+                "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e",
+                "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=7.3"
+            },
+            "require-dev": {
+                "phpunit/phpunit": "^9.0"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "3.0-dev"
+                }
+            },
+            "autoload": {
+                "classmap": [
+                    "src/"
+                ]
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "BSD-3-Clause"
+            ],
+            "authors": [
+                {
+                    "name": "Sebastian Bergmann",
+                    "email": "sebastian@phpunit.de"
+                }
+            ],
+            "description": "Provides a list of PHP built-in functions that operate on resources",
+            "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
+            "support": {
+                "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.4"
+            },
+            "funding": [
+                {
+                    "url": "https://github.com/sebastianbergmann",
+                    "type": "github"
+                }
+            ],
+            "time": "2024-03-14T16:00:52+00:00"
         },
         {
             "name": "sebastian/type",
-            "version": "4.0.0",
+            "version": "3.2.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/type.git",
-                "reference": "462699a16464c3944eefc02ebdd77882bd3925bf"
+                "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/462699a16464c3944eefc02ebdd77882bd3925bf",
-                "reference": "462699a16464c3944eefc02ebdd77882bd3925bf",
+                "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
+                "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "^10.0"
+                "phpunit/phpunit": "^9.5"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "4.0-dev"
+                    "dev-master": "3.2-dev"
                 }
             },
             "autoload": {
@@ -7534,7 +7646,7 @@
             "homepage": "https://github.com/sebastianbergmann/type",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/type/issues",
-                "source": "https://github.com/sebastianbergmann/type/tree/4.0.0"
+                "source": "https://github.com/sebastianbergmann/type/tree/3.2.1"
             },
             "funding": [
                 {
@@ -7542,29 +7654,29 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-02-03T07:10:45+00:00"
+            "time": "2023-02-03T06:13:03+00:00"
         },
         {
             "name": "sebastian/version",
-            "version": "4.0.1",
+            "version": "3.0.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/version.git",
-                "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17"
+                "reference": "c6c1022351a901512170118436c764e473f6de8c"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c51fa83a5d8f43f1402e3f32a005e6262244ef17",
-                "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17",
+                "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c",
+                "reference": "c6c1022351a901512170118436c764e473f6de8c",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.1"
+                "php": ">=7.3"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "4.0-dev"
+                    "dev-master": "3.0-dev"
                 }
             },
             "autoload": {
@@ -7587,7 +7699,7 @@
             "homepage": "https://github.com/sebastianbergmann/version",
             "support": {
                 "issues": "https://github.com/sebastianbergmann/version/issues",
-                "source": "https://github.com/sebastianbergmann/version/tree/4.0.1"
+                "source": "https://github.com/sebastianbergmann/version/tree/3.0.2"
             },
             "funding": [
                 {
@@ -7595,20 +7707,20 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-02-07T11:34:05+00:00"
+            "time": "2020-09-28T06:39:44+00:00"
         },
         {
             "name": "symfony/cache",
-            "version": "v6.4.7",
+            "version": "v6.4.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/cache.git",
-                "reference": "b9e9b93c9817ec6c789c7943f5e54b57a041c16a"
+                "reference": "287142df5579ce223c485b3872df3efae8390984"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/cache/zipball/b9e9b93c9817ec6c789c7943f5e54b57a041c16a",
-                "reference": "b9e9b93c9817ec6c789c7943f5e54b57a041c16a",
+                "url": "https://api.github.com/repos/symfony/cache/zipball/287142df5579ce223c485b3872df3efae8390984",
+                "reference": "287142df5579ce223c485b3872df3efae8390984",
                 "shasum": ""
             },
             "require": {
@@ -7675,7 +7787,7 @@
                 "psr6"
             ],
             "support": {
-                "source": "https://github.com/symfony/cache/tree/v6.4.7"
+                "source": "https://github.com/symfony/cache/tree/v6.4.8"
             },
             "funding": [
                 {
@@ -7691,7 +7803,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-04-18T09:22:46+00:00"
+            "time": "2024-05-31T14:49:08+00:00"
         },
         {
             "name": "symfony/cache-contracts",
@@ -7771,16 +7883,16 @@
         },
         {
             "name": "symfony/css-selector",
-            "version": "v6.4.7",
+            "version": "v6.4.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/css-selector.git",
-                "reference": "1c5d5c2103c3762aff27a27e1e2409e30a79083b"
+                "reference": "4b61b02fe15db48e3687ce1c45ea385d1780fe08"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/css-selector/zipball/1c5d5c2103c3762aff27a27e1e2409e30a79083b",
-                "reference": "1c5d5c2103c3762aff27a27e1e2409e30a79083b",
+                "url": "https://api.github.com/repos/symfony/css-selector/zipball/4b61b02fe15db48e3687ce1c45ea385d1780fe08",
+                "reference": "4b61b02fe15db48e3687ce1c45ea385d1780fe08",
                 "shasum": ""
             },
             "require": {
@@ -7816,7 +7928,7 @@
             "description": "Converts CSS selectors to XPath expressions",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/css-selector/tree/v6.4.7"
+                "source": "https://github.com/symfony/css-selector/tree/v6.4.8"
             },
             "funding": [
                 {
@@ -7832,20 +7944,20 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-04-18T09:22:46+00:00"
+            "time": "2024-05-31T14:49:08+00:00"
         },
         {
             "name": "symfony/event-dispatcher",
-            "version": "v6.4.7",
+            "version": "v6.4.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/event-dispatcher.git",
-                "reference": "d84384f3f67de3cb650db64d685d70395dacfc3f"
+                "reference": "8d7507f02b06e06815e56bb39aa0128e3806208b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d84384f3f67de3cb650db64d685d70395dacfc3f",
-                "reference": "d84384f3f67de3cb650db64d685d70395dacfc3f",
+                "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/8d7507f02b06e06815e56bb39aa0128e3806208b",
+                "reference": "8d7507f02b06e06815e56bb39aa0128e3806208b",
                 "shasum": ""
             },
             "require": {
@@ -7896,7 +8008,7 @@
             "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/event-dispatcher/tree/v6.4.7"
+                "source": "https://github.com/symfony/event-dispatcher/tree/v6.4.8"
             },
             "funding": [
                 {
@@ -7912,7 +8024,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-04-18T09:22:46+00:00"
+            "time": "2024-05-31T14:49:08+00:00"
         },
         {
             "name": "symfony/event-dispatcher-contracts",
@@ -7992,16 +8104,16 @@
         },
         {
             "name": "symfony/finder",
-            "version": "v6.4.7",
+            "version": "v6.4.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/finder.git",
-                "reference": "511c48990be17358c23bf45c5d71ab85d40fb764"
+                "reference": "3ef977a43883215d560a2cecb82ec8e62131471c"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/finder/zipball/511c48990be17358c23bf45c5d71ab85d40fb764",
-                "reference": "511c48990be17358c23bf45c5d71ab85d40fb764",
+                "url": "https://api.github.com/repos/symfony/finder/zipball/3ef977a43883215d560a2cecb82ec8e62131471c",
+                "reference": "3ef977a43883215d560a2cecb82ec8e62131471c",
                 "shasum": ""
             },
             "require": {
@@ -8036,7 +8148,7 @@
             "description": "Finds files and directories via an intuitive fluent interface",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/finder/tree/v6.4.7"
+                "source": "https://github.com/symfony/finder/tree/v6.4.8"
             },
             "funding": [
                 {
@@ -8052,20 +8164,20 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-04-23T10:36:43+00:00"
+            "time": "2024-05-31T14:49:08+00:00"
         },
         {
             "name": "symfony/options-resolver",
-            "version": "v6.4.7",
+            "version": "v6.4.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/options-resolver.git",
-                "reference": "9a3c92b490716ba6771f5beced13c6eda7183eed"
+                "reference": "22ab9e9101ab18de37839074f8a1197f55590c1b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/options-resolver/zipball/9a3c92b490716ba6771f5beced13c6eda7183eed",
-                "reference": "9a3c92b490716ba6771f5beced13c6eda7183eed",
+                "url": "https://api.github.com/repos/symfony/options-resolver/zipball/22ab9e9101ab18de37839074f8a1197f55590c1b",
+                "reference": "22ab9e9101ab18de37839074f8a1197f55590c1b",
                 "shasum": ""
             },
             "require": {
@@ -8103,7 +8215,7 @@
                 "options"
             ],
             "support": {
-                "source": "https://github.com/symfony/options-resolver/tree/v6.4.7"
+                "source": "https://github.com/symfony/options-resolver/tree/v6.4.8"
             },
             "funding": [
                 {
@@ -8119,20 +8231,20 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-04-18T09:22:46+00:00"
+            "time": "2024-05-31T14:49:08+00:00"
         },
         {
             "name": "symfony/var-exporter",
-            "version": "v6.4.7",
+            "version": "v6.4.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/var-exporter.git",
-                "reference": "825f9b00c37bbe1c1691cc1aff9b5451fc9b4405"
+                "reference": "792ca836f99b340f2e9ca9497c7953948c49a504"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/var-exporter/zipball/825f9b00c37bbe1c1691cc1aff9b5451fc9b4405",
-                "reference": "825f9b00c37bbe1c1691cc1aff9b5451fc9b4405",
+                "url": "https://api.github.com/repos/symfony/var-exporter/zipball/792ca836f99b340f2e9ca9497c7953948c49a504",
+                "reference": "792ca836f99b340f2e9ca9497c7953948c49a504",
                 "shasum": ""
             },
             "require": {
@@ -8180,7 +8292,7 @@
                 "serialize"
             ],
             "support": {
-                "source": "https://github.com/symfony/var-exporter/tree/v6.4.7"
+                "source": "https://github.com/symfony/var-exporter/tree/v6.4.8"
             },
             "funding": [
                 {
@@ -8196,7 +8308,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-04-18T09:22:46+00:00"
+            "time": "2024-05-31T14:49:08+00:00"
         },
         {
             "name": "theseer/tokenizer",
diff --git a/db/migrations/1.2_step_102_datenfeldtypen.php b/db/migrations/1.2_step_102_datenfeldtypen.php
index 1e7b552832edc518e8553d4d8a8bf9541303b533..b639132f6b53f8fbde912c91fb6af54dae5e010f 100644
--- a/db/migrations/1.2_step_102_datenfeldtypen.php
+++ b/db/migrations/1.2_step_102_datenfeldtypen.php
@@ -63,7 +63,7 @@ class Step102Datenfeldtypen extends Migration {
       return;
     }
 
-    require_once 'lib/classes/DataFieldStructure.class.php';
+    require_once 'lib/classes/DataFieldStructure.php';
 
     $ids = array_keys(DataFieldStructure::getDataFieldStructures());
 
diff --git a/db/migrations/1.6_step_25_raumzeit_db_conversion.php b/db/migrations/1.6_step_25_raumzeit_db_conversion.php
index 1dd8edfe152dc138e4b6369b03741a41929329b5..9a8ffd73c2f2c4087518e62350964624f04f5b53 100644
--- a/db/migrations/1.6_step_25_raumzeit_db_conversion.php
+++ b/db/migrations/1.6_step_25_raumzeit_db_conversion.php
@@ -55,8 +55,8 @@ class Step25RaumzeitDbConversion extends Migration
 
 
         // include business logic
-        require_once('lib/classes/Seminar.class.php');
-        require_once('lib/resources/lib/VeranstaltungResourcesAssign.class.php');
+        require_once('lib/classes/Seminar.php');
+        require_once('lib/resources/lib/VeranstaltungResourcesAssign.php');
 
 
 
diff --git a/lib/admissionrules/conditionaladmission/ConditionalAdmission.class.php b/lib/admissionrules/conditionaladmission/ConditionalAdmission.php
similarity index 100%
rename from lib/admissionrules/conditionaladmission/ConditionalAdmission.class.php
rename to lib/admissionrules/conditionaladmission/ConditionalAdmission.php
diff --git a/lib/admissionrules/coursememberadmission/CourseMemberAdmission.class.php b/lib/admissionrules/coursememberadmission/CourseMemberAdmission.php
similarity index 100%
rename from lib/admissionrules/coursememberadmission/CourseMemberAdmission.class.php
rename to lib/admissionrules/coursememberadmission/CourseMemberAdmission.php
diff --git a/lib/admissionrules/limitedadmission/LimitedAdmission.class.php b/lib/admissionrules/limitedadmission/LimitedAdmission.php
similarity index 100%
rename from lib/admissionrules/limitedadmission/LimitedAdmission.class.php
rename to lib/admissionrules/limitedadmission/LimitedAdmission.php
diff --git a/lib/admissionrules/lockedadmission/LockedAdmission.class.php b/lib/admissionrules/lockedadmission/LockedAdmission.php
similarity index 100%
rename from lib/admissionrules/lockedadmission/LockedAdmission.class.php
rename to lib/admissionrules/lockedadmission/LockedAdmission.php
diff --git a/lib/admissionrules/participantrestrictedadmission/ParticipantRestrictedAdmission.class.php b/lib/admissionrules/participantrestrictedadmission/ParticipantRestrictedAdmission.php
similarity index 100%
rename from lib/admissionrules/participantrestrictedadmission/ParticipantRestrictedAdmission.class.php
rename to lib/admissionrules/participantrestrictedadmission/ParticipantRestrictedAdmission.php
diff --git a/lib/admissionrules/passwordadmission/PasswordAdmission.class.php b/lib/admissionrules/passwordadmission/PasswordAdmission.php
similarity index 100%
rename from lib/admissionrules/passwordadmission/PasswordAdmission.class.php
rename to lib/admissionrules/passwordadmission/PasswordAdmission.php
diff --git a/lib/admissionrules/preferentialadmission/PreferentialAdmission.class.php b/lib/admissionrules/preferentialadmission/PreferentialAdmission.php
similarity index 100%
rename from lib/admissionrules/preferentialadmission/PreferentialAdmission.class.php
rename to lib/admissionrules/preferentialadmission/PreferentialAdmission.php
diff --git a/lib/admissionrules/termsadmission/TermsAdmission.class.php b/lib/admissionrules/termsadmission/TermsAdmission.php
similarity index 100%
rename from lib/admissionrules/termsadmission/TermsAdmission.class.php
rename to lib/admissionrules/termsadmission/TermsAdmission.php
diff --git a/lib/admissionrules/timedadmission/TimedAdmission.class.php b/lib/admissionrules/timedadmission/TimedAdmission.php
similarity index 100%
rename from lib/admissionrules/timedadmission/TimedAdmission.class.php
rename to lib/admissionrules/timedadmission/TimedAdmission.php
diff --git a/lib/bootstrap-autoload.php b/lib/bootstrap-autoload.php
index e2554c73732a0e29438a3e2a39616f5e1a23d931..7d99f860415110705a6fe56089734feb049957e9 100644
--- a/lib/bootstrap-autoload.php
+++ b/lib/bootstrap-autoload.php
@@ -3,102 +3,21 @@
 require 'lib/classes/StudipAutoloader.php';
 StudipAutoloader::register();
 
-// General classes folders
-StudipAutoloader::addAutoloadPath('lib/models');
-StudipAutoloader::addAutoloadPath('lib/models/calendar');
-StudipAutoloader::addAutoloadPath('lib/models/resources');
-StudipAutoloader::addAutoloadPath('lib/classes');
-StudipAutoloader::addAutoloadPath('lib/classes', 'Studip');
-
-// Plugins
-StudipAutoloader::addAutoloadPath('lib/plugins/core');
-StudipAutoloader::addAutoloadPath('lib/plugins/db');
-StudipAutoloader::addAutoloadPath('lib/plugins/engine');
-
-// Specialized folders
-StudipAutoloader::addAutoloadPath('lib/classes/admission');
-StudipAutoloader::addAutoloadPath('lib/classes/admission/userfilter');
-StudipAutoloader::addAutoloadPath('lib/classes/auth_plugins');
-StudipAutoloader::addAutoloadPath('lib/classes/calendar');
-
-StudipAutoloader::addAutoloadPath('lib/classes/cache', 'Studip\\Cache');
 class_alias(\Studip\Cache\Factory::class, 'StudipCacheFactory');
 class_alias(\Studip\Cache\Cache::class, 'StudipCache');
-
-StudipAutoloader::addAutoloadPath('lib/classes/exportdocument');
-StudipAutoloader::addAutoloadPath('lib/classes/forms');
-StudipAutoloader::addAutoloadPath('lib/classes/globalsearch');
-StudipAutoloader::addAutoloadPath('lib/classes/helpbar');
-StudipAutoloader::addAutoloadPath('lib/classes/librarysearch/resultparsers');
-StudipAutoloader::addAutoloadPath('lib/classes/librarysearch/searchmodules');
-StudipAutoloader::addAutoloadPath('lib/classes/librarysearch');
-StudipAutoloader::addAutoloadPath('lib/classes/searchtypes');
-StudipAutoloader::addAutoloadPath('lib/classes/sidebar');
-StudipAutoloader::addAutoloadPath('lib/classes/visibility');
-StudipAutoloader::addAutoloadPath('lib/classes/coursewizardsteps');
-StudipAutoloader::addAutoloadPath('lib/classes/wiki');
-
-StudipAutoloader::addAutoloadPath('lib/calendar');
-StudipAutoloader::addAutoloadPath('lib/calendar', 'Studip\\Calendar');
-StudipAutoloader::addAutoloadPath('lib/exceptions');
-StudipAutoloader::addAutoloadPath('lib/exceptions/resources');
-StudipAutoloader::addAutoloadPath('lib/exTpl', 'exTpl');
-StudipAutoloader::addAutoloadPath('lib/filesystem');
-StudipAutoloader::addAutoloadPath('lib/migrations');
-StudipAutoloader::addAutoloadPath('lib/modules');
-StudipAutoloader::addAutoloadPath('lib/navigation');
-StudipAutoloader::addAutoloadPath('lib/phplib');
-StudipAutoloader::addAutoloadPath('lib/raumzeit');
-StudipAutoloader::addAutoloadPath('lib/resources');
-StudipAutoloader::addAutoloadPath('lib/activities', 'Studip\\Activity');
-
-StudipAutoloader::addAutoloadPath('lib/calendar/lib');
-StudipAutoloader::addAutoloadPath('lib/elearning');
-StudipAutoloader::addAutoloadPath('lib/extern');
-StudipAutoloader::addAutoloadPath('lib/ilias_interface');
-
-// Flexi
-StudipAutoloader::addAutoloadPath('lib/flexi', 'Flexi');
 class_alias(Flexi\PhpTemplate::class, 'Flexi_PhpTemplate');
 class_alias(Flexi\Template::class, 'Flexi_Template');
 class_alias(Flexi\Factory::class, 'Flexi_TemplateFactory');
 class_alias(Flexi\TemplateNotFoundException::class, 'Flexi_TemplateNotFoundException');
-
-// Trails
-StudipAutoloader::addAutoloadPath('lib/trails', 'Trails');
 class_alias(Trails\Controller::class, 'Trails_Controller');
 class_alias(Trails\Dispatcher::class, 'Trails_Dispatcher');
 class_alias(Trails\Exception::class, 'Trails_Exception');
 class_alias(Trails\Flash::class, 'Trails_Flash');
 class_alias(Trails\Inflector::class, 'Trails_Inflector');
 class_alias(Trails\Response::class, 'Trails_Response');
-
 class_alias(Trails\Exceptions\DoubleRenderError::class, 'Trails_DoubleRenderError');
 class_alias(Trails\Exceptions\MissingFile::class, 'Trails_MissingFile');
 class_alias(Trails\Exceptions\RoutingError::class, 'Trails_RoutingError');
 class_alias(Trails\Exceptions\SessionRequiredException::class, 'Trails_SessionRequiredException');
 class_alias(Trails\Exceptions\UnknownAction::class, 'Trails_UnknownAction');
 class_alias(Trails\Exceptions\UnknownController::class, 'Trails_UnknownController');
-
-// Messy file names
-StudipAutoloader::addClassLookups([
-    'email_validation_class' => 'lib/phplib/email_validation.class.php',
-    'messaging'              => 'lib/messaging.inc.php',
-    'StudipPlugin'           => 'lib/plugins/core/StudIPPlugin.class.php',
-    'MVVController'          => 'app/controllers/module/mvv_controller.php'
-]);
-
-// Vendor
-StudipAutoloader::addClassLookups([
-    'PasswordHash' => 'vendor/phpass/PasswordHash.php',
-]);
-
-// XMLRpc
-StudipAutoloader::addClassLookup(
-    ['xmlrpcval', 'xmlrpcmsg', 'xmlrpcresp', 'xmlrpc_client'],
-    'composer/phpxmlrpc/phpxmlrpc/lib/xmlrpc.inc'
-);
-StudipAutoloader::addClassLookup(
-    ['xmlrpc_server'],
-    'composer/phpxmlrpc/phpxmlrpc/lib/xmlrpcs.inc'
-);
diff --git a/lib/bootstrap.php b/lib/bootstrap.php
index 8c618ff7d5a240468f9989088939f256c7e0d88d..478ca0e0c09ec6cc06bdb94a9d6edfca8b783403 100644
--- a/lib/bootstrap.php
+++ b/lib/bootstrap.php
@@ -224,7 +224,7 @@ if (Config::get()->CALENDAR_ENABLE) {
 }
 
 if (Config::get()->SOAP_ENABLE) {
-    require_once 'lib/soap/StudipSoapClient' . (Config::get()->SOAP_USE_PHP5 ? '_PHP5' : '' ) . '.class.php';
+    require_once 'lib/soap/StudipSoapClient' . (Config::get()->SOAP_USE_PHP5 ? '_PHP5' : '' ) . '.php';
 }
 
 if (Config::Get()->ILIAS_INTERFACE_ENABLE) {
diff --git a/lib/calendar/CalendarColumn.class.php b/lib/calendar/CalendarColumn.php
similarity index 100%
rename from lib/calendar/CalendarColumn.class.php
rename to lib/calendar/CalendarColumn.php
diff --git a/lib/calendar/CalendarView.class.php b/lib/calendar/CalendarView.php
similarity index 100%
rename from lib/calendar/CalendarView.class.php
rename to lib/calendar/CalendarView.php
diff --git a/lib/calendar/CalendarWeekView.class.php b/lib/calendar/CalendarWeekView.php
similarity index 100%
rename from lib/calendar/CalendarWeekView.class.php
rename to lib/calendar/CalendarWeekView.php
diff --git a/lib/classes/AdminCourseFilter.class.php b/lib/classes/AdminCourseFilter.php
similarity index 100%
rename from lib/classes/AdminCourseFilter.class.php
rename to lib/classes/AdminCourseFilter.php
diff --git a/lib/classes/Assets.class.php b/lib/classes/Assets.php
similarity index 100%
rename from lib/classes/Assets.class.php
rename to lib/classes/Assets.php
diff --git a/lib/classes/AuthorObject.class.php b/lib/classes/AuthorObject.php
similarity index 100%
rename from lib/classes/AuthorObject.class.php
rename to lib/classes/AuthorObject.php
diff --git a/lib/classes/AutoInsert.class.php b/lib/classes/AutoInsert.php
similarity index 100%
rename from lib/classes/AutoInsert.class.php
rename to lib/classes/AutoInsert.php
diff --git a/lib/classes/Avatar.class.php b/lib/classes/Avatar.php
similarity index 100%
rename from lib/classes/Avatar.class.php
rename to lib/classes/Avatar.php
diff --git a/lib/classes/BreadCrumb.class.php b/lib/classes/BreadCrumb.php
similarity index 100%
rename from lib/classes/BreadCrumb.class.php
rename to lib/classes/BreadCrumb.php
diff --git a/lib/classes/Button.class.php b/lib/classes/Button.php
similarity index 100%
rename from lib/classes/Button.class.php
rename to lib/classes/Button.php
diff --git a/lib/classes/CSVArrayObject.class.php b/lib/classes/CSVArrayObject.php
similarity index 100%
rename from lib/classes/CSVArrayObject.class.php
rename to lib/classes/CSVArrayObject.php
diff --git a/lib/classes/Color.class.php b/lib/classes/Color.php
similarity index 100%
rename from lib/classes/Color.class.php
rename to lib/classes/Color.php
diff --git a/lib/classes/Config.class.php b/lib/classes/Config.php
similarity index 100%
rename from lib/classes/Config.class.php
rename to lib/classes/Config.php
diff --git a/lib/classes/CourseAvatar.class.php b/lib/classes/CourseAvatar.php
similarity index 100%
rename from lib/classes/CourseAvatar.class.php
rename to lib/classes/CourseAvatar.php
diff --git a/lib/classes/CourseConfig.class.php b/lib/classes/CourseConfig.php
similarity index 100%
rename from lib/classes/CourseConfig.class.php
rename to lib/classes/CourseConfig.php
diff --git a/lib/classes/CronJob.class.php b/lib/classes/CronJob.php
similarity index 100%
rename from lib/classes/CronJob.class.php
rename to lib/classes/CronJob.php
diff --git a/lib/classes/CronjobScheduler.class.php b/lib/classes/CronjobScheduler.php
similarity index 100%
rename from lib/classes/CronjobScheduler.class.php
rename to lib/classes/CronjobScheduler.php
diff --git a/lib/classes/DBManager.class.php b/lib/classes/DBManager.php
similarity index 100%
rename from lib/classes/DBManager.class.php
rename to lib/classes/DBManager.php
diff --git a/lib/classes/DataFieldBoolEntry.class.php b/lib/classes/DataFieldBoolEntry.php
similarity index 100%
rename from lib/classes/DataFieldBoolEntry.class.php
rename to lib/classes/DataFieldBoolEntry.php
diff --git a/lib/classes/DataFieldComboEntry.class.php b/lib/classes/DataFieldComboEntry.php
similarity index 100%
rename from lib/classes/DataFieldComboEntry.class.php
rename to lib/classes/DataFieldComboEntry.php
diff --git a/lib/classes/DataFieldDateEntry.class.php b/lib/classes/DataFieldDateEntry.php
similarity index 100%
rename from lib/classes/DataFieldDateEntry.class.php
rename to lib/classes/DataFieldDateEntry.php
diff --git a/lib/classes/DataFieldEmailEntry.class.php b/lib/classes/DataFieldEmailEntry.php
similarity index 100%
rename from lib/classes/DataFieldEmailEntry.class.php
rename to lib/classes/DataFieldEmailEntry.php
diff --git a/lib/classes/DataFieldEntry.class.php b/lib/classes/DataFieldEntry.php
similarity index 100%
rename from lib/classes/DataFieldEntry.class.php
rename to lib/classes/DataFieldEntry.php
diff --git a/lib/classes/DataFieldLinkEntry.class.php b/lib/classes/DataFieldLinkEntry.php
similarity index 100%
rename from lib/classes/DataFieldLinkEntry.class.php
rename to lib/classes/DataFieldLinkEntry.php
diff --git a/lib/classes/DataFieldPhoneEntry.class.php b/lib/classes/DataFieldPhoneEntry.php
similarity index 100%
rename from lib/classes/DataFieldPhoneEntry.class.php
rename to lib/classes/DataFieldPhoneEntry.php
diff --git a/lib/classes/DataFieldRadioEntry.class.php b/lib/classes/DataFieldRadioEntry.php
similarity index 100%
rename from lib/classes/DataFieldRadioEntry.class.php
rename to lib/classes/DataFieldRadioEntry.php
diff --git a/lib/classes/DataFieldSelectboxEntry.class.php b/lib/classes/DataFieldSelectboxEntry.php
similarity index 100%
rename from lib/classes/DataFieldSelectboxEntry.class.php
rename to lib/classes/DataFieldSelectboxEntry.php
diff --git a/lib/classes/DataFieldSelectboxMultipleEntry.class.php b/lib/classes/DataFieldSelectboxMultipleEntry.php
similarity index 100%
rename from lib/classes/DataFieldSelectboxMultipleEntry.class.php
rename to lib/classes/DataFieldSelectboxMultipleEntry.php
diff --git a/lib/classes/DataFieldTextareaEntry.class.php b/lib/classes/DataFieldTextareaEntry.php
similarity index 100%
rename from lib/classes/DataFieldTextareaEntry.class.php
rename to lib/classes/DataFieldTextareaEntry.php
diff --git a/lib/classes/DataFieldTextareai18nEntry.class.php b/lib/classes/DataFieldTextareai18nEntry.php
similarity index 100%
rename from lib/classes/DataFieldTextareai18nEntry.class.php
rename to lib/classes/DataFieldTextareai18nEntry.php
diff --git a/lib/classes/DataFieldTextlineEntry.class.php b/lib/classes/DataFieldTextlineEntry.php
similarity index 100%
rename from lib/classes/DataFieldTextlineEntry.class.php
rename to lib/classes/DataFieldTextlineEntry.php
diff --git a/lib/classes/DataFieldTextlinei18nEntry.class.php b/lib/classes/DataFieldTextlinei18nEntry.php
similarity index 100%
rename from lib/classes/DataFieldTextlinei18nEntry.class.php
rename to lib/classes/DataFieldTextlinei18nEntry.php
diff --git a/lib/classes/DataFieldTextmarkupEntry.class.php b/lib/classes/DataFieldTextmarkupEntry.php
similarity index 100%
rename from lib/classes/DataFieldTextmarkupEntry.class.php
rename to lib/classes/DataFieldTextmarkupEntry.php
diff --git a/lib/classes/DataFieldTextmarkupi18nEntry.class.php b/lib/classes/DataFieldTextmarkupi18nEntry.php
similarity index 100%
rename from lib/classes/DataFieldTextmarkupi18nEntry.class.php
rename to lib/classes/DataFieldTextmarkupi18nEntry.php
diff --git a/lib/classes/DataFieldTimeEntry.class.php b/lib/classes/DataFieldTimeEntry.php
similarity index 100%
rename from lib/classes/DataFieldTimeEntry.class.php
rename to lib/classes/DataFieldTimeEntry.php
diff --git a/lib/classes/DatabaseObject.class.php b/lib/classes/DatabaseObject.php
similarity index 100%
rename from lib/classes/DatabaseObject.class.php
rename to lib/classes/DatabaseObject.php
diff --git a/lib/classes/DateFormatter.class.php b/lib/classes/DateFormatter.php
similarity index 100%
rename from lib/classes/DateFormatter.class.php
rename to lib/classes/DateFormatter.php
diff --git a/lib/classes/DbSnapshot.class.php b/lib/classes/DbSnapshot.php
similarity index 100%
rename from lib/classes/DbSnapshot.class.php
rename to lib/classes/DbSnapshot.php
diff --git a/lib/classes/DbView.class.php b/lib/classes/DbView.php
similarity index 100%
rename from lib/classes/DbView.class.php
rename to lib/classes/DbView.php
diff --git a/lib/classes/Event.interface.php b/lib/classes/Event.php
similarity index 100%
rename from lib/classes/Event.interface.php
rename to lib/classes/Event.php
diff --git a/lib/classes/Feedback.class.php b/lib/classes/Feedback.php
similarity index 100%
rename from lib/classes/Feedback.class.php
rename to lib/classes/Feedback.php
diff --git a/lib/classes/FeedbackRange.interface.php b/lib/classes/FeedbackRange.php
similarity index 100%
rename from lib/classes/FeedbackRange.interface.php
rename to lib/classes/FeedbackRange.php
diff --git a/lib/classes/FileLock.class.php b/lib/classes/FileLock.php
similarity index 100%
rename from lib/classes/FileLock.class.php
rename to lib/classes/FileLock.php
diff --git a/lib/classes/Fullcalendar.class.php b/lib/classes/Fullcalendar.php
similarity index 100%
rename from lib/classes/Fullcalendar.class.php
rename to lib/classes/Fullcalendar.php
diff --git a/lib/classes/Icon.class.php b/lib/classes/Icon.php
similarity index 100%
rename from lib/classes/Icon.class.php
rename to lib/classes/Icon.php
diff --git a/lib/classes/InstituteAvatar.class.php b/lib/classes/InstituteAvatar.php
similarity index 100%
rename from lib/classes/InstituteAvatar.class.php
rename to lib/classes/InstituteAvatar.php
diff --git a/lib/classes/InstituteCalendarHelper.class.php b/lib/classes/InstituteCalendarHelper.php
similarity index 100%
rename from lib/classes/InstituteCalendarHelper.class.php
rename to lib/classes/InstituteCalendarHelper.php
diff --git a/lib/classes/InstituteConfig.class.php b/lib/classes/InstituteConfig.php
similarity index 100%
rename from lib/classes/InstituteConfig.class.php
rename to lib/classes/InstituteConfig.php
diff --git a/lib/classes/Interactable.class.php b/lib/classes/Interactable.php
similarity index 100%
rename from lib/classes/Interactable.class.php
rename to lib/classes/Interactable.php
diff --git a/lib/classes/JSONArrayObject.class.php b/lib/classes/JSONArrayObject.php
similarity index 100%
rename from lib/classes/JSONArrayObject.class.php
rename to lib/classes/JSONArrayObject.php
diff --git a/lib/classes/LayoutMessage.interface.php b/lib/classes/LayoutMessage.php
similarity index 100%
rename from lib/classes/LayoutMessage.interface.php
rename to lib/classes/LayoutMessage.php
diff --git a/lib/classes/LinkButton.class.php b/lib/classes/LinkButton.php
similarity index 100%
rename from lib/classes/LinkButton.class.php
rename to lib/classes/LinkButton.php
diff --git a/lib/classes/LockRules.class.php b/lib/classes/LockRules.php
similarity index 100%
rename from lib/classes/LockRules.class.php
rename to lib/classes/LockRules.php
diff --git a/lib/classes/Loggable.class.php b/lib/classes/Loggable.php
similarity index 100%
rename from lib/classes/Loggable.class.php
rename to lib/classes/Loggable.php
diff --git a/lib/classes/MVV.class.php b/lib/classes/MVV.php
similarity index 100%
rename from lib/classes/MVV.class.php
rename to lib/classes/MVV.php
diff --git a/lib/classes/Markup.class.php b/lib/classes/Markup.php
similarity index 100%
rename from lib/classes/Markup.class.php
rename to lib/classes/Markup.php
diff --git a/lib/classes/MessageBox.class.php b/lib/classes/MessageBox.php
similarity index 100%
rename from lib/classes/MessageBox.class.php
rename to lib/classes/MessageBox.php
diff --git a/lib/classes/ModulesNotification.class.php b/lib/classes/ModulesNotification.php
similarity index 100%
rename from lib/classes/ModulesNotification.class.php
rename to lib/classes/ModulesNotification.php
diff --git a/lib/classes/MultiDimArrayObject.class.php b/lib/classes/MultiDimArrayObject.php
similarity index 100%
rename from lib/classes/MultiDimArrayObject.class.php
rename to lib/classes/MultiDimArrayObject.php
diff --git a/lib/classes/MultiPersonSearch.class.php b/lib/classes/MultiPersonSearch.php
similarity index 100%
rename from lib/classes/MultiPersonSearch.class.php
rename to lib/classes/MultiPersonSearch.php
diff --git a/lib/classes/NotificationCenter.class.php b/lib/classes/NotificationCenter.php
similarity index 100%
rename from lib/classes/NotificationCenter.class.php
rename to lib/classes/NotificationCenter.php
diff --git a/lib/classes/PrivacyObject.interface.php b/lib/classes/PrivacyObject.php
similarity index 100%
rename from lib/classes/PrivacyObject.interface.php
rename to lib/classes/PrivacyObject.php
diff --git a/lib/classes/QuestionType.interface.php b/lib/classes/QuestionType.php
similarity index 100%
rename from lib/classes/QuestionType.interface.php
rename to lib/classes/QuestionType.php
diff --git a/lib/classes/QuickSearch.class.php b/lib/classes/QuickSearch.php
similarity index 100%
rename from lib/classes/QuickSearch.class.php
rename to lib/classes/QuickSearch.php
diff --git a/lib/classes/Range.interface.php b/lib/classes/Range.php
similarity index 100%
rename from lib/classes/Range.interface.php
rename to lib/classes/Range.php
diff --git a/lib/classes/RangeConfig.class.php b/lib/classes/RangeConfig.php
similarity index 100%
rename from lib/classes/RangeConfig.class.php
rename to lib/classes/RangeConfig.php
diff --git a/lib/classes/RangeTreeObject.class.php b/lib/classes/RangeTreeObject.php
similarity index 100%
rename from lib/classes/RangeTreeObject.class.php
rename to lib/classes/RangeTreeObject.php
diff --git a/lib/classes/RangeTreeObjectFak.class.php b/lib/classes/RangeTreeObjectFak.php
similarity index 100%
rename from lib/classes/RangeTreeObjectFak.class.php
rename to lib/classes/RangeTreeObjectFak.php
diff --git a/lib/classes/RangeTreeObjectInst.class.php b/lib/classes/RangeTreeObjectInst.php
similarity index 100%
rename from lib/classes/RangeTreeObjectInst.class.php
rename to lib/classes/RangeTreeObjectInst.php
diff --git a/lib/classes/Request.class.php b/lib/classes/Request.php
similarity index 100%
rename from lib/classes/Request.class.php
rename to lib/classes/Request.php
diff --git a/lib/classes/ResetButton.class.php b/lib/classes/ResetButton.php
similarity index 100%
rename from lib/classes/ResetButton.class.php
rename to lib/classes/ResetButton.php
diff --git a/lib/classes/Score.class.php b/lib/classes/Score.php
similarity index 100%
rename from lib/classes/Score.class.php
rename to lib/classes/Score.php
diff --git a/lib/classes/SemBrowse.class.php b/lib/classes/SemBrowse.php
similarity index 100%
rename from lib/classes/SemBrowse.class.php
rename to lib/classes/SemBrowse.php
diff --git a/lib/classes/SemClass.class.php b/lib/classes/SemClass.php
similarity index 100%
rename from lib/classes/SemClass.class.php
rename to lib/classes/SemClass.php
diff --git a/lib/classes/SemType.class.php b/lib/classes/SemType.php
similarity index 100%
rename from lib/classes/SemType.class.php
rename to lib/classes/SemType.php
diff --git a/lib/classes/Seminar.class.php b/lib/classes/Seminar.php
similarity index 100%
rename from lib/classes/Seminar.class.php
rename to lib/classes/Seminar.php
diff --git a/lib/classes/SeminarCategories.class.php b/lib/classes/SeminarCategories.php
similarity index 100%
rename from lib/classes/SeminarCategories.class.php
rename to lib/classes/SeminarCategories.php
diff --git a/lib/classes/SessionDecoder.class.php b/lib/classes/SessionDecoder.php
similarity index 100%
rename from lib/classes/SessionDecoder.class.php
rename to lib/classes/SessionDecoder.php
diff --git a/lib/classes/SimpleCollection.class.php b/lib/classes/SimpleCollection.php
similarity index 100%
rename from lib/classes/SimpleCollection.class.php
rename to lib/classes/SimpleCollection.php
diff --git a/lib/classes/SimpleORMap.class.php b/lib/classes/SimpleORMap.php
similarity index 100%
rename from lib/classes/SimpleORMap.class.php
rename to lib/classes/SimpleORMap.php
diff --git a/lib/classes/SimpleORMapCollection.class.php b/lib/classes/SimpleORMapCollection.php
similarity index 100%
rename from lib/classes/SimpleORMapCollection.class.php
rename to lib/classes/SimpleORMapCollection.php
diff --git a/lib/classes/StudipArrayObject.class.php b/lib/classes/StudipArrayObject.php
similarity index 100%
rename from lib/classes/StudipArrayObject.class.php
rename to lib/classes/StudipArrayObject.php
diff --git a/lib/classes/StudipForm.class.php b/lib/classes/StudipForm.php
similarity index 100%
rename from lib/classes/StudipForm.class.php
rename to lib/classes/StudipForm.php
diff --git a/lib/classes/StudipItem.interface.php b/lib/classes/StudipItem.php
similarity index 100%
rename from lib/classes/StudipItem.interface.php
rename to lib/classes/StudipItem.php
diff --git a/lib/classes/StudipKing.class.php b/lib/classes/StudipKing.php
similarity index 100%
rename from lib/classes/StudipKing.class.php
rename to lib/classes/StudipKing.php
diff --git a/lib/classes/StudipLink.class.php b/lib/classes/StudipLink.php
similarity index 100%
rename from lib/classes/StudipLink.class.php
rename to lib/classes/StudipLink.php
diff --git a/lib/classes/StudipLock.class.php b/lib/classes/StudipLock.php
similarity index 100%
rename from lib/classes/StudipLock.class.php
rename to lib/classes/StudipLock.php
diff --git a/lib/classes/StudipLog.class.php b/lib/classes/StudipLog.php
similarity index 100%
rename from lib/classes/StudipLog.class.php
rename to lib/classes/StudipLog.php
diff --git a/lib/classes/StudipLvgruppeSelection.class.php b/lib/classes/StudipLvgruppeSelection.php
similarity index 100%
rename from lib/classes/StudipLvgruppeSelection.class.php
rename to lib/classes/StudipLvgruppeSelection.php
diff --git a/lib/classes/StudipMail.class.php b/lib/classes/StudipMail.php
similarity index 100%
rename from lib/classes/StudipMail.class.php
rename to lib/classes/StudipMail.php
diff --git a/lib/classes/StudipObject.class.php b/lib/classes/StudipObject.php
similarity index 100%
rename from lib/classes/StudipObject.class.php
rename to lib/classes/StudipObject.php
diff --git a/lib/classes/StudipPDO.class.php b/lib/classes/StudipPDO.php
similarity index 100%
rename from lib/classes/StudipPDO.class.php
rename to lib/classes/StudipPDO.php
diff --git a/lib/classes/StudipRangeTree.class.php b/lib/classes/StudipRangeTree.php
similarity index 100%
rename from lib/classes/StudipRangeTree.class.php
rename to lib/classes/StudipRangeTree.php
diff --git a/lib/classes/StudipRangeTreeView.class.php b/lib/classes/StudipRangeTreeView.php
similarity index 100%
rename from lib/classes/StudipRangeTreeView.class.php
rename to lib/classes/StudipRangeTreeView.php
diff --git a/lib/classes/StudipRangeTreeViewAdmin.class.php b/lib/classes/StudipRangeTreeViewAdmin.php
similarity index 100%
rename from lib/classes/StudipRangeTreeViewAdmin.class.php
rename to lib/classes/StudipRangeTreeViewAdmin.php
diff --git a/lib/classes/StudipSemRangeTreeViewSimple.class.php b/lib/classes/StudipSemRangeTreeViewSimple.php
similarity index 100%
rename from lib/classes/StudipSemRangeTreeViewSimple.class.php
rename to lib/classes/StudipSemRangeTreeViewSimple.php
diff --git a/lib/classes/StudipSemSearch.class.php b/lib/classes/StudipSemSearch.php
similarity index 100%
rename from lib/classes/StudipSemSearch.class.php
rename to lib/classes/StudipSemSearch.php
diff --git a/lib/classes/StudipSemSearchHelper.class.php b/lib/classes/StudipSemSearchHelper.php
similarity index 100%
rename from lib/classes/StudipSemSearchHelper.class.php
rename to lib/classes/StudipSemSearchHelper.php
diff --git a/lib/classes/StudipSemTree.class.php b/lib/classes/StudipSemTree.php
similarity index 100%
rename from lib/classes/StudipSemTree.class.php
rename to lib/classes/StudipSemTree.php
diff --git a/lib/classes/StudipSemTreeSearch.class.php b/lib/classes/StudipSemTreeSearch.php
similarity index 100%
rename from lib/classes/StudipSemTreeSearch.class.php
rename to lib/classes/StudipSemTreeSearch.php
diff --git a/lib/classes/StudipSemTreeView.class.php b/lib/classes/StudipSemTreeView.php
similarity index 100%
rename from lib/classes/StudipSemTreeView.class.php
rename to lib/classes/StudipSemTreeView.php
diff --git a/lib/classes/StudipSemTreeViewAdmin.class.php b/lib/classes/StudipSemTreeViewAdmin.php
similarity index 100%
rename from lib/classes/StudipSemTreeViewAdmin.class.php
rename to lib/classes/StudipSemTreeViewAdmin.php
diff --git a/lib/classes/StudipSemTreeViewSimple.class.php b/lib/classes/StudipSemTreeViewSimple.php
similarity index 100%
rename from lib/classes/StudipSemTreeViewSimple.class.php
rename to lib/classes/StudipSemTreeViewSimple.php
diff --git a/lib/classes/StudipStudyAreaSelection.class.php b/lib/classes/StudipStudyAreaSelection.php
similarity index 100%
rename from lib/classes/StudipStudyAreaSelection.class.php
rename to lib/classes/StudipStudyAreaSelection.php
diff --git a/lib/classes/StudygroupAvatar.class.php b/lib/classes/StudygroupAvatar.php
similarity index 100%
rename from lib/classes/StudygroupAvatar.class.php
rename to lib/classes/StudygroupAvatar.php
diff --git a/lib/classes/TreeAbstract.class.php b/lib/classes/TreeAbstract.php
similarity index 100%
rename from lib/classes/TreeAbstract.class.php
rename to lib/classes/TreeAbstract.php
diff --git a/lib/classes/TreeView.class.php b/lib/classes/TreeView.php
similarity index 100%
rename from lib/classes/TreeView.class.php
rename to lib/classes/TreeView.php
diff --git a/lib/classes/UpdateInformation.class.php b/lib/classes/UpdateInformation.php
similarity index 100%
rename from lib/classes/UpdateInformation.class.php
rename to lib/classes/UpdateInformation.php
diff --git a/lib/classes/UserConfig.class.php b/lib/classes/UserConfig.php
similarity index 100%
rename from lib/classes/UserConfig.class.php
rename to lib/classes/UserConfig.php
diff --git a/lib/classes/UserLookup.class.php b/lib/classes/UserLookup.php
similarity index 100%
rename from lib/classes/UserLookup.class.php
rename to lib/classes/UserLookup.php
diff --git a/lib/classes/UserManagement.class.php b/lib/classes/UserManagement.php
similarity index 100%
rename from lib/classes/UserManagement.class.php
rename to lib/classes/UserManagement.php
diff --git a/lib/classes/admission/AdmissionAlgorithm.class.php b/lib/classes/admission/AdmissionAlgorithm.php
similarity index 100%
rename from lib/classes/admission/AdmissionAlgorithm.class.php
rename to lib/classes/admission/AdmissionAlgorithm.php
diff --git a/lib/classes/admission/AdmissionPriority.class.php b/lib/classes/admission/AdmissionPriority.php
similarity index 100%
rename from lib/classes/admission/AdmissionPriority.class.php
rename to lib/classes/admission/AdmissionPriority.php
diff --git a/lib/classes/admission/AdmissionRule.class.php b/lib/classes/admission/AdmissionRule.php
similarity index 100%
rename from lib/classes/admission/AdmissionRule.class.php
rename to lib/classes/admission/AdmissionRule.php
diff --git a/lib/classes/admission/AdmissionUserList.class.php b/lib/classes/admission/AdmissionUserList.php
similarity index 100%
rename from lib/classes/admission/AdmissionUserList.class.php
rename to lib/classes/admission/AdmissionUserList.php
diff --git a/lib/classes/admission/CourseSet.class.php b/lib/classes/admission/CourseSet.php
similarity index 100%
rename from lib/classes/admission/CourseSet.class.php
rename to lib/classes/admission/CourseSet.php
diff --git a/lib/classes/admission/RandomAlgorithm.class.php b/lib/classes/admission/RandomAlgorithm.php
similarity index 100%
rename from lib/classes/admission/RandomAlgorithm.class.php
rename to lib/classes/admission/RandomAlgorithm.php
diff --git a/lib/classes/admission/UserFilter.class.php b/lib/classes/admission/UserFilter.php
similarity index 100%
rename from lib/classes/admission/UserFilter.class.php
rename to lib/classes/admission/UserFilter.php
diff --git a/lib/classes/admission/UserFilterField.class.php b/lib/classes/admission/UserFilterField.php
similarity index 100%
rename from lib/classes/admission/UserFilterField.class.php
rename to lib/classes/admission/UserFilterField.php
diff --git a/lib/classes/admission/userfilter/DatafieldCondition.class.php b/lib/classes/admission/userfilter/DatafieldCondition.php
similarity index 100%
rename from lib/classes/admission/userfilter/DatafieldCondition.class.php
rename to lib/classes/admission/userfilter/DatafieldCondition.php
diff --git a/lib/classes/admission/userfilter/DegreeCondition.class.php b/lib/classes/admission/userfilter/DegreeCondition.php
similarity index 100%
rename from lib/classes/admission/userfilter/DegreeCondition.class.php
rename to lib/classes/admission/userfilter/DegreeCondition.php
diff --git a/lib/classes/admission/userfilter/PermissionCondition.class.php b/lib/classes/admission/userfilter/PermissionCondition.php
similarity index 100%
rename from lib/classes/admission/userfilter/PermissionCondition.class.php
rename to lib/classes/admission/userfilter/PermissionCondition.php
diff --git a/lib/classes/admission/userfilter/SemesterOfStudyCondition.class.php b/lib/classes/admission/userfilter/SemesterOfStudyCondition.php
similarity index 100%
rename from lib/classes/admission/userfilter/SemesterOfStudyCondition.class.php
rename to lib/classes/admission/userfilter/SemesterOfStudyCondition.php
diff --git a/lib/classes/admission/userfilter/StgteilVersionCondition.class.php b/lib/classes/admission/userfilter/StgteilVersionCondition.php
similarity index 100%
rename from lib/classes/admission/userfilter/StgteilVersionCondition.class.php
rename to lib/classes/admission/userfilter/StgteilVersionCondition.php
diff --git a/lib/classes/admission/userfilter/SubjectCondition.class.php b/lib/classes/admission/userfilter/SubjectCondition.php
similarity index 100%
rename from lib/classes/admission/userfilter/SubjectCondition.class.php
rename to lib/classes/admission/userfilter/SubjectCondition.php
diff --git a/lib/classes/admission/userfilter/SubjectConditionAny.class.php b/lib/classes/admission/userfilter/SubjectConditionAny.php
similarity index 100%
rename from lib/classes/admission/userfilter/SubjectConditionAny.class.php
rename to lib/classes/admission/userfilter/SubjectConditionAny.php
diff --git a/lib/classes/auth_plugins/StudipAuthAbstract.class.php b/lib/classes/auth_plugins/StudipAuthAbstract.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthAbstract.class.php
rename to lib/classes/auth_plugins/StudipAuthAbstract.php
diff --git a/lib/classes/auth_plugins/StudipAuthCAS.class.php b/lib/classes/auth_plugins/StudipAuthCAS.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthCAS.class.php
rename to lib/classes/auth_plugins/StudipAuthCAS.php
diff --git a/lib/classes/auth_plugins/StudipAuthIP.class.php b/lib/classes/auth_plugins/StudipAuthIP.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthIP.class.php
rename to lib/classes/auth_plugins/StudipAuthIP.php
diff --git a/lib/classes/auth_plugins/StudipAuthLTI.class.php b/lib/classes/auth_plugins/StudipAuthLTI.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthLTI.class.php
rename to lib/classes/auth_plugins/StudipAuthLTI.php
diff --git a/lib/classes/auth_plugins/StudipAuthLdap.class.php b/lib/classes/auth_plugins/StudipAuthLdap.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthLdap.class.php
rename to lib/classes/auth_plugins/StudipAuthLdap.php
diff --git a/lib/classes/auth_plugins/StudipAuthLdapReadAndBind.class.php b/lib/classes/auth_plugins/StudipAuthLdapReadAndBind.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthLdapReadAndBind.class.php
rename to lib/classes/auth_plugins/StudipAuthLdapReadAndBind.php
diff --git a/lib/classes/auth_plugins/StudipAuthOIDC.class.php b/lib/classes/auth_plugins/StudipAuthOIDC.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthOIDC.class.php
rename to lib/classes/auth_plugins/StudipAuthOIDC.php
diff --git a/lib/classes/auth_plugins/StudipAuthSSO.class.php b/lib/classes/auth_plugins/StudipAuthSSO.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthSSO.class.php
rename to lib/classes/auth_plugins/StudipAuthSSO.php
diff --git a/lib/classes/auth_plugins/StudipAuthShib.class.php b/lib/classes/auth_plugins/StudipAuthShib.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthShib.class.php
rename to lib/classes/auth_plugins/StudipAuthShib.php
diff --git a/lib/classes/auth_plugins/StudipAuthStandard.class.php b/lib/classes/auth_plugins/StudipAuthStandard.php
similarity index 100%
rename from lib/classes/auth_plugins/StudipAuthStandard.class.php
rename to lib/classes/auth_plugins/StudipAuthStandard.php
diff --git a/lib/classes/cache/Cache.class.php b/lib/classes/cache/Cache.php
similarity index 100%
rename from lib/classes/cache/Cache.class.php
rename to lib/classes/cache/Cache.php
diff --git a/lib/classes/cache/DbCache.class.php b/lib/classes/cache/DbCache.php
similarity index 100%
rename from lib/classes/cache/DbCache.class.php
rename to lib/classes/cache/DbCache.php
diff --git a/lib/classes/cache/Factory.class.php b/lib/classes/cache/Factory.php
similarity index 100%
rename from lib/classes/cache/Factory.class.php
rename to lib/classes/cache/Factory.php
diff --git a/lib/classes/cache/FileCache.class.php b/lib/classes/cache/FileCache.php
similarity index 100%
rename from lib/classes/cache/FileCache.class.php
rename to lib/classes/cache/FileCache.php
diff --git a/lib/classes/cache/Item.class.php b/lib/classes/cache/Item.php
similarity index 100%
rename from lib/classes/cache/Item.class.php
rename to lib/classes/cache/Item.php
diff --git a/lib/classes/cache/MemcachedCache.class.php b/lib/classes/cache/MemcachedCache.php
similarity index 100%
rename from lib/classes/cache/MemcachedCache.class.php
rename to lib/classes/cache/MemcachedCache.php
diff --git a/lib/classes/cache/MemoryCache.class.php b/lib/classes/cache/MemoryCache.php
similarity index 100%
rename from lib/classes/cache/MemoryCache.class.php
rename to lib/classes/cache/MemoryCache.php
diff --git a/lib/classes/cache/Proxy.class.php b/lib/classes/cache/Proxy.php
similarity index 100%
rename from lib/classes/cache/Proxy.class.php
rename to lib/classes/cache/Proxy.php
diff --git a/lib/classes/cache/RedisCache.class.php b/lib/classes/cache/RedisCache.php
similarity index 100%
rename from lib/classes/cache/RedisCache.class.php
rename to lib/classes/cache/RedisCache.php
diff --git a/lib/classes/cache/Wrapper.class.php b/lib/classes/cache/Wrapper.php
similarity index 100%
rename from lib/classes/cache/Wrapper.class.php
rename to lib/classes/cache/Wrapper.php
diff --git a/lib/classes/calendar/EventData.class.php b/lib/classes/calendar/EventData.php
similarity index 100%
rename from lib/classes/calendar/EventData.class.php
rename to lib/classes/calendar/EventData.php
diff --git a/lib/classes/calendar/EventSource.interface.php b/lib/classes/calendar/EventSource.php
similarity index 100%
rename from lib/classes/calendar/EventSource.interface.php
rename to lib/classes/calendar/EventSource.php
diff --git a/lib/classes/calendar/ICalendarExport.class.php b/lib/classes/calendar/ICalendarExport.php
similarity index 100%
rename from lib/classes/calendar/ICalendarExport.class.php
rename to lib/classes/calendar/ICalendarExport.php
diff --git a/lib/classes/calendar/ICalendarImport.class.php b/lib/classes/calendar/ICalendarImport.php
similarity index 100%
rename from lib/classes/calendar/ICalendarImport.class.php
rename to lib/classes/calendar/ICalendarImport.php
diff --git a/lib/classes/calendar/Owner.interface.php b/lib/classes/calendar/Owner.php
similarity index 100%
rename from lib/classes/calendar/Owner.interface.php
rename to lib/classes/calendar/Owner.php
diff --git a/lib/classes/exportdocument/ExportDocument.interface.php b/lib/classes/exportdocument/ExportDocument.php
similarity index 100%
rename from lib/classes/exportdocument/ExportDocument.interface.php
rename to lib/classes/exportdocument/ExportDocument.php
diff --git a/lib/classes/exportdocument/ExportPDF.class.php b/lib/classes/exportdocument/ExportPDF.php
similarity index 100%
rename from lib/classes/exportdocument/ExportPDF.class.php
rename to lib/classes/exportdocument/ExportPDF.php
diff --git a/lib/classes/librarysearch/LibraryDocument.class.php b/lib/classes/librarysearch/LibraryDocument.php
similarity index 100%
rename from lib/classes/librarysearch/LibraryDocument.class.php
rename to lib/classes/librarysearch/LibraryDocument.php
diff --git a/lib/classes/librarysearch/LibraryResultParser.interface.php b/lib/classes/librarysearch/LibraryResultParser.php
similarity index 100%
rename from lib/classes/librarysearch/LibraryResultParser.interface.php
rename to lib/classes/librarysearch/LibraryResultParser.php
diff --git a/lib/classes/librarysearch/LibrarySearch.class.php b/lib/classes/librarysearch/LibrarySearch.php
similarity index 100%
rename from lib/classes/librarysearch/LibrarySearch.class.php
rename to lib/classes/librarysearch/LibrarySearch.php
diff --git a/lib/classes/librarysearch/LibrarySearchManager.class.php b/lib/classes/librarysearch/LibrarySearchManager.php
similarity index 100%
rename from lib/classes/librarysearch/LibrarySearchManager.class.php
rename to lib/classes/librarysearch/LibrarySearchManager.php
diff --git a/lib/classes/librarysearch/resultparsers/BASELibraryResultParser.class.php b/lib/classes/librarysearch/resultparsers/BASELibraryResultParser.php
similarity index 100%
rename from lib/classes/librarysearch/resultparsers/BASELibraryResultParser.class.php
rename to lib/classes/librarysearch/resultparsers/BASELibraryResultParser.php
diff --git a/lib/classes/librarysearch/resultparsers/K10PlusLibraryResultParser.class.php b/lib/classes/librarysearch/resultparsers/K10PlusLibraryResultParser.php
similarity index 100%
rename from lib/classes/librarysearch/resultparsers/K10PlusLibraryResultParser.class.php
rename to lib/classes/librarysearch/resultparsers/K10PlusLibraryResultParser.php
diff --git a/lib/classes/librarysearch/resultparsers/MarcxmlLibraryResultParser.class.php b/lib/classes/librarysearch/resultparsers/MarcxmlLibraryResultParser.php
similarity index 100%
rename from lib/classes/librarysearch/resultparsers/MarcxmlLibraryResultParser.class.php
rename to lib/classes/librarysearch/resultparsers/MarcxmlLibraryResultParser.php
diff --git a/lib/classes/librarysearch/resultparsers/SRULibraryResultParser.class.php b/lib/classes/librarysearch/resultparsers/SRULibraryResultParser.php
similarity index 100%
rename from lib/classes/librarysearch/resultparsers/SRULibraryResultParser.class.php
rename to lib/classes/librarysearch/resultparsers/SRULibraryResultParser.php
diff --git a/lib/classes/librarysearch/searchmodules/BASELibrarySearch.class.php b/lib/classes/librarysearch/searchmodules/BASELibrarySearch.php
similarity index 100%
rename from lib/classes/librarysearch/searchmodules/BASELibrarySearch.class.php
rename to lib/classes/librarysearch/searchmodules/BASELibrarySearch.php
diff --git a/lib/classes/librarysearch/searchmodules/K10PlusZentralLibrarySearch.class.php b/lib/classes/librarysearch/searchmodules/K10PlusZentralLibrarySearch.php
similarity index 100%
rename from lib/classes/librarysearch/searchmodules/K10PlusZentralLibrarySearch.class.php
rename to lib/classes/librarysearch/searchmodules/K10PlusZentralLibrarySearch.php
diff --git a/lib/classes/librarysearch/searchmodules/SRULibrarySearch.class.php b/lib/classes/librarysearch/searchmodules/SRULibrarySearch.php
similarity index 100%
rename from lib/classes/librarysearch/searchmodules/SRULibrarySearch.class.php
rename to lib/classes/librarysearch/searchmodules/SRULibrarySearch.php
diff --git a/lib/classes/searchtypes/MyCoursesSearch.class.php b/lib/classes/searchtypes/MyCoursesSearch.php
similarity index 100%
rename from lib/classes/searchtypes/MyCoursesSearch.class.php
rename to lib/classes/searchtypes/MyCoursesSearch.php
diff --git a/lib/classes/searchtypes/PermissionSearch.class.php b/lib/classes/searchtypes/PermissionSearch.php
similarity index 100%
rename from lib/classes/searchtypes/PermissionSearch.class.php
rename to lib/classes/searchtypes/PermissionSearch.php
diff --git a/lib/classes/searchtypes/RangeSearch.class.php b/lib/classes/searchtypes/RangeSearch.php
similarity index 100%
rename from lib/classes/searchtypes/RangeSearch.class.php
rename to lib/classes/searchtypes/RangeSearch.php
diff --git a/lib/classes/searchtypes/ResourceSearch.class.php b/lib/classes/searchtypes/ResourceSearch.php
similarity index 100%
rename from lib/classes/searchtypes/ResourceSearch.class.php
rename to lib/classes/searchtypes/ResourceSearch.php
diff --git a/lib/classes/searchtypes/RoomSearch.class.php b/lib/classes/searchtypes/RoomSearch.php
similarity index 100%
rename from lib/classes/searchtypes/RoomSearch.class.php
rename to lib/classes/searchtypes/RoomSearch.php
diff --git a/lib/classes/searchtypes/SQLSearch.class.php b/lib/classes/searchtypes/SQLSearch.php
similarity index 100%
rename from lib/classes/searchtypes/SQLSearch.class.php
rename to lib/classes/searchtypes/SQLSearch.php
diff --git a/lib/classes/searchtypes/SearchType.class.php b/lib/classes/searchtypes/SearchType.php
similarity index 100%
rename from lib/classes/searchtypes/SearchType.class.php
rename to lib/classes/searchtypes/SearchType.php
diff --git a/lib/classes/searchtypes/SeminarSearch.class.php b/lib/classes/searchtypes/SeminarSearch.php
similarity index 100%
rename from lib/classes/searchtypes/SeminarSearch.class.php
rename to lib/classes/searchtypes/SeminarSearch.php
diff --git a/lib/classes/searchtypes/StandardSearch.class.php b/lib/classes/searchtypes/StandardSearch.php
similarity index 100%
rename from lib/classes/searchtypes/StandardSearch.class.php
rename to lib/classes/searchtypes/StandardSearch.php
diff --git a/lib/classes/searchtypes/TreeSearch.class.php b/lib/classes/searchtypes/TreeSearch.php
similarity index 100%
rename from lib/classes/searchtypes/TreeSearch.class.php
rename to lib/classes/searchtypes/TreeSearch.php
diff --git a/lib/classes/sidebar/ClipboardWidget.class.php b/lib/classes/sidebar/ClipboardWidget.php
similarity index 100%
rename from lib/classes/sidebar/ClipboardWidget.class.php
rename to lib/classes/sidebar/ClipboardWidget.php
diff --git a/lib/classes/sidebar/InstituteSelectWidget.class.php b/lib/classes/sidebar/InstituteSelectWidget.php
similarity index 100%
rename from lib/classes/sidebar/InstituteSelectWidget.class.php
rename to lib/classes/sidebar/InstituteSelectWidget.php
diff --git a/lib/classes/sidebar/ResourceTreeWidget.class.php b/lib/classes/sidebar/ResourceTreeWidget.php
similarity index 100%
rename from lib/classes/sidebar/ResourceTreeWidget.class.php
rename to lib/classes/sidebar/ResourceTreeWidget.php
diff --git a/lib/classes/sidebar/RoomClipboardWidget.class.php b/lib/classes/sidebar/RoomClipboardWidget.php
similarity index 100%
rename from lib/classes/sidebar/RoomClipboardWidget.class.php
rename to lib/classes/sidebar/RoomClipboardWidget.php
diff --git a/lib/classes/sidebar/RoomSearchTreeWidget.class.php b/lib/classes/sidebar/RoomSearchTreeWidget.php
similarity index 100%
rename from lib/classes/sidebar/RoomSearchTreeWidget.class.php
rename to lib/classes/sidebar/RoomSearchTreeWidget.php
diff --git a/lib/classes/sidebar/RoomSearchWidget.class.php b/lib/classes/sidebar/RoomSearchWidget.php
similarity index 100%
rename from lib/classes/sidebar/RoomSearchWidget.class.php
rename to lib/classes/sidebar/RoomSearchWidget.php
diff --git a/lib/cronjobs/check_admission.class.php b/lib/cronjobs/check_admission.php
similarity index 100%
rename from lib/cronjobs/check_admission.class.php
rename to lib/cronjobs/check_admission.php
diff --git a/lib/cronjobs/cleanup_log.class.php b/lib/cronjobs/cleanup_log.php
similarity index 100%
rename from lib/cronjobs/cleanup_log.class.php
rename to lib/cronjobs/cleanup_log.php
diff --git a/lib/cronjobs/garbage_collector.class.php b/lib/cronjobs/garbage_collector.php
similarity index 100%
rename from lib/cronjobs/garbage_collector.class.php
rename to lib/cronjobs/garbage_collector.php
diff --git a/lib/cronjobs/purge_cache.class.php b/lib/cronjobs/purge_cache.php
similarity index 100%
rename from lib/cronjobs/purge_cache.class.php
rename to lib/cronjobs/purge_cache.php
diff --git a/lib/cronjobs/remind_oer_upload.class.php b/lib/cronjobs/remind_oer_upload.php
similarity index 100%
rename from lib/cronjobs/remind_oer_upload.class.php
rename to lib/cronjobs/remind_oer_upload.php
diff --git a/lib/cronjobs/send_mail_notifications.class.php b/lib/cronjobs/send_mail_notifications.php
similarity index 100%
rename from lib/cronjobs/send_mail_notifications.class.php
rename to lib/cronjobs/send_mail_notifications.php
diff --git a/lib/cronjobs/send_mail_queue.class.php b/lib/cronjobs/send_mail_queue.php
similarity index 100%
rename from lib/cronjobs/send_mail_queue.class.php
rename to lib/cronjobs/send_mail_queue.php
diff --git a/lib/cronjobs/session_gc.class.php b/lib/cronjobs/session_gc.php
similarity index 100%
rename from lib/cronjobs/session_gc.class.php
rename to lib/cronjobs/session_gc.php
diff --git a/lib/elearning/ConnectedCMS.class.php b/lib/elearning/ConnectedCMS.php
similarity index 100%
rename from lib/elearning/ConnectedCMS.class.php
rename to lib/elearning/ConnectedCMS.php
diff --git a/lib/elearning/ConnectedLink.class.php b/lib/elearning/ConnectedLink.php
similarity index 100%
rename from lib/elearning/ConnectedLink.class.php
rename to lib/elearning/ConnectedLink.php
diff --git a/lib/elearning/ConnectedPermissions.class.php b/lib/elearning/ConnectedPermissions.php
similarity index 100%
rename from lib/elearning/ConnectedPermissions.class.php
rename to lib/elearning/ConnectedPermissions.php
diff --git a/lib/elearning/ConnectedUser.class.php b/lib/elearning/ConnectedUser.php
similarity index 100%
rename from lib/elearning/ConnectedUser.class.php
rename to lib/elearning/ConnectedUser.php
diff --git a/lib/elearning/ContentModule.class.php b/lib/elearning/ContentModule.php
similarity index 100%
rename from lib/elearning/ContentModule.class.php
rename to lib/elearning/ContentModule.php
diff --git a/lib/elearning/ContentModuleView.class.php b/lib/elearning/ContentModuleView.php
similarity index 100%
rename from lib/elearning/ContentModuleView.class.php
rename to lib/elearning/ContentModuleView.php
diff --git a/lib/elearning/ELearningUtils.class.php b/lib/elearning/ELearningUtils.php
similarity index 100%
rename from lib/elearning/ELearningUtils.class.php
rename to lib/elearning/ELearningUtils.php
diff --git a/lib/elearning/Ilias3ConnectedCMS.class.php b/lib/elearning/Ilias3ConnectedCMS.php
similarity index 100%
rename from lib/elearning/Ilias3ConnectedCMS.class.php
rename to lib/elearning/Ilias3ConnectedCMS.php
diff --git a/lib/elearning/Ilias3ConnectedLink.class.php b/lib/elearning/Ilias3ConnectedLink.php
similarity index 100%
rename from lib/elearning/Ilias3ConnectedLink.class.php
rename to lib/elearning/Ilias3ConnectedLink.php
diff --git a/lib/elearning/Ilias3ConnectedPermissions.class.php b/lib/elearning/Ilias3ConnectedPermissions.php
similarity index 100%
rename from lib/elearning/Ilias3ConnectedPermissions.class.php
rename to lib/elearning/Ilias3ConnectedPermissions.php
diff --git a/lib/elearning/Ilias3ConnectedUser.class.php b/lib/elearning/Ilias3ConnectedUser.php
similarity index 100%
rename from lib/elearning/Ilias3ConnectedUser.class.php
rename to lib/elearning/Ilias3ConnectedUser.php
diff --git a/lib/elearning/Ilias3ContentModule.class.php b/lib/elearning/Ilias3ContentModule.php
similarity index 100%
rename from lib/elearning/Ilias3ContentModule.class.php
rename to lib/elearning/Ilias3ContentModule.php
diff --git a/lib/elearning/Ilias3ObjectXMLParser.class.php b/lib/elearning/Ilias3ObjectXMLParser.php
similarity index 100%
rename from lib/elearning/Ilias3ObjectXMLParser.class.php
rename to lib/elearning/Ilias3ObjectXMLParser.php
diff --git a/lib/elearning/Ilias3SaxParser.class.php b/lib/elearning/Ilias3SaxParser.php
similarity index 100%
rename from lib/elearning/Ilias3SaxParser.class.php
rename to lib/elearning/Ilias3SaxParser.php
diff --git a/lib/elearning/Ilias3Soap.class.php b/lib/elearning/Ilias3Soap.php
similarity index 100%
rename from lib/elearning/Ilias3Soap.class.php
rename to lib/elearning/Ilias3Soap.php
diff --git a/lib/elearning/Ilias4ConnectedCMS.class.php b/lib/elearning/Ilias4ConnectedCMS.php
similarity index 100%
rename from lib/elearning/Ilias4ConnectedCMS.class.php
rename to lib/elearning/Ilias4ConnectedCMS.php
diff --git a/lib/elearning/Ilias4ConnectedLink.class.php b/lib/elearning/Ilias4ConnectedLink.php
similarity index 100%
rename from lib/elearning/Ilias4ConnectedLink.class.php
rename to lib/elearning/Ilias4ConnectedLink.php
diff --git a/lib/elearning/Ilias4ConnectedPermissions.class.php b/lib/elearning/Ilias4ConnectedPermissions.php
similarity index 100%
rename from lib/elearning/Ilias4ConnectedPermissions.class.php
rename to lib/elearning/Ilias4ConnectedPermissions.php
diff --git a/lib/elearning/Ilias4ConnectedUser.class.php b/lib/elearning/Ilias4ConnectedUser.php
similarity index 100%
rename from lib/elearning/Ilias4ConnectedUser.class.php
rename to lib/elearning/Ilias4ConnectedUser.php
diff --git a/lib/elearning/Ilias4ContentModule.class.php b/lib/elearning/Ilias4ContentModule.php
similarity index 100%
rename from lib/elearning/Ilias4ContentModule.class.php
rename to lib/elearning/Ilias4ContentModule.php
diff --git a/lib/elearning/Ilias4Soap.class.php b/lib/elearning/Ilias4Soap.php
similarity index 100%
rename from lib/elearning/Ilias4Soap.class.php
rename to lib/elearning/Ilias4Soap.php
diff --git a/lib/elearning/Ilias5ConnectedCMS.class.php b/lib/elearning/Ilias5ConnectedCMS.php
similarity index 100%
rename from lib/elearning/Ilias5ConnectedCMS.class.php
rename to lib/elearning/Ilias5ConnectedCMS.php
diff --git a/lib/elearning/Ilias5ConnectedLink.class.php b/lib/elearning/Ilias5ConnectedLink.php
similarity index 100%
rename from lib/elearning/Ilias5ConnectedLink.class.php
rename to lib/elearning/Ilias5ConnectedLink.php
diff --git a/lib/elearning/Ilias5ConnectedPermissions.class.php b/lib/elearning/Ilias5ConnectedPermissions.php
similarity index 100%
rename from lib/elearning/Ilias5ConnectedPermissions.class.php
rename to lib/elearning/Ilias5ConnectedPermissions.php
diff --git a/lib/elearning/Ilias5ConnectedUser.class.php b/lib/elearning/Ilias5ConnectedUser.php
similarity index 100%
rename from lib/elearning/Ilias5ConnectedUser.class.php
rename to lib/elearning/Ilias5ConnectedUser.php
diff --git a/lib/elearning/Ilias5ContentModule.class.php b/lib/elearning/Ilias5ContentModule.php
similarity index 100%
rename from lib/elearning/Ilias5ContentModule.class.php
rename to lib/elearning/Ilias5ContentModule.php
diff --git a/lib/elearning/Ilias5Soap.class.php b/lib/elearning/Ilias5Soap.php
similarity index 100%
rename from lib/elearning/Ilias5Soap.class.php
rename to lib/elearning/Ilias5Soap.php
diff --git a/lib/elearning/LonCapaConnectedCMS.class.php b/lib/elearning/LonCapaConnectedCMS.php
similarity index 100%
rename from lib/elearning/LonCapaConnectedCMS.class.php
rename to lib/elearning/LonCapaConnectedCMS.php
diff --git a/lib/elearning/LonCapaConnectedLink.class.php b/lib/elearning/LonCapaConnectedLink.php
similarity index 100%
rename from lib/elearning/LonCapaConnectedLink.class.php
rename to lib/elearning/LonCapaConnectedLink.php
diff --git a/lib/elearning/LonCapaContentModule.class.php b/lib/elearning/LonCapaContentModule.php
similarity index 100%
rename from lib/elearning/LonCapaContentModule.class.php
rename to lib/elearning/LonCapaContentModule.php
diff --git a/lib/elearning/LonCapaRequest.class.php b/lib/elearning/LonCapaRequest.php
similarity index 100%
rename from lib/elearning/LonCapaRequest.class.php
rename to lib/elearning/LonCapaRequest.php
diff --git a/lib/elearning/ObjectConnections.class.php b/lib/elearning/ObjectConnections.php
similarity index 100%
rename from lib/elearning/ObjectConnections.class.php
rename to lib/elearning/ObjectConnections.php
diff --git a/lib/elearning/PmWikiConnectedCMS.class.php b/lib/elearning/PmWikiConnectedCMS.php
similarity index 100%
rename from lib/elearning/PmWikiConnectedCMS.class.php
rename to lib/elearning/PmWikiConnectedCMS.php
diff --git a/lib/elearning/PmWikiConnectedLink.class.php b/lib/elearning/PmWikiConnectedLink.php
similarity index 100%
rename from lib/elearning/PmWikiConnectedLink.class.php
rename to lib/elearning/PmWikiConnectedLink.php
diff --git a/lib/elearning/PmWikiContentModule.class.php b/lib/elearning/PmWikiContentModule.php
similarity index 100%
rename from lib/elearning/PmWikiContentModule.class.php
rename to lib/elearning/PmWikiContentModule.php
diff --git a/lib/exceptions/ClipboardException.class.php b/lib/exceptions/ClipboardException.php
similarity index 100%
rename from lib/exceptions/ClipboardException.class.php
rename to lib/exceptions/ClipboardException.php
diff --git a/lib/exceptions/resources/GlobalResourceLockException.class.php b/lib/exceptions/resources/GlobalResourceLockException.php
similarity index 100%
rename from lib/exceptions/resources/GlobalResourceLockException.class.php
rename to lib/exceptions/resources/GlobalResourceLockException.php
diff --git a/lib/exceptions/resources/GlobalResourceLockOverlapException.class.php b/lib/exceptions/resources/GlobalResourceLockOverlapException.php
similarity index 100%
rename from lib/exceptions/resources/GlobalResourceLockOverlapException.class.php
rename to lib/exceptions/resources/GlobalResourceLockOverlapException.php
diff --git a/lib/exceptions/resources/InvalidResourceCategoryException.class.php b/lib/exceptions/resources/InvalidResourceCategoryException.php
similarity index 100%
rename from lib/exceptions/resources/InvalidResourceCategoryException.class.php
rename to lib/exceptions/resources/InvalidResourceCategoryException.php
diff --git a/lib/exceptions/resources/InvalidResourceClassException.class.php b/lib/exceptions/resources/InvalidResourceClassException.php
similarity index 100%
rename from lib/exceptions/resources/InvalidResourceClassException.class.php
rename to lib/exceptions/resources/InvalidResourceClassException.php
diff --git a/lib/exceptions/resources/InvalidResourceException.class.php b/lib/exceptions/resources/InvalidResourceException.php
similarity index 100%
rename from lib/exceptions/resources/InvalidResourceException.class.php
rename to lib/exceptions/resources/InvalidResourceException.php
diff --git a/lib/exceptions/resources/InvalidResourceRequestException.class.php b/lib/exceptions/resources/InvalidResourceRequestException.php
similarity index 100%
rename from lib/exceptions/resources/InvalidResourceRequestException.class.php
rename to lib/exceptions/resources/InvalidResourceRequestException.php
diff --git a/lib/exceptions/resources/NoResourceClassException.class.php b/lib/exceptions/resources/NoResourceClassException.php
similarity index 100%
rename from lib/exceptions/resources/NoResourceClassException.class.php
rename to lib/exceptions/resources/NoResourceClassException.php
diff --git a/lib/exceptions/resources/ResourceBookingException.class.php b/lib/exceptions/resources/ResourceBookingException.php
similarity index 100%
rename from lib/exceptions/resources/ResourceBookingException.class.php
rename to lib/exceptions/resources/ResourceBookingException.php
diff --git a/lib/exceptions/resources/ResourceBookingOverlapException.class.php b/lib/exceptions/resources/ResourceBookingOverlapException.php
similarity index 100%
rename from lib/exceptions/resources/ResourceBookingOverlapException.class.php
rename to lib/exceptions/resources/ResourceBookingOverlapException.php
diff --git a/lib/exceptions/resources/ResourceBookingRangeException.class.php b/lib/exceptions/resources/ResourceBookingRangeException.php
similarity index 100%
rename from lib/exceptions/resources/ResourceBookingRangeException.class.php
rename to lib/exceptions/resources/ResourceBookingRangeException.php
diff --git a/lib/exceptions/resources/ResourceException.class.php b/lib/exceptions/resources/ResourceException.php
similarity index 100%
rename from lib/exceptions/resources/ResourceException.class.php
rename to lib/exceptions/resources/ResourceException.php
diff --git a/lib/exceptions/resources/ResourceNoTimeRangeException.class.php b/lib/exceptions/resources/ResourceNoTimeRangeException.php
similarity index 100%
rename from lib/exceptions/resources/ResourceNoTimeRangeException.class.php
rename to lib/exceptions/resources/ResourceNoTimeRangeException.php
diff --git a/lib/exceptions/resources/ResourcePermissionException.class.php b/lib/exceptions/resources/ResourcePermissionException.php
similarity index 100%
rename from lib/exceptions/resources/ResourcePermissionException.class.php
rename to lib/exceptions/resources/ResourcePermissionException.php
diff --git a/lib/exceptions/resources/ResourcePropertyDefinitionException.class.php b/lib/exceptions/resources/ResourcePropertyDefinitionException.php
similarity index 100%
rename from lib/exceptions/resources/ResourcePropertyDefinitionException.class.php
rename to lib/exceptions/resources/ResourcePropertyDefinitionException.php
diff --git a/lib/exceptions/resources/ResourcePropertyException.class.php b/lib/exceptions/resources/ResourcePropertyException.php
similarity index 100%
rename from lib/exceptions/resources/ResourcePropertyException.class.php
rename to lib/exceptions/resources/ResourcePropertyException.php
diff --git a/lib/exceptions/resources/ResourcePropertyStateException.class.php b/lib/exceptions/resources/ResourcePropertyStateException.php
similarity index 100%
rename from lib/exceptions/resources/ResourcePropertyStateException.class.php
rename to lib/exceptions/resources/ResourcePropertyStateException.php
diff --git a/lib/exceptions/resources/ResourceRequestException.class.php b/lib/exceptions/resources/ResourceRequestException.php
similarity index 100%
rename from lib/exceptions/resources/ResourceRequestException.class.php
rename to lib/exceptions/resources/ResourceRequestException.php
diff --git a/lib/exceptions/resources/ResourceUnavailableException.class.php b/lib/exceptions/resources/ResourceUnavailableException.php
similarity index 100%
rename from lib/exceptions/resources/ResourceUnavailableException.class.php
rename to lib/exceptions/resources/ResourceUnavailableException.php
diff --git a/lib/exceptions/resources/ResourceUnlockableException.class.php b/lib/exceptions/resources/ResourceUnlockableException.php
similarity index 100%
rename from lib/exceptions/resources/ResourceUnlockableException.class.php
rename to lib/exceptions/resources/ResourceUnlockableException.php
diff --git a/lib/exceptions/resources/SeparableRoomException.class.php b/lib/exceptions/resources/SeparableRoomException.php
similarity index 100%
rename from lib/exceptions/resources/SeparableRoomException.class.php
rename to lib/exceptions/resources/SeparableRoomException.php
diff --git a/lib/filesystem/FileArchiveManager.class.php b/lib/filesystem/FileArchiveManager.php
similarity index 100%
rename from lib/filesystem/FileArchiveManager.class.php
rename to lib/filesystem/FileArchiveManager.php
diff --git a/lib/filesystem/FileArchiveManagerException.class.php b/lib/filesystem/FileArchiveManagerException.php
similarity index 100%
rename from lib/filesystem/FileArchiveManagerException.class.php
rename to lib/filesystem/FileArchiveManagerException.php
diff --git a/lib/filesystem/LibraryFile.class.php b/lib/filesystem/LibraryFile.php
similarity index 100%
rename from lib/filesystem/LibraryFile.class.php
rename to lib/filesystem/LibraryFile.php
diff --git a/lib/filesystem/ResourceFolder.class.php b/lib/filesystem/ResourceFolder.php
similarity index 100%
rename from lib/filesystem/ResourceFolder.class.php
rename to lib/filesystem/ResourceFolder.php
diff --git a/lib/ilias_interface/ConnectedIlias.class.php b/lib/ilias_interface/ConnectedIlias.php
similarity index 100%
rename from lib/ilias_interface/ConnectedIlias.class.php
rename to lib/ilias_interface/ConnectedIlias.php
diff --git a/lib/ilias_interface/IliasModule.class.php b/lib/ilias_interface/IliasModule.php
similarity index 100%
rename from lib/ilias_interface/IliasModule.class.php
rename to lib/ilias_interface/IliasModule.php
diff --git a/lib/ilias_interface/IliasObjectConnections.class.php b/lib/ilias_interface/IliasObjectConnections.php
similarity index 100%
rename from lib/ilias_interface/IliasObjectConnections.class.php
rename to lib/ilias_interface/IliasObjectConnections.php
diff --git a/lib/ilias_interface/IliasSoap.class.php b/lib/ilias_interface/IliasSoap.php
similarity index 100%
rename from lib/ilias_interface/IliasSoap.class.php
rename to lib/ilias_interface/IliasSoap.php
diff --git a/lib/ilias_interface/IliasUser.class.php b/lib/ilias_interface/IliasUser.php
similarity index 100%
rename from lib/ilias_interface/IliasUser.class.php
rename to lib/ilias_interface/IliasUser.php
diff --git a/lib/models/AdmissionApplication.class.php b/lib/models/AdmissionApplication.php
similarity index 100%
rename from lib/models/AdmissionApplication.class.php
rename to lib/models/AdmissionApplication.php
diff --git a/lib/models/ArchivedCourse.class.php b/lib/models/ArchivedCourse.php
similarity index 100%
rename from lib/models/ArchivedCourse.class.php
rename to lib/models/ArchivedCourse.php
diff --git a/lib/models/ArchivedCourseMember.class.php b/lib/models/ArchivedCourseMember.php
similarity index 100%
rename from lib/models/ArchivedCourseMember.class.php
rename to lib/models/ArchivedCourseMember.php
diff --git a/lib/models/AuthUserMd5.class.php b/lib/models/AuthUserMd5.php
similarity index 100%
rename from lib/models/AuthUserMd5.class.php
rename to lib/models/AuthUserMd5.php
diff --git a/lib/models/Banner.class.php b/lib/models/Banner.php
similarity index 100%
rename from lib/models/Banner.class.php
rename to lib/models/Banner.php
diff --git a/lib/models/BannerRoles.class.php b/lib/models/BannerRoles.php
similarity index 100%
rename from lib/models/BannerRoles.class.php
rename to lib/models/BannerRoles.php
diff --git a/lib/models/Clipboard.class.php b/lib/models/Clipboard.php
similarity index 100%
rename from lib/models/Clipboard.class.php
rename to lib/models/Clipboard.php
diff --git a/lib/models/ClipboardItem.class.php b/lib/models/ClipboardItem.php
similarity index 100%
rename from lib/models/ClipboardItem.class.php
rename to lib/models/ClipboardItem.php
diff --git a/lib/models/ColourValue.class.php b/lib/models/ColourValue.php
similarity index 100%
rename from lib/models/ColourValue.class.php
rename to lib/models/ColourValue.php
diff --git a/lib/models/ConfigEntry.class.php b/lib/models/ConfigEntry.php
similarity index 100%
rename from lib/models/ConfigEntry.class.php
rename to lib/models/ConfigEntry.php
diff --git a/lib/models/Contact.class.php b/lib/models/Contact.php
similarity index 100%
rename from lib/models/Contact.class.php
rename to lib/models/Contact.php
diff --git a/lib/models/ContactGroup.class.php b/lib/models/ContactGroup.php
similarity index 100%
rename from lib/models/ContactGroup.class.php
rename to lib/models/ContactGroup.php
diff --git a/lib/models/ContactGroupItem.class.php b/lib/models/ContactGroupItem.php
similarity index 100%
rename from lib/models/ContactGroupItem.class.php
rename to lib/models/ContactGroupItem.php
diff --git a/lib/models/ContentTermsOfUse.class.php b/lib/models/ContentTermsOfUse.php
similarity index 100%
rename from lib/models/ContentTermsOfUse.class.php
rename to lib/models/ContentTermsOfUse.php
diff --git a/lib/models/Course.class.php b/lib/models/Course.php
similarity index 100%
rename from lib/models/Course.class.php
rename to lib/models/Course.php
diff --git a/lib/models/CourseDate.class.php b/lib/models/CourseDate.php
similarity index 100%
rename from lib/models/CourseDate.class.php
rename to lib/models/CourseDate.php
diff --git a/lib/models/CourseExDate.class.php b/lib/models/CourseExDate.php
similarity index 100%
rename from lib/models/CourseExDate.class.php
rename to lib/models/CourseExDate.php
diff --git a/lib/models/CourseMember.class.php b/lib/models/CourseMember.php
similarity index 100%
rename from lib/models/CourseMember.class.php
rename to lib/models/CourseMember.php
diff --git a/lib/models/CourseTopic.class.php b/lib/models/CourseTopic.php
similarity index 100%
rename from lib/models/CourseTopic.class.php
rename to lib/models/CourseTopic.php
diff --git a/lib/models/CronjobLog.class.php b/lib/models/CronjobLog.php
similarity index 100%
rename from lib/models/CronjobLog.class.php
rename to lib/models/CronjobLog.php
diff --git a/lib/models/CronjobSchedule.class.php b/lib/models/CronjobSchedule.php
similarity index 100%
rename from lib/models/CronjobSchedule.class.php
rename to lib/models/CronjobSchedule.php
diff --git a/lib/models/CronjobTask.class.php b/lib/models/CronjobTask.php
similarity index 100%
rename from lib/models/CronjobTask.class.php
rename to lib/models/CronjobTask.php
diff --git a/lib/models/DataField.class.php b/lib/models/DataField.php
similarity index 100%
rename from lib/models/DataField.class.php
rename to lib/models/DataField.php
diff --git a/lib/models/DatafieldEntryModel.class.php b/lib/models/DatafieldEntryModel.php
similarity index 100%
rename from lib/models/DatafieldEntryModel.class.php
rename to lib/models/DatafieldEntryModel.php
diff --git a/lib/models/DatafieldEntryModelI18N.class.php b/lib/models/DatafieldEntryModelI18N.php
similarity index 100%
rename from lib/models/DatafieldEntryModelI18N.class.php
rename to lib/models/DatafieldEntryModelI18N.php
diff --git a/lib/models/Degree.class.php b/lib/models/Degree.php
similarity index 100%
rename from lib/models/Degree.class.php
rename to lib/models/Degree.php
diff --git a/lib/models/Freetext.php b/lib/models/Freetext.php
index 66b93c5d3f802b5d762e8bebaa6c6ac739349f33..f241b5a9dfde4f599cacacb5beb5b33b544172f8 100644
--- a/lib/models/Freetext.php
+++ b/lib/models/Freetext.php
@@ -1,6 +1,6 @@
 <?php
 
-require_once 'lib/classes/QuestionType.interface.php';
+require_once 'lib/classes/QuestionType.php';
 
 /**
  * @license GPL2 or any later version
diff --git a/lib/models/HelpContent.class.php b/lib/models/HelpContent.php
similarity index 100%
rename from lib/models/HelpContent.class.php
rename to lib/models/HelpContent.php
diff --git a/lib/models/HelpTour.class.php b/lib/models/HelpTour.php
similarity index 100%
rename from lib/models/HelpTour.class.php
rename to lib/models/HelpTour.php
diff --git a/lib/models/HelpTourAudience.class.php b/lib/models/HelpTourAudience.php
similarity index 100%
rename from lib/models/HelpTourAudience.class.php
rename to lib/models/HelpTourAudience.php
diff --git a/lib/models/HelpTourSettings.class.php b/lib/models/HelpTourSettings.php
similarity index 100%
rename from lib/models/HelpTourSettings.class.php
rename to lib/models/HelpTourSettings.php
diff --git a/lib/models/HelpTourStep.class.php b/lib/models/HelpTourStep.php
similarity index 100%
rename from lib/models/HelpTourStep.class.php
rename to lib/models/HelpTourStep.php
diff --git a/lib/models/HelpTourUser.class.php b/lib/models/HelpTourUser.php
similarity index 100%
rename from lib/models/HelpTourUser.class.php
rename to lib/models/HelpTourUser.php
diff --git a/lib/models/Institute.class.php b/lib/models/Institute.php
similarity index 100%
rename from lib/models/Institute.class.php
rename to lib/models/Institute.php
diff --git a/lib/models/InstituteMember.class.php b/lib/models/InstituteMember.php
similarity index 100%
rename from lib/models/InstituteMember.class.php
rename to lib/models/InstituteMember.php
diff --git a/lib/models/InstitutePlanColumn.class.php b/lib/models/InstitutePlanColumn.php
similarity index 100%
rename from lib/models/InstitutePlanColumn.class.php
rename to lib/models/InstitutePlanColumn.php
diff --git a/lib/models/Kategorie.class.php b/lib/models/Kategorie.php
similarity index 100%
rename from lib/models/Kategorie.class.php
rename to lib/models/Kategorie.php
diff --git a/lib/models/LikertScale.php b/lib/models/LikertScale.php
index 833d794b7f53cbd935ee003f4ce444eb36a49990..3a055f30e31a44c6c61ed87ed9657067489f54c5 100644
--- a/lib/models/LikertScale.php
+++ b/lib/models/LikertScale.php
@@ -1,6 +1,4 @@
 <?php
-require_once 'lib/classes/QuestionType.interface.php';
-
 /**
  * @license GPL2 or any later version
  *
diff --git a/lib/models/LockRule.class.php b/lib/models/LockRule.php
similarity index 100%
rename from lib/models/LockRule.class.php
rename to lib/models/LockRule.php
diff --git a/lib/models/LoginBackground.class.php b/lib/models/LoginBackground.php
similarity index 100%
rename from lib/models/LoginBackground.class.php
rename to lib/models/LoginBackground.php
diff --git a/lib/models/LoginFaq.class.php b/lib/models/LoginFaq.php
similarity index 100%
rename from lib/models/LoginFaq.class.php
rename to lib/models/LoginFaq.php
diff --git a/lib/models/MailQueueEntry.class.php b/lib/models/MailQueueEntry.php
similarity index 100%
rename from lib/models/MailQueueEntry.class.php
rename to lib/models/MailQueueEntry.php
diff --git a/lib/models/Message.class.php b/lib/models/Message.php
similarity index 100%
rename from lib/models/Message.class.php
rename to lib/models/Message.php
diff --git a/lib/models/MessageUser.class.php b/lib/models/MessageUser.php
similarity index 100%
rename from lib/models/MessageUser.class.php
rename to lib/models/MessageUser.php
diff --git a/lib/models/MvvOverlappingConflict.class.php b/lib/models/MvvOverlappingConflict.php
similarity index 100%
rename from lib/models/MvvOverlappingConflict.class.php
rename to lib/models/MvvOverlappingConflict.php
diff --git a/lib/models/MvvOverlappingSelection.class.php b/lib/models/MvvOverlappingSelection.php
similarity index 100%
rename from lib/models/MvvOverlappingSelection.class.php
rename to lib/models/MvvOverlappingSelection.php
diff --git a/lib/models/NewsRange.class.php b/lib/models/NewsRange.php
similarity index 100%
rename from lib/models/NewsRange.class.php
rename to lib/models/NewsRange.php
diff --git a/lib/models/NewsRoles.class.php b/lib/models/NewsRoles.php
similarity index 100%
rename from lib/models/NewsRoles.class.php
rename to lib/models/NewsRoles.php
diff --git a/lib/models/OpenGraphURL.class.php b/lib/models/OpenGraphURL.php
similarity index 100%
rename from lib/models/OpenGraphURL.class.php
rename to lib/models/OpenGraphURL.php
diff --git a/lib/models/OpenGraphURLCollection.class.php b/lib/models/OpenGraphURLCollection.php
similarity index 100%
rename from lib/models/OpenGraphURLCollection.class.php
rename to lib/models/OpenGraphURLCollection.php
diff --git a/lib/models/PersonalNotifications.class.php b/lib/models/PersonalNotifications.php
similarity index 100%
rename from lib/models/PersonalNotifications.class.php
rename to lib/models/PersonalNotifications.php
diff --git a/lib/models/RangeScale.php b/lib/models/RangeScale.php
index f935e4f2a6a0e706ee2ee3f6616b478e80aab4d8..20e134a490cb9176a243aaf0becca2ea65f2225e 100644
--- a/lib/models/RangeScale.php
+++ b/lib/models/RangeScale.php
@@ -1,6 +1,4 @@
 <?php
-require_once 'lib/classes/QuestionType.interface.php';
-
 /**
  * @license GPL2 or any later version
  *
diff --git a/lib/models/Semester.class.php b/lib/models/Semester.php
similarity index 100%
rename from lib/models/Semester.class.php
rename to lib/models/Semester.php
diff --git a/lib/models/SemesterCourse.class.php b/lib/models/SemesterCourse.php
similarity index 100%
rename from lib/models/SemesterCourse.class.php
rename to lib/models/SemesterCourse.php
diff --git a/lib/models/SemesterHoliday.class.php b/lib/models/SemesterHoliday.php
similarity index 100%
rename from lib/models/SemesterHoliday.class.php
rename to lib/models/SemesterHoliday.php
diff --git a/lib/models/SeminarCycleDate.class.php b/lib/models/SeminarCycleDate.php
similarity index 100%
rename from lib/models/SeminarCycleDate.class.php
rename to lib/models/SeminarCycleDate.php
diff --git a/lib/models/StudipComment.class.php b/lib/models/StudipComment.php
similarity index 100%
rename from lib/models/StudipComment.class.php
rename to lib/models/StudipComment.php
diff --git a/lib/models/StudipNews.class.php b/lib/models/StudipNews.php
similarity index 100%
rename from lib/models/StudipNews.class.php
rename to lib/models/StudipNews.php
diff --git a/lib/models/StudipScmEntry.class.php b/lib/models/StudipScmEntry.php
similarity index 100%
rename from lib/models/StudipScmEntry.class.php
rename to lib/models/StudipScmEntry.php
diff --git a/lib/models/StudipStudyArea.class.php b/lib/models/StudipStudyArea.php
similarity index 100%
rename from lib/models/StudipStudyArea.class.php
rename to lib/models/StudipStudyArea.php
diff --git a/lib/models/StudyCourse.class.php b/lib/models/StudyCourse.php
similarity index 100%
rename from lib/models/StudyCourse.class.php
rename to lib/models/StudyCourse.php
diff --git a/lib/models/User.class.php b/lib/models/User.php
similarity index 100%
rename from lib/models/User.class.php
rename to lib/models/User.php
diff --git a/lib/models/UserInfo.class.php b/lib/models/UserInfo.php
similarity index 100%
rename from lib/models/UserInfo.class.php
rename to lib/models/UserInfo.php
diff --git a/lib/models/UserOnline.class.php b/lib/models/UserOnline.php
similarity index 100%
rename from lib/models/UserOnline.class.php
rename to lib/models/UserOnline.php
diff --git a/lib/models/UserStudyCourse.class.php b/lib/models/UserStudyCourse.php
similarity index 100%
rename from lib/models/UserStudyCourse.class.php
rename to lib/models/UserStudyCourse.php
diff --git a/lib/models/Vote.php b/lib/models/Vote.php
index a434f7baace63182441bf04ac33a5e7797dae4f5..b5cd1428e70fb7c4a1f01b73990afad31f9a1038 100644
--- a/lib/models/Vote.php
+++ b/lib/models/Vote.php
@@ -1,6 +1,4 @@
 <?php
-require_once 'lib/classes/QuestionType.interface.php';
-
 /**
  * @license GPL2 or any later version
  *
diff --git a/lib/models/WebserviceAccessRule.class.php b/lib/models/WebserviceAccessRule.php
similarity index 100%
rename from lib/models/WebserviceAccessRule.class.php
rename to lib/models/WebserviceAccessRule.php
diff --git a/lib/models/WikiPage.class.php b/lib/models/WikiPage.php
similarity index 100%
rename from lib/models/WikiPage.class.php
rename to lib/models/WikiPage.php
diff --git a/lib/models/calendar/CalendarCourseDate.class.php b/lib/models/calendar/CalendarCourseDate.php
similarity index 100%
rename from lib/models/calendar/CalendarCourseDate.class.php
rename to lib/models/calendar/CalendarCourseDate.php
diff --git a/lib/models/calendar/CalendarCourseExDate.class.php b/lib/models/calendar/CalendarCourseExDate.php
similarity index 100%
rename from lib/models/calendar/CalendarCourseExDate.class.php
rename to lib/models/calendar/CalendarCourseExDate.php
diff --git a/lib/models/calendar/CalendarDate.class.php b/lib/models/calendar/CalendarDate.php
similarity index 100%
rename from lib/models/calendar/CalendarDate.class.php
rename to lib/models/calendar/CalendarDate.php
diff --git a/lib/models/calendar/CalendarDateAssignment.class.php b/lib/models/calendar/CalendarDateAssignment.php
similarity index 100%
rename from lib/models/calendar/CalendarDateAssignment.class.php
rename to lib/models/calendar/CalendarDateAssignment.php
diff --git a/lib/models/calendar/CalendarDateException.class.php b/lib/models/calendar/CalendarDateException.php
similarity index 100%
rename from lib/models/calendar/CalendarDateException.class.php
rename to lib/models/calendar/CalendarDateException.php
diff --git a/lib/models/resources/BrokenResource.class.php b/lib/models/resources/BrokenResource.php
similarity index 100%
rename from lib/models/resources/BrokenResource.class.php
rename to lib/models/resources/BrokenResource.php
diff --git a/lib/models/resources/Building.class.php b/lib/models/resources/Building.php
similarity index 100%
rename from lib/models/resources/Building.class.php
rename to lib/models/resources/Building.php
diff --git a/lib/models/resources/GlobalResourceLock.class.php b/lib/models/resources/GlobalResourceLock.php
similarity index 100%
rename from lib/models/resources/GlobalResourceLock.class.php
rename to lib/models/resources/GlobalResourceLock.php
diff --git a/lib/models/resources/Location.class.php b/lib/models/resources/Location.php
similarity index 100%
rename from lib/models/resources/Location.class.php
rename to lib/models/resources/Location.php
diff --git a/lib/models/resources/Resource.class.php b/lib/models/resources/Resource.php
similarity index 100%
rename from lib/models/resources/Resource.class.php
rename to lib/models/resources/Resource.php
diff --git a/lib/models/resources/ResourceBooking.class.php b/lib/models/resources/ResourceBooking.php
similarity index 100%
rename from lib/models/resources/ResourceBooking.class.php
rename to lib/models/resources/ResourceBooking.php
diff --git a/lib/models/resources/ResourceBookingInterval.class.php b/lib/models/resources/ResourceBookingInterval.php
similarity index 100%
rename from lib/models/resources/ResourceBookingInterval.class.php
rename to lib/models/resources/ResourceBookingInterval.php
diff --git a/lib/models/resources/ResourceCategory.class.php b/lib/models/resources/ResourceCategory.php
similarity index 100%
rename from lib/models/resources/ResourceCategory.class.php
rename to lib/models/resources/ResourceCategory.php
diff --git a/lib/models/resources/ResourceCategoryProperty.class.php b/lib/models/resources/ResourceCategoryProperty.php
similarity index 100%
rename from lib/models/resources/ResourceCategoryProperty.class.php
rename to lib/models/resources/ResourceCategoryProperty.php
diff --git a/lib/models/resources/ResourceLabel.class.php b/lib/models/resources/ResourceLabel.php
similarity index 100%
rename from lib/models/resources/ResourceLabel.class.php
rename to lib/models/resources/ResourceLabel.php
diff --git a/lib/models/resources/ResourcePermission.class.php b/lib/models/resources/ResourcePermission.php
similarity index 100%
rename from lib/models/resources/ResourcePermission.class.php
rename to lib/models/resources/ResourcePermission.php
diff --git a/lib/models/resources/ResourceProperty.class.php b/lib/models/resources/ResourceProperty.php
similarity index 100%
rename from lib/models/resources/ResourceProperty.class.php
rename to lib/models/resources/ResourceProperty.php
diff --git a/lib/models/resources/ResourcePropertyDefinition.class.php b/lib/models/resources/ResourcePropertyDefinition.php
similarity index 100%
rename from lib/models/resources/ResourcePropertyDefinition.class.php
rename to lib/models/resources/ResourcePropertyDefinition.php
diff --git a/lib/models/resources/ResourcePropertyGroup.class.php b/lib/models/resources/ResourcePropertyGroup.php
similarity index 100%
rename from lib/models/resources/ResourcePropertyGroup.class.php
rename to lib/models/resources/ResourcePropertyGroup.php
diff --git a/lib/models/resources/ResourceRequest.class.php b/lib/models/resources/ResourceRequest.php
similarity index 100%
rename from lib/models/resources/ResourceRequest.class.php
rename to lib/models/resources/ResourceRequest.php
diff --git a/lib/models/resources/ResourceRequestAppointment.class.php b/lib/models/resources/ResourceRequestAppointment.php
similarity index 100%
rename from lib/models/resources/ResourceRequestAppointment.class.php
rename to lib/models/resources/ResourceRequestAppointment.php
diff --git a/lib/models/resources/ResourceRequestProperty.class.php b/lib/models/resources/ResourceRequestProperty.php
similarity index 100%
rename from lib/models/resources/ResourceRequestProperty.class.php
rename to lib/models/resources/ResourceRequestProperty.php
diff --git a/lib/models/resources/ResourceTemporaryPermission.class.php b/lib/models/resources/ResourceTemporaryPermission.php
similarity index 100%
rename from lib/models/resources/ResourceTemporaryPermission.class.php
rename to lib/models/resources/ResourceTemporaryPermission.php
diff --git a/lib/models/resources/Room.class.php b/lib/models/resources/Room.php
similarity index 100%
rename from lib/models/resources/Room.class.php
rename to lib/models/resources/Room.php
diff --git a/lib/models/resources/RoomRequest.class.php b/lib/models/resources/RoomRequest.php
similarity index 100%
rename from lib/models/resources/RoomRequest.class.php
rename to lib/models/resources/RoomRequest.php
diff --git a/lib/models/resources/SeparableRoom.class.php b/lib/models/resources/SeparableRoom.php
similarity index 100%
rename from lib/models/resources/SeparableRoom.class.php
rename to lib/models/resources/SeparableRoom.php
diff --git a/lib/models/resources/SeparableRoomPart.class.php b/lib/models/resources/SeparableRoomPart.php
similarity index 100%
rename from lib/models/resources/SeparableRoomPart.class.php
rename to lib/models/resources/SeparableRoomPart.php
diff --git a/lib/modules/Blubber.class.php b/lib/modules/Blubber.php
similarity index 100%
rename from lib/modules/Blubber.class.php
rename to lib/modules/Blubber.php
diff --git a/lib/modules/ConsultationModule.class.php b/lib/modules/ConsultationModule.php
similarity index 100%
rename from lib/modules/ConsultationModule.class.php
rename to lib/modules/ConsultationModule.php
diff --git a/lib/modules/CoreAdmin.class.php b/lib/modules/CoreAdmin.php
similarity index 100%
rename from lib/modules/CoreAdmin.class.php
rename to lib/modules/CoreAdmin.php
diff --git a/lib/modules/CoreCalendar.class.php b/lib/modules/CoreCalendar.php
similarity index 100%
rename from lib/modules/CoreCalendar.class.php
rename to lib/modules/CoreCalendar.php
diff --git a/lib/modules/CoreDocuments.class.php b/lib/modules/CoreDocuments.php
similarity index 100%
rename from lib/modules/CoreDocuments.class.php
rename to lib/modules/CoreDocuments.php
diff --git a/lib/modules/CoreElearningInterface.class.php b/lib/modules/CoreElearningInterface.php
similarity index 100%
rename from lib/modules/CoreElearningInterface.class.php
rename to lib/modules/CoreElearningInterface.php
diff --git a/lib/modules/CoreForum.class.php b/lib/modules/CoreForum.php
similarity index 100%
rename from lib/modules/CoreForum.class.php
rename to lib/modules/CoreForum.php
diff --git a/lib/modules/CoreOverview.class.php b/lib/modules/CoreOverview.php
similarity index 100%
rename from lib/modules/CoreOverview.class.php
rename to lib/modules/CoreOverview.php
diff --git a/lib/modules/CoreParticipants.class.php b/lib/modules/CoreParticipants.php
similarity index 100%
rename from lib/modules/CoreParticipants.class.php
rename to lib/modules/CoreParticipants.php
diff --git a/lib/modules/CorePersonal.class.php b/lib/modules/CorePersonal.php
similarity index 100%
rename from lib/modules/CorePersonal.class.php
rename to lib/modules/CorePersonal.php
diff --git a/lib/modules/CoreSchedule.class.php b/lib/modules/CoreSchedule.php
similarity index 100%
rename from lib/modules/CoreSchedule.class.php
rename to lib/modules/CoreSchedule.php
diff --git a/lib/modules/CoreScm.class.php b/lib/modules/CoreScm.php
similarity index 100%
rename from lib/modules/CoreScm.class.php
rename to lib/modules/CoreScm.php
diff --git a/lib/modules/CoreStudygroupAdmin.class.php b/lib/modules/CoreStudygroupAdmin.php
similarity index 100%
rename from lib/modules/CoreStudygroupAdmin.class.php
rename to lib/modules/CoreStudygroupAdmin.php
diff --git a/lib/modules/CoreStudygroupParticipants.class.php b/lib/modules/CoreStudygroupParticipants.php
similarity index 100%
rename from lib/modules/CoreStudygroupParticipants.class.php
rename to lib/modules/CoreStudygroupParticipants.php
diff --git a/lib/modules/CoreWiki.class.php b/lib/modules/CoreWiki.php
similarity index 100%
rename from lib/modules/CoreWiki.class.php
rename to lib/modules/CoreWiki.php
diff --git a/lib/modules/CoursewareModule.class.php b/lib/modules/CoursewareModule.php
similarity index 100%
rename from lib/modules/CoursewareModule.class.php
rename to lib/modules/CoursewareModule.php
diff --git a/lib/modules/FeedbackModule.class.php b/lib/modules/FeedbackModule.php
similarity index 100%
rename from lib/modules/FeedbackModule.class.php
rename to lib/modules/FeedbackModule.php
diff --git a/lib/modules/GradebookModule.class.php b/lib/modules/GradebookModule.php
similarity index 100%
rename from lib/modules/GradebookModule.class.php
rename to lib/modules/GradebookModule.php
diff --git a/lib/modules/IliasInterfaceModule.class.php b/lib/modules/IliasInterfaceModule.php
similarity index 100%
rename from lib/modules/IliasInterfaceModule.class.php
rename to lib/modules/IliasInterfaceModule.php
diff --git a/lib/modules/LtiToolModule.class.php b/lib/modules/LtiToolModule.php
similarity index 100%
rename from lib/modules/LtiToolModule.class.php
rename to lib/modules/LtiToolModule.php
diff --git a/lib/modules/StudipModule.class.php b/lib/modules/StudipModule.php
similarity index 100%
rename from lib/modules/StudipModule.class.php
rename to lib/modules/StudipModule.php
diff --git a/lib/phplib/CT_Cache.class.php b/lib/phplib/CT_Cache.php
similarity index 100%
rename from lib/phplib/CT_Cache.class.php
rename to lib/phplib/CT_Cache.php
diff --git a/lib/phplib/CT_Sql.class.php b/lib/phplib/CT_Sql.php
similarity index 100%
rename from lib/phplib/CT_Sql.class.php
rename to lib/phplib/CT_Sql.php
diff --git a/lib/phplib/DB_Sql.class.php b/lib/phplib/DB_Sql.php
similarity index 100%
rename from lib/phplib/DB_Sql.class.php
rename to lib/phplib/DB_Sql.php
diff --git a/lib/phplib/Seminar_Auth.class.php b/lib/phplib/Seminar_Auth.php
similarity index 100%
rename from lib/phplib/Seminar_Auth.class.php
rename to lib/phplib/Seminar_Auth.php
diff --git a/lib/phplib/Seminar_Default_Auth.class.php b/lib/phplib/Seminar_Default_Auth.php
similarity index 100%
rename from lib/phplib/Seminar_Default_Auth.class.php
rename to lib/phplib/Seminar_Default_Auth.php
diff --git a/lib/phplib/Seminar_Perm.class.php b/lib/phplib/Seminar_Perm.php
similarity index 100%
rename from lib/phplib/Seminar_Perm.class.php
rename to lib/phplib/Seminar_Perm.php
diff --git a/lib/phplib/Seminar_Register_Auth.class.php b/lib/phplib/Seminar_Register_Auth.php
similarity index 100%
rename from lib/phplib/Seminar_Register_Auth.class.php
rename to lib/phplib/Seminar_Register_Auth.php
diff --git a/lib/phplib/Seminar_Session.class.php b/lib/phplib/Seminar_Session.php
similarity index 100%
rename from lib/phplib/Seminar_Session.class.php
rename to lib/phplib/Seminar_Session.php
diff --git a/lib/phplib/Seminar_User.class.php b/lib/phplib/Seminar_User.php
similarity index 100%
rename from lib/phplib/Seminar_User.class.php
rename to lib/phplib/Seminar_User.php
diff --git a/lib/phplib/email_validation.class.php b/lib/phplib/email_validation.php
similarity index 100%
rename from lib/phplib/email_validation.class.php
rename to lib/phplib/email_validation.php
diff --git a/lib/plugins/core/AdminCourseAction.class.php b/lib/plugins/core/AdminCourseAction.php
similarity index 100%
rename from lib/plugins/core/AdminCourseAction.class.php
rename to lib/plugins/core/AdminCourseAction.php
diff --git a/lib/plugins/core/AdminCourseContents.class.php b/lib/plugins/core/AdminCourseContents.php
similarity index 100%
rename from lib/plugins/core/AdminCourseContents.class.php
rename to lib/plugins/core/AdminCourseContents.php
diff --git a/lib/plugins/core/AdminCourseWidgetPlugin.class.php b/lib/plugins/core/AdminCourseWidgetPlugin.php
similarity index 100%
rename from lib/plugins/core/AdminCourseWidgetPlugin.class.php
rename to lib/plugins/core/AdminCourseWidgetPlugin.php
diff --git a/lib/plugins/core/AdministrationPlugin.class.php b/lib/plugins/core/AdministrationPlugin.php
similarity index 100%
rename from lib/plugins/core/AdministrationPlugin.class.php
rename to lib/plugins/core/AdministrationPlugin.php
diff --git a/lib/plugins/core/DetailspagePlugin.class.php b/lib/plugins/core/DetailspagePlugin.php
similarity index 100%
rename from lib/plugins/core/DetailspagePlugin.class.php
rename to lib/plugins/core/DetailspagePlugin.php
diff --git a/lib/plugins/core/FileUploadHook.class.php b/lib/plugins/core/FileUploadHook.php
similarity index 100%
rename from lib/plugins/core/FileUploadHook.class.php
rename to lib/plugins/core/FileUploadHook.php
diff --git a/lib/plugins/core/FilesystemPlugin.class.php b/lib/plugins/core/FilesystemPlugin.php
similarity index 100%
rename from lib/plugins/core/FilesystemPlugin.class.php
rename to lib/plugins/core/FilesystemPlugin.php
diff --git a/lib/plugins/core/ForumModule.class.php b/lib/plugins/core/ForumModule.php
similarity index 100%
rename from lib/plugins/core/ForumModule.class.php
rename to lib/plugins/core/ForumModule.php
diff --git a/lib/plugins/core/HomepagePlugin.class.php b/lib/plugins/core/HomepagePlugin.php
similarity index 100%
rename from lib/plugins/core/HomepagePlugin.class.php
rename to lib/plugins/core/HomepagePlugin.php
diff --git a/lib/plugins/core/LibraryPlugin.class.php b/lib/plugins/core/LibraryPlugin.php
similarity index 100%
rename from lib/plugins/core/LibraryPlugin.class.php
rename to lib/plugins/core/LibraryPlugin.php
diff --git a/lib/plugins/core/MetricsPlugin.class.php b/lib/plugins/core/MetricsPlugin.php
similarity index 100%
rename from lib/plugins/core/MetricsPlugin.class.php
rename to lib/plugins/core/MetricsPlugin.php
diff --git a/lib/plugins/core/PortalPlugin.class.php b/lib/plugins/core/PortalPlugin.php
similarity index 100%
rename from lib/plugins/core/PortalPlugin.class.php
rename to lib/plugins/core/PortalPlugin.php
diff --git a/lib/plugins/core/PrivacyPlugin.class.php b/lib/plugins/core/PrivacyPlugin.php
similarity index 100%
rename from lib/plugins/core/PrivacyPlugin.class.php
rename to lib/plugins/core/PrivacyPlugin.php
diff --git a/lib/plugins/core/QuestionnaireAssignmentPlugin.class.php b/lib/plugins/core/QuestionnaireAssignmentPlugin.php
similarity index 100%
rename from lib/plugins/core/QuestionnaireAssignmentPlugin.class.php
rename to lib/plugins/core/QuestionnaireAssignmentPlugin.php
diff --git a/lib/plugins/core/RESTAPIPlugin.class.php b/lib/plugins/core/RESTAPIPlugin.php
similarity index 100%
rename from lib/plugins/core/RESTAPIPlugin.class.php
rename to lib/plugins/core/RESTAPIPlugin.php
diff --git a/lib/plugins/core/Role.class.php b/lib/plugins/core/Role.php
similarity index 100%
rename from lib/plugins/core/Role.class.php
rename to lib/plugins/core/Role.php
diff --git a/lib/plugins/core/ScorePlugin.class.php b/lib/plugins/core/ScorePlugin.php
similarity index 100%
rename from lib/plugins/core/ScorePlugin.class.php
rename to lib/plugins/core/ScorePlugin.php
diff --git a/lib/plugins/core/StandardPlugin.class.php b/lib/plugins/core/StandardPlugin.php
similarity index 100%
rename from lib/plugins/core/StandardPlugin.class.php
rename to lib/plugins/core/StandardPlugin.php
diff --git a/lib/plugins/core/StudIPPlugin.class.php b/lib/plugins/core/StudIPPlugin.php
similarity index 100%
rename from lib/plugins/core/StudIPPlugin.class.php
rename to lib/plugins/core/StudIPPlugin.php
diff --git a/lib/plugins/core/SystemPlugin.class.php b/lib/plugins/core/SystemPlugin.php
similarity index 100%
rename from lib/plugins/core/SystemPlugin.class.php
rename to lib/plugins/core/SystemPlugin.php
diff --git a/lib/plugins/core/WebServicePlugin.class.php b/lib/plugins/core/WebServicePlugin.php
similarity index 100%
rename from lib/plugins/core/WebServicePlugin.class.php
rename to lib/plugins/core/WebServicePlugin.php
diff --git a/lib/plugins/db/RolePersistence.class.php b/lib/plugins/db/RolePersistence.php
similarity index 100%
rename from lib/plugins/db/RolePersistence.class.php
rename to lib/plugins/db/RolePersistence.php
diff --git a/lib/plugins/engine/PluginEngine.class.php b/lib/plugins/engine/PluginEngine.php
similarity index 100%
rename from lib/plugins/engine/PluginEngine.class.php
rename to lib/plugins/engine/PluginEngine.php
diff --git a/lib/plugins/engine/PluginManager.class.php b/lib/plugins/engine/PluginManager.php
similarity index 100%
rename from lib/plugins/engine/PluginManager.class.php
rename to lib/plugins/engine/PluginManager.php
diff --git a/lib/plugins/engine/PluginRepository.class.php b/lib/plugins/engine/PluginRepository.php
similarity index 100%
rename from lib/plugins/engine/PluginRepository.class.php
rename to lib/plugins/engine/PluginRepository.php
diff --git a/lib/raumzeit/CycleData.class.php b/lib/raumzeit/CycleData.php
similarity index 100%
rename from lib/raumzeit/CycleData.class.php
rename to lib/raumzeit/CycleData.php
diff --git a/lib/raumzeit/CycleDataDB.class.php b/lib/raumzeit/CycleDataDB.php
similarity index 100%
rename from lib/raumzeit/CycleDataDB.class.php
rename to lib/raumzeit/CycleDataDB.php
diff --git a/lib/raumzeit/Issue.class.php b/lib/raumzeit/Issue.php
similarity index 100%
rename from lib/raumzeit/Issue.class.php
rename to lib/raumzeit/Issue.php
diff --git a/lib/raumzeit/IssueDB.class.php b/lib/raumzeit/IssueDB.php
similarity index 100%
rename from lib/raumzeit/IssueDB.class.php
rename to lib/raumzeit/IssueDB.php
diff --git a/lib/raumzeit/MetaDate.class.php b/lib/raumzeit/MetaDate.php
similarity index 100%
rename from lib/raumzeit/MetaDate.class.php
rename to lib/raumzeit/MetaDate.php
diff --git a/lib/raumzeit/MetaDateDB.class.php b/lib/raumzeit/MetaDateDB.php
similarity index 100%
rename from lib/raumzeit/MetaDateDB.class.php
rename to lib/raumzeit/MetaDateDB.php
diff --git a/lib/raumzeit/SeminarDB.class.php b/lib/raumzeit/SeminarDB.php
similarity index 100%
rename from lib/raumzeit/SeminarDB.class.php
rename to lib/raumzeit/SeminarDB.php
diff --git a/lib/raumzeit/SingleDate.class.php b/lib/raumzeit/SingleDate.php
similarity index 100%
rename from lib/raumzeit/SingleDate.class.php
rename to lib/raumzeit/SingleDate.php
diff --git a/lib/raumzeit/SingleDateDB.class.php b/lib/raumzeit/SingleDateDB.php
similarity index 100%
rename from lib/raumzeit/SingleDateDB.class.php
rename to lib/raumzeit/SingleDateDB.php
diff --git a/lib/resources/ResourceManager.class.php b/lib/resources/ResourceManager.php
similarity index 100%
rename from lib/resources/ResourceManager.class.php
rename to lib/resources/ResourceManager.php
diff --git a/lib/resources/RoomManager.class.php b/lib/resources/RoomManager.php
similarity index 100%
rename from lib/resources/RoomManager.class.php
rename to lib/resources/RoomManager.php
diff --git a/lib/soap/StudipSoapClient.class.php b/lib/soap/StudipSoapClient.php
similarity index 100%
rename from lib/soap/StudipSoapClient.class.php
rename to lib/soap/StudipSoapClient.php
diff --git a/lib/soap/StudipSoapClient_PHP5.class.php b/lib/soap/StudipSoapClient_PHP5.php
similarity index 100%
rename from lib/soap/StudipSoapClient_PHP5.class.php
rename to lib/soap/StudipSoapClient_PHP5.php
diff --git a/public/install.php b/public/install.php
index ffbf90f3dfb3d3599f2ee5323d005e98e3c7c669..9922f841f0afe077740652d5f5d6da35d103776e 100644
--- a/public/install.php
+++ b/public/install.php
@@ -19,15 +19,15 @@ require 'composer/autoload.php';
 require 'lib/visual.inc.php';
 require 'lib/functions.php';
 require 'lib/classes/URLHelper.php';
-require 'lib/classes/LayoutMessage.interface.php';
-require 'lib/classes/MessageBox.class.php';
-require 'lib/classes/Request.class.php';
-require 'lib/classes/Interactable.class.php';
-require 'lib/classes/Button.class.php';
-require 'lib/classes/LinkButton.class.php';
+require 'lib/classes/LayoutMessage.php';
+require 'lib/classes/MessageBox.php';
+require 'lib/classes/Request.php';
+require 'lib/classes/Interactable.php';
+require 'lib/classes/Button.php';
+require 'lib/classes/LinkButton.php';
 require 'lib/classes/StudipInstaller.php';
 require 'lib/classes/SystemChecker.php';
-require 'lib/classes/Markup.class.php';
+require 'lib/classes/Markup.php';
 require 'lib/exceptions/AccessDeniedException.php';
 require 'lib/flexi/Factory.php';
 require 'lib/flexi/Template.php';
diff --git a/tests/_support/Helper/StudipDb.php b/tests/_support/Helper/StudipDb.php
index b95e703c056ad462a1815d136a2c8a48e9c0da65..8188be1dbaf575e6aa137c382e93126cf09f28b4 100644
--- a/tests/_support/Helper/StudipDb.php
+++ b/tests/_support/Helper/StudipDb.php
@@ -5,7 +5,7 @@ namespace Helper;
 use Codeception\Exception\ModuleConfigException;
 use Codeception\Exception\ModuleException;
 
-require_once 'lib/classes/StudipPDO.class.php';
+require_once 'lib/classes/StudipPDO.php';
 
 class StudipDb extends \Codeception\Module
 {
diff --git a/tests/functional/_bootstrap.php b/tests/functional/_bootstrap.php
index 322883d9a63064b4fdcb05ef495ac2822c9ccb4e..e8a911d562a3423d339913f1914b25dd4914032d 100644
--- a/tests/functional/_bootstrap.php
+++ b/tests/functional/_bootstrap.php
@@ -18,7 +18,6 @@ $inc_path .= PATH_SEPARATOR . __DIR__ . '/../..';
 $inc_path .= PATH_SEPARATOR . __DIR__ . '/../../config';
 ini_set('include_path', $inc_path);
 
-require 'lib/classes/StudipAutoloader.php';
 require 'lib/helpers.php';
 require 'lib/functions.php';
 require_once 'lib/language.inc.php';
@@ -27,27 +26,6 @@ require 'lib/messaging.inc.php';
 
 $STUDIP_BASE_PATH = realpath(dirname(__FILE__) . '/../..');
 
-StudipAutoloader::register();
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/calendar', 'Studip\\Calendar');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/classes');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/classes', 'Studip');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/classes/cache');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/classes/cache', 'Studip');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/exceptions');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/exceptions/resources');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/flexi', 'Flexi');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/filesystem');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/migrations');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/models');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/models/resources');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/phplib');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/raumzeit');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/resources');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/plugins/core');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/modules');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/plugins/db');
-StudipAutoloader::addAutoloadPath($STUDIP_BASE_PATH . '/lib/plugins/engine');
-
 // load config-variables
 $added_configs = [];
 StudipFileloader::load(
diff --git a/tests/jsonapi/_bootstrap.php b/tests/jsonapi/_bootstrap.php
index 7987b34e91d883d9814cd7f2edf5b678ee81f9ff..ea99293b86b358239ee863b65edfaab541579680 100644
--- a/tests/jsonapi/_bootstrap.php
+++ b/tests/jsonapi/_bootstrap.php
@@ -27,6 +27,8 @@ $CACHING_ENABLE = false;
 
 date_default_timezone_set('Europe/Berlin');
 
+require_once __DIR__.'/../../composer/autoload.php';
+
 require 'config.inc.php';
 
 require 'lib/helpers.php';
@@ -36,51 +38,6 @@ require 'lib/visual.inc.php';
 require 'lib/calendar_functions.inc.php';
 require 'lib/dates.inc.php';
 
-// Setup autoloading
-require 'lib/classes/StudipAutoloader.php';
-StudipAutoloader::register();
-
-// General classes folders
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/models');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/models/calendar');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/models/resources');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/classes');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/classes', 'Studip');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/flexi', 'Flexi');
-
-// Plugins
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/plugins/core');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/plugins/db');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/plugins/engine');
-
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/calendar');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/calendar', 'Studip\\Calendar');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'lib/classes/cache');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'lib/classes/cache', 'Studip');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/calendar/lib');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/exceptions');
-
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/filesystem');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/migrations');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/modules');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/navigation');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/phplib');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/raumzeit');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/resources');
-
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/activities', 'Studip\\Activity');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/classes/calendar');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/classes/globalsearch');
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/lib/classes/visibility');
-
-StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'].'/vendor/oauth-php/library');
-
-// Messy file names
-StudipAutoloader::addClassLookups([
-    'StudipPlugin' => $GLOBALS['STUDIP_BASE_PATH'].'/lib/plugins/core/StudIPPlugin.class.php',
-    'messaging' => $GLOBALS['STUDIP_BASE_PATH'].'/lib/messaging.inc.php',
-]);
-
 $GLOBALS['_fullname_sql'] = [];
 $GLOBALS['_fullname_sql']['full'] = "TRIM(CONCAT(title_front,' ',Vorname,' ',Nachname,IF(title_rear!='',CONCAT(', ',title_rear),'')))";
 $GLOBALS['_fullname_sql']['full_rev'] = "TRIM(CONCAT(Nachname,', ',Vorname,IF(title_front!='',CONCAT(', ',title_front),''),IF(title_rear!='',CONCAT(', ',title_rear),'')))";
@@ -103,6 +60,4 @@ class DB_Seminar extends DB_Sql
     }
 }
 
-require_once __DIR__.'/../../composer/autoload.php';
-
 session_id("test-session");
diff --git a/tests/unit/_bootstrap.php b/tests/unit/_bootstrap.php
index b15eeb00d7df91c6638123601a64e3df19651d79..0cf0f7ec526c3903ce023b89dbc0b501d98ab28a 100644
--- a/tests/unit/_bootstrap.php
+++ b/tests/unit/_bootstrap.php
@@ -29,38 +29,32 @@ $inc_path .= PATH_SEPARATOR . __DIR__ . '/../..';
 $inc_path .= PATH_SEPARATOR . __DIR__ . '/../../config';
 ini_set('include_path', $inc_path);
 
+global $ABSOLUTE_URI_STUDIP,
+    $ASSETS_URL,
+    $CACHING_ENABLE,
+    $CACHING_FILECACHE_PATH,
+    $CANONICAL_RELATIVE_PATH_STUDIP,
+    $DYNAMIC_CONTENT_PATH,
+    $DYNAMIC_CONTENT_URL,
+    $STUDIP_BASE_PATH,
+    $SYMBOL_SHORT,
+    $TMP_PATH,
+    $UPLOAD_PATH;
+
 // load varstream for easier filesystem testing
 require_once 'varstream.php';
 
-define("TEST_FIXTURES_PATH", dirname(__DIR__) . "/_data/");
+define('TEST_FIXTURES_PATH', dirname(__DIR__) . '/_data/');
 
 require __DIR__ . '/../../composer/autoload.php';
 
 global $STUDIP_BASE_PATH;
 $STUDIP_BASE_PATH = realpath(dirname(__DIR__) . '/..');
 
-require 'lib/classes/StudipAutoloader.php';
+require 'lib/helpers.php';
 require 'lib/functions.php';
 require 'lib/visual.inc.php';
 
-StudipAutoloader::setBasePath(realpath(__DIR__ . '/../..'));
-StudipAutoloader::register();
-
-StudipAutoloader::addAutoloadPath('lib/activities', 'Studip\\Activity');
-StudipAutoloader::addAutoloadPath('lib/models');
-StudipAutoloader::addAutoloadPath('lib/classes');
-StudipAutoloader::addAutoloadPath('lib/classes', 'Studip');
-StudipAutoloader::addAutoloadPath('lib/classes/cache', 'Studip');
-StudipAutoloader::addAutoloadPath('lib/classes/sidebar');
-StudipAutoloader::addAutoloadPath('lib/classes/helpbar');
-StudipAutoloader::addAutoloadPath('lib/exTpl', 'exTpl');
-StudipAutoloader::addAutoloadPath('lib/exceptions');
-StudipAutoloader::addAutoloadPath('lib/flexi', 'Flexi');
-StudipAutoloader::addAutoloadPath('lib/plugins/engine');
-StudipAutoloader::addAutoloadPath('lib/plugins/core');
-StudipAutoloader::addAutoloadPath('lib/plugins/db');
-StudipAutoloader::addAutoloadPath('lib/trails', 'Trails');
-
 // load config-variables
 $added_configs = [];
 StudipFileloader::load(
@@ -74,16 +68,16 @@ foreach ($added_configs as $key => $value) {
     $GLOBALS[$key] = $value;
 }
 
-$config = Symfony\Component\Yaml\Yaml::parseFile(__DIR__ .'/../unit.suite.yml');
+$config = Symfony\Component\Yaml\Yaml::parseFile(__DIR__ . '/../unit.suite.yml');
 
 // connect to database if configured
 if (isset($config['modules']['config']['Db'])) {
-    DBManager::getInstance()->setConnection('studip',
+    DBManager::getInstance()->setConnection(
+        'studip',
         $config['modules']['config']['Db']['dsn'],
         $config['modules']['config']['Db']['user'],
-        $config['modules']['config']['Db']['password']);
-} else {
-    //DBManager::getInstance()->setConnection('studip', 'sqlite://'. $GLOBALS ,'', '');
+        $config['modules']['config']['Db']['password']
+    );
 }
 
 // Disable caching to fallback to memory cache
@@ -104,17 +98,17 @@ if (!class_exists('StudipTestHelper')) {
             $schemes = [];
 
             foreach ($tables as $db_table) {
-                include TEST_FIXTURES_PATH."simpleormap/$db_table.php";
+                include TEST_FIXTURES_PATH . "simpleormap/$db_table.php";
                 $db_fields = $pk = [];
                 foreach ($result as $rs) {
                     $db_fields[mb_strtolower($rs['name'])] = [
-                        'name'    => $rs['name'],
-                        'null'    => $rs['null'],
+                        'name' => $rs['name'],
+                        'null' => $rs['null'],
                         'default' => $rs['default'],
-                        'type'    => $rs['type'],
-                        'extra'   => $rs['extra']
+                        'type' => $rs['type'],
+                        'extra' => $rs['extra'],
                     ];
-                    if ($rs['key'] == 'PRI'){
+                    if ($rs['key'] == 'PRI') {
                         $pk[] = mb_strtolower($rs['name']);
                     }
                 }
diff --git a/tests/unit/lib/CalendarcolumnClassTest.php b/tests/unit/lib/CalendarcolumnClassTest.php
index 063f97edf09d46d78fb0d8f1d4d5ce44a44a4540..d2ac9e0f97e7c7cffeaa6db80acb771a6a73e26b 100644
--- a/tests/unit/lib/CalendarcolumnClassTest.php
+++ b/tests/unit/lib/CalendarcolumnClassTest.php
@@ -9,7 +9,7 @@
  * the License, or (at your option) any later version.
  */
 
-require_once 'lib/calendar/CalendarColumn.class.php';
+require_once 'lib/calendar/CalendarColumn.php';
 
 class CalendarColumnCase extends \Codeception\Test\Unit {
 
diff --git a/tests/unit/lib/CalendarviewClassTest.php b/tests/unit/lib/CalendarviewClassTest.php
index 962cd06870bebb7d63af4fcd1aa6e9cdf6764d7a..d810575fefb9403fcdbc72ddbac2215b32b5d450 100644
--- a/tests/unit/lib/CalendarviewClassTest.php
+++ b/tests/unit/lib/CalendarviewClassTest.php
@@ -9,7 +9,7 @@
  * the License, or (at your option) any later version.
  */
 
-require_once 'lib/calendar/CalendarView.class.php';
+require_once 'lib/calendar/CalendarView.php';
 
 class CalendarViewCase extends \Codeception\Test\Unit {
 
diff --git a/tests/unit/lib/VisualTest.php b/tests/unit/lib/VisualTest.php
index 2e75b1f7128cea083a6afb0acb9e901892a6fe4c..2ea8334055d07668c18cb12af80eb4c27bade437 100644
--- a/tests/unit/lib/VisualTest.php
+++ b/tests/unit/lib/VisualTest.php
@@ -9,9 +9,9 @@
  * the License, or (at your option) any later version.
  */
 
-require_once 'lib/classes/SimpleORMap.class.php';
+require_once 'lib/classes/SimpleORMap.php';
 require_once 'lib/visual.inc.php';
-require_once 'lib/classes/Config.class.php';
+require_once 'lib/classes/Config.php';
 
 class VisualFunctionsTest extends \Codeception\Test\Unit
 {
diff --git a/tests/unit/lib/classes/AvatarClassTest.php b/tests/unit/lib/classes/AvatarClassTest.php
index 8172e20244f28bdd8172827387b241cb8fd3823d..e09a3c260b571d9f3f94793f67165eb0c712cba8 100644
--- a/tests/unit/lib/classes/AvatarClassTest.php
+++ b/tests/unit/lib/classes/AvatarClassTest.php
@@ -9,7 +9,7 @@
  * the License, or (at your option) any later version.
  */
 
-require_once 'lib/phplib/Seminar_Perm.class.php';
+require_once 'lib/phplib/Seminar_Perm.php';
 
 abstract class AvatarTest extends \Codeception\Test\Unit
 {
diff --git a/tests/unit/lib/classes/MarkupClassTest.php b/tests/unit/lib/classes/MarkupClassTest.php
index d1c35b199a8651a808bb5c7f4952884e12195e6e..347e453032ae159d05b880a16e5e8c95da12e0ec 100644
--- a/tests/unit/lib/classes/MarkupClassTest.php
+++ b/tests/unit/lib/classes/MarkupClassTest.php
@@ -21,15 +21,15 @@
 require_once 'tests/unit/fakeserver.php';
 
 # needed by visual.inc.php
-require_once 'lib/classes/DbView.class.php';
-require_once 'lib/classes/TreeAbstract.class.php';
+require_once 'lib/classes/DbView.php';
+require_once 'lib/classes/TreeAbstract.php';
 
-# needed by Markup.class.php
+# needed by Markup.php
 require_once 'lib/visual.inc.php';
-require_once 'lib/classes/Config.class.php';
+require_once 'lib/classes/Config.php';
 
 # class and functions that are tested by this script
-require_once 'lib/classes/Markup.class.php';
+require_once 'lib/classes/Markup.php';
 
 # Seminar_Session cannot be mocked since it uses static functions.
 # Also, including phplib_local.inc.php, where Seminar_Session is
diff --git a/tests/unit/lib/classes/PluginRepositoryTest.php b/tests/unit/lib/classes/PluginRepositoryTest.php
index 6676b7c54ff97b870ba52ac02885c6d50a5cf690..d045d3f1b0de926ac1c2036be5250e4e7bf81312 100644
--- a/tests/unit/lib/classes/PluginRepositoryTest.php
+++ b/tests/unit/lib/classes/PluginRepositoryTest.php
@@ -10,7 +10,7 @@
  * the License, or (at your option) any later version.
  */
 
-require_once 'lib/plugins/engine/PluginRepository.class.php';
+require_once 'lib/plugins/engine/PluginRepository.php';
 
 class PluginRepositoryTest extends \Codeception\Test\Unit
 {
diff --git a/vendor/oauth-php/library/session/OAuthSessionAbstract.class.php b/vendor/oauth-php/library/session/OAuthSessionAbstract.php
similarity index 100%
rename from vendor/oauth-php/library/session/OAuthSessionAbstract.class.php
rename to vendor/oauth-php/library/session/OAuthSessionAbstract.php
diff --git a/vendor/oauth-php/library/signature_method/OAuthSignatureMethod.class.php b/vendor/oauth-php/library/signature_method/OAuthSignatureMethod.php
similarity index 100%
rename from vendor/oauth-php/library/signature_method/OAuthSignatureMethod.class.php
rename to vendor/oauth-php/library/signature_method/OAuthSignatureMethod.php
diff --git a/vendor/oauth-php/library/store/OAuthStoreAbstract.class.php b/vendor/oauth-php/library/store/OAuthStoreAbstract.php
similarity index 100%
rename from vendor/oauth-php/library/store/OAuthStoreAbstract.class.php
rename to vendor/oauth-php/library/store/OAuthStoreAbstract.php