Skip to main content

Database

Schema

The following schema is an entity-relationship diagram of the database, simplified for your convenience 😉

eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO19aXNcIkuy5ff6XHUwMDE1spovM2aP7IjwWNtsbEz7hvZd7z6TsUkgsVx00Pqs//u4U1VcIiFcdTAwMTcygZRSfZ/aWqorXHUwMDEwXHUwMDA0mXH8XHUwMDFj9/Dlv38sLf1cdTAwMWO8dWs//7n0s/ZaKTVcdTAwMWLVXunl53/Q759rvX6j08aHxPC/+52nXmX4zPpg0O3/81x1MDAxZv9olXpcdTAwMGa1QbdZqtS850b/qdTsXHUwMDBmnqqNjlfptP7RXHUwMDE41Fr9/0ff90ut2v/tdlrVQc9cdTAwMWK9SaFWbVxmOr1f71Vr1lq19qCPr/6f+N9LS/89/O5bXa9WXHUwMDE5lNp3zdrwXHUwMDBmhlx1MDAwZo1cdTAwMTbImeOTv97vtIer5YY7XHUwMDEwIJz7eEajv4ZvOKhV8eFbXFx0bfRcYv3q5+6Wu9hYP65cdTAwMWRcdTAwMWNcdTAwMTeWz9+qq9Xd18r66H1vXHUwMDFizebJ4K3561qUKvWnnm9V/UGv81C7aFRcdTAwMDd1eveJ33/8Xb+Dl2H0V73O0129Xev3x/6m0y1VXHUwMDFhgzf8XHUwMDFksI9f/rpcbv9cXFx1MDAxYf3mXHUwMDE1/0tLz3BhXHUwMDA0t1x1MDAxNrRUYD5cdTAwMWWlPzdSe4aBXHUwMDAx0PggY3JiWaudJt5cblxc1v9yXHUwMDE10GU1Wli5VHm4w9W1q6Pn1Grl2m1p9JyX31x1MDAxZlZI5YFVXFxxKThoJj6eUa817upcdTAwMDN6XG5YjzFQ0ipcdTAwMDbSSjd6Tr82vCFaXHUwMDAzc4yr0Vx1MDAwN6C3725Xh5vjv0Z3oYfbapv+ov3UbPovZLv6+0L+2USjbVx1MDAwNL9/86/R56Pnr09uP/9cdTAwMTZcdTAwMWPbhoPa6+Djg/u2XGZrtNY7rcfV7V7/6qBcYt3l98rd9s+P5/3r979Gy3/qVku/diA3zDDGjNaWj259s9F+mPxszU7lYbRpf/g+SFx1MDAwMC5j6/Qhxfou+Fx1MDAwNFCE1GBcdTAwMDWXJjFOwj90OE4m9vtXocTFokTxXHUwMDA1ooTX6H9BlFx1MDAxOOdx7lx1MDAxY0hmXHUwMDA1XHUwMDAzLlRcYkrYJCq4kpxcdTAwMTlcXJSbXHUwMDFmXHUwMDE2Y1x1MDAwZlx1MDAwNPb/XCK36GhVnfbgpPE+tMd67LdcdTAwMWKlVqP5NnY/h3tcdTAwMTevIC2p0+vXXHUwMDFi3Z9jjy03XHUwMDFid7SXfzZrt+ObfNBAdvl4eNDx/WFcdTAwMDXfq9Ro13rbSUx8p9e4a7RLzdOYpeDHr239uWPc893Hcqlfo0fp9zJcdTAwMTam8awmWCRYuXbWXHUwMDAww12RXHUwMDE4rYdcdTAwMDf9/s3LhWzKm4OyqVx1MDAxNtfrL/vLOWe1glDM08xphCZcdTAwMTOglYUxxCqQXHUwMDFlXHUwMDE4i1x1MDAxN1x1MDAwM1x1MDAxZtYgolx1MDAxMVtcdTAwMTFCqUo8Ym8rXHUwMDE1UTUhvGaUZ1x1MDAxNFjLmJNaXHUwMDFin4n8gCxcdTAwMWFcdTAwMTOPW800gHWaqdFu+INgwZhcdTAwMTLW8tEn+Fx1MDAwZcRmb1x1MDAwZtRNW8vzzZ2NtXX9eP/2uFpIRWzIKdoxP2yyIDZcdTAwMTdNbM4wa63hyYkt/EPnmdhcbpJ7uOlcZppoZ0iAuTGcOC08paXR+IBAXHI2XHUwMDE3TKKITXNcdTAwMGZ5XHKhqK1DOCRlNlAgkFx1MDAxMPlcdTAwMDJcdTAwMDTfzMxmhebOpNij8zFbqVLBxVxyXCJorTe8VtG8Vu5cZlx1MDAwNp1WJLVNsfOT1Fx1MDAxNlhL5rzmd8Umac3hXHUwMDE25syO3nNcdTAwMWFUXHUwMDFme1cvq+v14vJz5Xbl/NSpV1x1MDAwNYc5ZzWuXHUwMDEwjc5oXHUwMDA3yGq480dwfFx1MDAxYrpI2mNWXHUwMDBip1x1MDAwNEJcdTAwMDOUb19Oolx1MDAxNfcsr4h4tJZU1d7eXHUwMDA20WqN9Fx1MDAxONe0961ESVx1MDAxY+KsSek8XHUwMDEwXHUwMDAyQY3umsLn+VbyXHUwMDFivIR2Y5RcdTAwMTldh+9AatdcdTAwMDdcdTAwMGaVlffeXbfcvF3vr7TNzrE4T+et4Tfl/JjJgtS4T9BMXCJFaeNcdTAwMThKI0hcZpXwT51nVnOWedZcdTAwMThcdTAwMDNcdTAwMGW1l2RcXI1cdTAwMDFFa+ahXHUwMDEzJZ00giGKolktXHROolhNMs8gXGKRXHUwMDFmuGQ6IaehWlx1MDAxNKhcdTAwMTZcdTAwMTeh9Wb31tJu0fk4bfhcdTAwMDGzYbQpNn6S0SZWkjmfSZ8/MIFStJpoXHUwMDFlpUnOZydrm7t3XHUwMDE1vn9xw23xZHDavSxuruacz0BZj3xRSV6pQk6YXGY+XG5cdTAwMGY0MGGsM+hcdTAwMDKJiXWNMMhQxWtcdTAwMWKPU6dvQ500ra0nnNVcbt1BZZVcdTAwMWR9klx1MDAxMVCl8qRFb1I7xblcdTAwMWTTwb+AS6SMdPfN6Gz72FxcndWNLL42n8xqsX9cclx1MDAwZu86h8FHYNHCTzqHLoNWyeNcdTAwMTnhnzrXdFx1MDAwNs5T1lIsXHUwMDBmdypcdTAwMWHoXHSYmFx1MDAwNcIkis6sQNWn0D+TIJVhXHUwMDEwXHUwMDA2k1x1MDAwMJ8pXHUwMDA1aOT8cY9/++Bjr9NptXBcdTAwMDX9XHUwMDE5KS0u+DjFxk/yWchSMuc0XHUwMDE1XHUwMDEzejRcdTAwMGVcZpNcdTAwMGWSQ/WJad5qP79uXHUwMDFm4Fs+Xu2+mUYr6qAgL6SmXHUwMDE5kpq2RqNzhMSmxlx1MDAwMypcdTAwMDWhpKeUQbBcdTAwMDJHL05bPbGwXHUwMDExXHUwMDE0Nf591cXDtcrKt2FemuTGs0ow41x1MDAxY0VVfK7iyEszXHUwMDE02+GIT265kdJcdTAwMWZcdTAwMDT9c3hA0VEm+Vx1MDAwMlx1MDAwZVx1MDAwZj6R1tb2bO3sctlenO49l/vbqz1b2z5MXHUwMDE3etRS2cy9NPRBorBinVx1MDAwNqWFSFx1MDAxZXpcZv/QeWY1zSFcdTAwMTYo0i1cdTAwMTIokcFH7TlcdFx1MDAwZUWoJodRyiBQQvw0dJ9cdTAwMTmT1n3lqVrqTTpcdTAwMWax9TuVRqk5fJdwZpvjVG2KnZ8ktrClZM9shk3+9oPZhEG/XHUwMDAxXHUwMDFkiOSpXCL3u63WxenW+Ubl4Lq2rNs7OyvbmzlnNk5xXHUwMDEzi4pbWqVccjc+RP6mNu4xZ1x1MDAwNHpRwlx1MDAwMH2PROwts1x1MDAxNcamnKrd1irOhVFcdTAwMWJ4jE7iXHUwMDE52lxmOt2bidpcZkepwlx1MDAwML7XqZruXHUwMDFjN4/e5FptUCyVOiv7b4/16m0qatNGOJP5qZo0kdSGxlxcXHUwMDAx3lx1MDAxOJE8XHUwMDAwXHUwMDE5/qnzzG1IZ3FQ4U57XHUwMDEyeY9bjf6URZabXHUwMDBiKVHcXHUwMDA20pMkXHUwMDAwUVx1MDAwN+J35lx1MDAxMnFcdTAwMWKuWoP0XHUwMDFmwn0+taXepPNRW7fTjzpTm0JqU1x1MDAwMpBTrPwkr42vI3NGMzKa0dBuosDwZ9NNXHUwMDAzaemhVbxdPb2SeuVcdTAwMDauXHI879aPT3LOaFx1MDAwNVx1MDAwZdrTXHUwMDEymcRogVx1MDAxZlx1MDAxN1X3OKVxqdCN4to45VCTc1x1MDAxZZ0oXCJuXU3KeKCWxa0ol0NcdTAwMTJFlPGEXHUwMDEwSitcdTAwMGXOMURsXHUwMDEwqUBcdTAwMTktgCtEt8GgVnU+PfxHlWqwTFx1MDAxOPa9opD199JTta/34LLVOj7d6Fx1MDAxZr7VtlRcdTAwMGU5TUeHNizdNtRcdTAwMTnJKS38Q+eZ0lx1MDAxMCt8XG5W2FwisVx1MDAxMnmuJjyw4KyRQlx1MDAxYtTciVx1MDAwMpG4XHUwMDE4dFx1MDAxMpFvv9Jh+2RWqz3XXCJTRebw1abY+UlOm1hF5qTmfIp+ktRcdTAwMThKT1xuQiaH6dHB8fne5unu7vP+bvPh4KpwXFwx/dyTmnXeMDNKIVC0YuM4XHUwMDE14DwtNNKJ1Fxci5hk5Vx1MDAxYVx1MDAwM8T8NCet4iohTppw6Fx1MDAwYoLEjT+Eqlxyk55aelx1MDAwZYSU3CqrwVx1MDAxN6P/4DPlhNF4y75cdTAwMTWfqaONq21ztdK7qFx1MDAxNEprm6eFKzew6cKPjEmVJqtsNj5zKlxuKVx1MDAxMlx1MDAxZGslVIp4RviHzjefWVx1MDAxOVx1MDAwN1x1MDAxMylcdTAwMTdcYpO41EckMzV0z8AkSlx1MDAxMkGRZ1xyisUvjT0yXHUwMDA09+dcdTAwMWSqUXlYJmQ2xb5cdTAwMDdcdTAwMDKPk+vInM5ARtKZYUKgfbTJj9NcdTAwMWHl09XDa+jvrpXNYOW82D4sbta/ls04m5ok4qSHblx1MDAxYbfWce20hFx0nCrraWuFs1xu3Vx1MDAxZmF9XHUwMDE4XG5kc02AME3WI6VeoqpVWiiBVkGaXHUwMDEwQuNKepJcdTAwMTIvXHUwMDExyIy+Riv9yFlGN1x1MDAwMbHrXHUwMDE24KHFY3c26mq6ys5cdHvdKMvLVuP5+uxxZ2Ww46Ou/1xif9lff7z8Ylx1MDAxZXeK1ee75st5S75xvr8pXHUwMDBi4+/y5/1LvV7nJenr2rWHld2r7aPiU1x1MDAxMVx1MDAwNqK5u1HrtttcdTAwMGJ43Vr/ae/iaWfnorCz0bLmrdx42agv4HXl3tvJRb+33FGbXVZdg17pury3iOug71aee+2bwku7fy429pehs7aI9W5cdTAwMTba7L751m+rSqO73Lx/vbLLPNnrTpcyxoJNRVx1MDAxNDNJXHUwMDE5LqPzXVxyRbKUSmEmw1GQezPpYs2khk8xk1Sm65TRkmvGVWjaq/+z/LaL+HxcdTAwMTRB3GZuXHUwMDE2XHUwMDE3uVPnkzSb9Fx1MDAwMf9qXHUwMDE3wr7+arfxc/7Vrtb6lV6jO8Dt/Ffb87zF658pimBS/8y36ERiycWLpVqz2ej2w9NphZ787Sg+x6xcdTAwMTPAktuA7p5+Pi3e9U7Xu9fdx8fuxeNJ+YvPZ6fbXHUwMDAwzYQnXHUwMDFkOsxaM+m4XHUwMDE4r1x1MDAwZlx1MDAwMXxUS3xAomjEi6GiXHUwMDEzKuYyXHUwMDAxhuHbOHRcdTAwMTE0XHUwMDA3IVx1MDAxOFx1MDAwZilcdTAwMTDRwlx1MDAxM1x1MDAxYW9cYtBcdTAwMTktXGJcdTAwMTZcZmVcdTAwMWLFXHUwMDA1XGIucyqUXHUwMDFlb1x1MDAxY4PeZvFs/blzV1WlXHUwMDBiscMqXy2UjtbenzvMtERcdTAwMDGKtf7y69nK3svB4ohcXIHLnMhltLsjXHUwMDE4c9ZcdTAwMTC5JFx1MDAwNnH4Xco7iKX1nHHKXHUwMDAy7n7L7Fx1MDAwNIhcdTAwMDV4hqpKhOTDg9pMMGzsXGbJvuCAgvL2K1x1MDAwZo5T79L5SLzRX+rcLlxyN3U4NVdwzbVeXGY5t1x1MDAxYdWq3/Of4OcpNDTJz2Hryb6MxUTGXHUwMDExUVx1MDAwMYJcdTAwMDLOU4jvXHUwMDBi9bD/sHtQOD7ZO1cre1x1MDAwN+Ll7eo975i1YDynnVx1MDAwNeAotNlEe1x1MDAxMEFRPs05R6IzcVlR81x1MDAwNSiUp/BdkOC1xuvuQnpcckxcdTAwMGZQgDNUP8oyrz+bjXb3i6ZxoerFwoO8knc7u7uV5jvkhFx1MDAxZbX06a2M6FHY6IxccovUaLVJoXHDr2beoSZFLNT0J0CNjlx1MDAwNlxmSlThhNM2LGpvXHUwMDAz7CiYUIYyhr+WXHUwMDFlU+7SXHUwMDA1+LinuKcjXFxG9Fx1MDAxOfvNp7uMfNspTFx1MDAxMurbpl5sXCJ2NfHs+svahMDdRqthkEKgJ5dcdTAwMWPs8U5HTsFOXHUwMDBlrTZGaCM4Qn2i4Vx1MDAwMYDzhKOzUot+g1x1MDAxMNn4s4qOXHUwMDFmjHZcZuFujFx0O8nmnnLOWiG4XHUwMDEwRilrXHUwMDAzzelcdTAwMTSjUnNcdTAwMGKZXHUwMDE3ws3Gq+7waHWrfn3TsFx1MDAxN+tcdTAwMDcvg1x1MDAwN1O7OnrM1j303atSb7DSaFdcdTAwMWLtu59jXHUwMDA39b+bOyZRwkNbVHmiS1BgXHUwMDFlJVx1MDAwZYCiXHUwMDEwh8BvcoRcdTAwMTK67qXu8I4xXHUwMDA3TmmNVMKYxif+fsYoXHUwMDFioNauTl9VfPzMtyqGb8i1tU5IXHUwMDA22uHbhqxJcrBC4TOck/hEXHUwMDFkWFOz1Fx1MDAxZqx2Wq3GXHUwMDAwL/5hp9FcdTAwMWVMXuTh1VxcJoNSr5VcdTAwMDL7XGI/U+RjXXq58T30n76dwvzbhn38+7/+I/TZhUjU0FdcdTAwMTAvo9f74f+Z+lx1MDAxYyDSXHUwMDEzcbg9meYpMlx1MDAxYcIxkXODqZTzpFx1MDAwM1x1MDAxNCackr7HxVx1MDAxMVxiJCirXHUwMDA1ulx1MDAwMM5cbillNsFcdTAwMDMuPCXBOU7ds1An2ZDaw7BcZj3DhFx1MDAxNJx/ed7554VcdTAwMGb4P3mE7Jk3bjCF7Se1z9hCXHUwMDE2XHUwMDExMIiUNJzFRFx1MDAwYqi4XHUwMDFkt01yUVx1MDAxM+/S5Vx1MDAxNKNcdTAwMTZ0jFx1MDAwN1x1MDAwM/Soolx1MDAxML1BZ1xcKZhY12IwqsFcdTAwMDPphvlN3HJnQiDKPND4YVx1MDAxY1hccpSUzlWgiMpRXGKSfUJcdTAwMTXkbKqmcddsPXfqWoJsXHUwMDFjbzeKu+bphqf36mcqsUyoauJ9lJE0XGJXXHUwMDE0aOQlWizcRpZcdTAwMGZ302xcImaqtIpbXHUwMDA0gpZcdTAwMDK/gO42kEf8nUVLJCqGf1x1MDAxZcTDglSLiKwrkKhcdTAwMTip5XVig1x1MDAxOL7lc25cdTAwMTDRd/CMM1Jz4zj4P+4v1YI7XHUwMDFkJYvVmmkk6JiudnNcdTAwMThEITygXHUwMDBlRLSMxJmY3HAjUVV+ZdrCJ0tcdTAwMTb2z3ZGkmVcbpdPSpaxhWRf/Fxyka26uENcdTAwMDbUyj9JYGrxtz287GzulnfeXG7r9d2by+s79ShcdTAwMTaM0mqpX68tNsOIYMqQa1Ci4U9cdTAwMThZrV/lP5T6Q1x1MDAwN7TUrUHxmKZ6XHRgXHUwMDFhVftNyVx1MDAwNVx1MDAxNpDxqFx1MDAxMFx1MDAwZdBhXHUwMDE4bdxcdTAwMTSnXHUwMDFjeDdBg1lEXUFcdTAwMTa65fT1uNCH81x1MDAxYl1vXHUwMDAzbz/e7MmTzdOkp1x1MDAxY+WrSv+oVb6/eWT9fufp5Hj1jZ2Pv8tMyVx1MDAwNW12uPdyWm/vv7WWT7ZW3qpvXHUwMDE3vLGA1z2FvTd7vMw6Z1f38r3RX1+uXFxXk73udP2W2jjOxN8xfVxcOOp4ppRcdTAwMTbJ41x1MDAwZeF3P+dcdTAwMTRcdTAwMGWOxdtcdTAwMDZYnG2IPlx1MDAwMTWeXHUwMDE1XGJtJsNcdTAwMGZlQlx1MDAxMlx1MDAwZlx1MDAwNaNcdTAwMDNTJf9OXHUwMDE0vlxcxqteqlxmXHUwMDBln8pNJOhfiXrhR1x1MDAxZXToMWhcZpqfkos4hVx1MDAxNSdcdTAwMDXAoj9GxtmJSkcrXGJOzftcZk/R7PO2XGKyVL1r3j0+tU/3bpq1xsZr7m2EXHUwMDE1dDbLXHUwMDE0+dVG+Vx1MDAwZVKGnealh7yu0ItcdTAwMTSKXHUwMDE5rueLe8Tph7mTXHUwMDEzleBMXGLIvvH8bPLh5P2ivFxcWnnpXHUwMDFmXlx1MDAxZKni8n3htLGy9tXyYY5cIo680Lyy0VxiptMmLa1MXHUwMDAx4dC7lHNcYkt0k1x1MDAwNUOX16HAZmDERFtcdTAwMWJOOUiMylx1MDAwZpRFXHUwMDFhzqbGXHUwMDAwpYZ1ynFnnLPI9S5cYuGQrjaGWvSy7Fx1MDAwZmDzw/NdXCJGclx1MDAwMpfKb1x1MDAxOfnsU3go0N8mdEXZnjeAiYyuXHUwMDE5p1x1MDAxNONpXHUwMDFj93jrmFfQXHUwMDFhTu3u6TiOalx1MDAwZsV4eM1xXHUwMDBmuZghlIUw3N9peZGYRciiw029mpUgXHUwMDFmwYb47TRXYlx1MDAxONFmoLXQMpBEwbVcdTAwMDNpPmHgy2y8u1Nvrq6utbZO281i7cmWxMXZkciWx3z3KtFxQzxel8ZcdTAwMGVcdTAwMTfk8MhcdTAwMWPvXHUwMDE31avaUdh16c95gPC0ppkrQkiLOlx0PuLhKY9cdTAwMWbidf/4ojhcdDKrqb0g2v6Rm7k0SqLARaNcdTAwMDNcbpJqYDR85+OIaNBcZlx1MDAxZlx1MDAwZeBl9II//D9TJ1FERjMkXHUwMDA1M8Ck6J9cdTAwMTKOiZxcdTAwMWJMZZXnOG5uZbmk2VjjXCJHampcdTAwMWJB6Vx1MDAxM1x1MDAxY3egVdlcdTAwMWNIzJpFoVx1MDAxNc0o+Fx1MDAxYsmc7JIoprD9XHUwMDE3JlFIXHUwMDEz3eTIWW5cZjWIS1xm0njfLKcgRdvuXHKBQd48Wkkz7opQRz1/vXM2IUfmieF2t2iHraOwRlx1MDAxMKTOISWh/TZcXFx1MDAxYiCjMolZ5WjkndA5LXW8P9s5vL1ZfbjaqjX3XG6P7yfrXHUwMDFirpttXHUwMDBmgLSyZmpcdTAwMTZmdFx1MDAwMkOBXHUwMDEyM9kwnoNmU1AqxYwyZqq2+iNQyEKjWGLokFx1MDAxYcVAhaxcblx1MDAxN1x1MDAwNdRsxCHto6fNpVxiXHUwMDExV99GyESjhL5cblx1MDAwMYAsSMeI6EQzR1nBlLKc2EaGoyDvNlJRpi1qd6ChXkpOzFx1MDAwYmTgXHLPPoygYWg8Zlxi7udnVjjcLpLGwf99hEx2qVx1MDAxNVNcYv5rUyuMilx1MDAwZasyMDSRK8Vo+UHZrNf3bzubN3tdeXFzvtK/OItqXHUwMDE1nlx1MDAxYpyiV4tiXHUwMDFmnVZOg6pcdTAwMWTuvjGgXHUwMDE2XHUwMDA0c1x1MDAxZXpd5Otp1PZzxlUjz0ZQMjmwSqCikiBUWKGLkFx1MDAxZedcbuVcbs3Vtn5P8M+BKnogjlx1MDAxYl+8IF9qZmPPvb5eb9Zh74I97XVWXHUwMDFhq2ev5lx1MDAxM3IgpqukTzrEkDGsSPOCQKSYXGZcdTAwMWF+NXOPNjtcdTAwMDVtcoFom6dTklx1MDAwZVx1MDAxZWNIpHNcdTAwMGLiK+eDXHUwMDBlN6pIsVHno8XDTn9cdTAwMTDZciiTRIQpXHUwMDFjMkmXyVx1MDAxN5iIS9WsxaLR7Y/QbFx1MDAwYsmdVMmzkOJNXU6RXHIgyLuSTjBGczXkeIpBXHUwMDAxuVx0XHUwMDE5jmbNc1x1MDAxNJd8rIX+XHUwMDAyiVQxXHUwMDBmPTxcdTAwMDQ2UJWH5lx1MDAxMMak5PRIXHSSkS+IlFx1MDAxYVx1MDAxOJGtLUPp474p1Fx1MDAxM3ru8VBbXHUwMDFh84hcdTAwMTk1hWKOc5pcdTAwMWNOx8u+p/3xrWnSXG5eTylcZkfHR3/CiVx1MDAwNFxmZ2lLJoaxXHUwMDAz9FpcdTAwMDKrXHUwMDEyXHUwMDFlQ19eKaRcdTAwMTQjrWFcdTAwMTCsNV2wK/9z0GtM6O2FOvTRXHUwMDFinL6CW3v0ej/8P2dcdTAwMWPDXHUwMDE12epRgdVGp5Avj8tb+yus0GqK25eVy/v7aqPzmvvj3IJcdTAwMDVP4NMkXHUwMDE1z3LKclx1MDAxZTdypG406jgm6O7oOVx1MDAwYsiiJpZQXCJcdTAwMTV6XHUwMDAxjMplXHUwMDA0tywkjypBO1xcJanve27bzZhTWevZK7h6XlGFXHK+vLn3Lp4+IbE59nVt8URcdTAwMTf29vTGbV+VVt3t4XHXri/UXHRJY/BnckKkr8QzOCRWoFIxKaaDhd+lvKNcdTAwMThhXHUwMDFhi2JYJIpcdTAwMTfcrlx1MDAxNVx1MDAwMUtcdTAwMGWUtt9Tm8zkhqzTXHUwMDFjk0iZj1x1MDAwNHxD6/urPSTq3//OxDuZQlqT3snc615EXnSk06JcXPRBpkXF54xLUVx1MDAwZVx1MDAxZW9yc2pcdIbpjJzmeSkrQfhCQL+iXHUwMDExXHUwMDFlp05cdTAwMTno1iCB0tjL+dJccqJ8XHUwMDE2gcvQzmjBNFx1MDAxNY+ykPwsibZCK2q3o5lcdTAwMDXUflx1MDAwMTrXhqb5gv3y7IMsXZZ4/I05XHUwMDA3qH0tqmNcdTAwMThGSoVcZvFccsBDJ5WGYdLIRby3fMZcdTAwMTLuNFx1MDAxZVx1MDAwYuXmoi63jikkXHUwMDE4XGImdlGMl47MjZW4aGftd/dXXCI3N31cdTAwMTVcdTAwMDL7epHuilGRUVx1MDAxOUFcdTAwMDO+VZpEXHK1vmVqqrnR695uljvl7Xr3rnGUd/tWcJqAIJyjglxu5cZjMkI5jzrNglx1MDAxNmjdtP/UYTbzXHUwMDE2Po4qUd2olFx1MDAxZY1qdVaSvnHBTFxyjltIafTkc5qqcXx0v96t7Fx1MDAxOflyub3+crHaqHRcdTAwMGIqqV8hdvdcdTAwMWJXt3BY2araXCJ/2dldXHUwMDExx6dcdTAwMGLwVy56O83ltY65aq3uLJud+nP78b68gNctXHUwMDFmVdjFittrX97u3u3Vt8/f19pcdTAwMWJcdTAwMGJ43fXLZdjjp93jzvV64bFcdTAwMDP9893nw0X5V5YpyUb7KqvJXlx1MDAxMD1cdTAwMGVcdTAwMDO1hiVcdTAwMTgktzrhuyr3VofHWVx1MDAxZC1cdTAwMTdpdVx1MDAxNlmRSoc7aJ/gK9tgWUZ9vz/NtTr5NVUrrnqz26hcZnBf4T96nVYnI89qXG69TnpW8y57XHUwMDExjlWs9uD+5vGBOFx1MDAwYuPUKI4nP1x1MDAxMrozXHUwMDA1c6nfz3ZM6+3luX2OLssg90dCXHUwMDA1dCE9azmTXHUwMDBlqVx1MDAxYrW4XHUwMDFjL39BnvfQ9Vx1MDAxMkZa5saySGeSXHUwMDFmlYqomlx1MDAxOeVcdTAwMDdcdTAwMTiP03RSy91wwVx1MDAwMfUhXHK5XG5a5VR9wFXrcrvBjnZOa0eNzZ3mzXNv4yQp69bPX+vyobX32q6Jl5XNtyP92lx1MDAxOCyAzU9Qy1x1MDAxNcRyU9pcdTAwMWSxX5TqpnJf3FlcdTAwMTSbXHUwMDFiST23s2ZzXHUwMDE3U3eqOVx1MDAxMouwkLzuNPwu5Vx1MDAxZsVcIlx1MDAxNsVKLlx1MDAxMMWz03lIXCKjhKGnXHJfmciYep/Ox+dn/Vovjlx1MDAxNW9cdTAwMWK9/uDXsChcbiT8+letVWo0M1wi9inMNUnsXHUwMDBiW3+y3MkpyZNxXHUwMDEzr1xcXGa/XHUwMDBiJtA08OTnKE/lm7OXjqnARrN4u+NcdTAwMGVcdTAwMGbunt/e8m5cdTAwMTl+nUMyOoGkuVZcdTAwMDBcdTAwMTM5zpYyQigmiChAsZ/RMUqCrlx1MDAxMr4mmb9Ng1x1MDAxNGivpJY5Pfzs79VcdTAwMTVsdlx1MDAxZq5fnlx1MDAxZlx1MDAxONt62zxeY+6rg1x0c8zsTEDnSC6+wHdWXHUwMDE5mDr6yMOgKudcIkVEMPwm5Vx1MDAxY7NUeIBcdTAwMWMu0P9wiFx1MDAxNqnGS7doTlx1MDAxZEddLlx1MDAwMdFMXHUwMDFk07PBLFNcdTAwMWXVo+BieLLcS8BNolxm/9KErNRbdD4mb/SXWrVWudZb6txcdTAwMDZcdTAwMTnxr3ap2mq0/7lU7nSaXHUwMDE5lS5MIaWQXHUwMDAxWOlcdTAwMTecaVomXHUwMDE30XmZ2igqy1x1MDAxMclPOOPtak7xzrXzkJrpQFx0nKSJOeN4XHUwMDA35WltNcpkgd/n7PxcdTAwMTTZNVx1MDAwNm2OXHUwMDA2XHUwMDA0PMVcdTAwMDRcdTAwMWQzIV1juMesXHUwMDE16FE5hd85XHUwMDA04v9WO/xcdTAwMTh5LW1QtU55cPB03nlv7smDk2b1aHf9INvotO9OJTo7jUfzki+P01wiKlxmc4xumeP+VE9/5aaVNOmDXGazw28yeFCZ6PA0Pu7nW1x1MDAxNSo2dOU4Kklccsw3XnVp7HxVXHUwMDE4XFywsEgt6Fx1MDAwZlr+rTtiR6Jm+GhcdTAwMDAwo9f74f+5uMpN0KivTVx1MDAxYYVcdTAwMTSOirxbTG49q0AqxY10fHLuXHUwMDExd1x1MDAxZWeCerPg1XdcdTAwMTlFO2ar22RCWtzz6suneHxeZlh2dZtT2D7zus04UVx1MDAxM11GhnLagknTJSbeq8spRoFCklx1MDAwMvWKXHUwMDAxXHUwMDA2XGJWX4rmL1VjPKrhJ3pyVohsVI1CUjLgtKGRUSiwRu/im+MhwVlp0ELTbClcdTAwMTM4V5DDtr3+4qB8yZpccnY3OFx1MDAxM2715WW3Xr65atYvbk7S+/UzhT9cdTAwMTfVf8KvWTigayutsMxR9EeGlbHgloEho3JcdTAwMTRcdTAwMWJO/+HVlLpmqtqKmOIhbciavrGIiVx1MDAwNMnwzyfhkbmG4VordIaETn70XHUwMDFhjoGcXHUwMDFiSMlcdTAwMTg10mXaUkhLyImGvyjkPFx1MDAxYYpIWVx1MDAxYSD9+uLrVVxmgo/RlJf/XHUwMDExMfOLmCnk/nVcIkaAiD4+ocI2ypJKXHUwMDFlmomvy8kpRtGF48w6SVFccvQzjJLjKoZcdTAwMGLtXHUwMDE5LiRH5DjBQGbT7Fx1MDAwZY0wx1xyT3KKKc20g1x1MDAxMCEjtafxXHUwMDExYyQzSIs2cKCCXHUwMDFlkcB1+o9mc6VkVnfeN8+qxff61lbrRVx1MDAxZu32m0W3km15Vlolc1552j/crm84rpt3q1x1MDAxNXZRObG1SCVD476MXHUwMDA2XHUwMDAzXHUwMDEyt4ZcdTAwMTlNtl5cdTAwMWGlt1O/XHUwMDAyXHUwMDA26Fx1MDAxMUiukFx1MDAwM2ZUMily7pm0w1Imalx1MDAxME1p7k5cdTAwMDdWJT3KfqK0XHTHcHXqO1x1MDAwN2hikDN8PFx1MDAwMJrs5Y2heSeocJLLm3Bg5Nx0alx1MDAxNJXDNlwi1KFVT85atWg3pWP4f1SdqHJyXHUwMDE0o1x1MDAwMYu2xDL9Pat0cqZuprD+XHUwMDE3qlx1MDAxYtx9UVx1MDAxMJVKOsXTVMrHJ/HnXHUwMDE0oVx1MDAwNeOhgDPITE5cckNS49pGKO054VBcdTAwMDZcInyosi6bXHUwMDEwjcBcdTAwMWKLVMQ1aGks3pVcdTAwMTBpo5xHjVx1MDAxZa1cdTAwMDWruGUuUClPXHUwMDEzna2zeY3RXHUwMDE0W6+vy/2Nx/7ZQ2tl0Nwr683Xo/RHTzNcdTAwMWRsJ1Q2XHRcdTAwMGZ58G5cdTAwMDFcdTAwMWIqXHUwMDE2LZAypb/DuF/7MKaUclJZXHUwMDAx1tA07Vx1MDAxOVx1MDAwYvemXG6uP5JFXHUwMDEzeTtFx1x1MDAxZlxcurBl4apcdTAwMTSzllvcKpQ4wZlcdTAwMGKs6dtcYpto1NBXIVx1MDAwMJhFyZpoj5DO6aWQKY6ewlGRc6MpwDOUdaOEpYY7/lxctuFcdTAwMGJcdTAwMTjwyMmijq7oXHJcdTAwMDLLkbCRXHUwMDE2QNq/U1OC7HTNXHUwMDE0ws9cXNfEZL3amKxX7lCIqzSj1OJccnBOQUo9k9Eo0vxccmk5n8x65UAtl1x1MDAxNVeKSVx1MDAwNVx1MDAxY+ZUNlE9gFx1MDAwNFx1MDAxYjbconFcdTAwMDPcXHUwMDE47u9cYpB8mFx1MDAxYVx1MDAxN9TQkCvIaVx1MDAxYWz1wSy/br2JdnnXvG+Vn57KryX9XHS9emJfd46a2ulS7HN6XHUwMDAwOVx1MDAxNzmXiUtF29qy5ChcdTAwMGW/S3lHsZZcdTAwMWVzXHUwMDBlnXFcdJyBslx1MDAxMyhW3Fx1MDAwM0FJ7Vx1MDAwNDKps5oz4jwpwDFJLSGkXG7xToJM61BcdTAwMDahVbFf3p3786i20V/qlohDXHUwMDFi3VJ7sNS5zYh4p/BRSMJr1LIypmHUgJFcdTAwMDC2VCMleYpcdTAwMTSQk1wi39krPqy67tbeI2ysVOCykvtcdTAwMTkkXHUwMDA1zozHLCUrKrBCjeNXSuehKym1cE6DYi6b1lx1MDAxNtZ5ilFDboXXXHUwMDFjnb6QXHUwMDExJFJ6w0ko1NyEOsFcdTAwMDZZ2FJcdTAwMGIybfPaiO+MNbbWuptcdTAwMGbaNm9uj22/evZ4J766tHSOXHUwMDA2XHUwMDE000mY6pl8Q8MzXCJhY1wipbSTuFxiLlOMyFxiv0l5h7C2XHUwMDFltbGkxHOmkVx1MDAwMsfbb0nNPWVcdTAwMTWixlGsgWc264s79Hap/5CzMqG7i3aFUie+tNtW6m06L1x0Z8S6U+gnyLqfXHUwMDE1xVe+yfRcdTAwMTNcYrVcdTAwMDKQdqRNrpLjLWFuXHUwMDExqqjLMnr2XHUwMDFh/VqQXHUwMDEz80ulo4fBKqW1VY5l1MnFecBcdTAwMWSFqNFcYjiaklx1MDAxMUQoynWOfqxcdTAwMTRaIc9cdTAwMDJcdTAwMDTrR+hRXHUwMDFhl+lyXHUwMDFhxj+s3j9uXHUwMDBm+GZ1Z/NIPlx1MDAxZpj385ut+9S0XHUwMDA1zI+NRU8wjVx1MDAwNerSKIVcdTAwMTIvM1xio1xyXHUwMDE4y1CPhtVqXHUwMDE0mMfBcElcdTAwMDZXcKep7c3vZ6WM4sdcdTAwMTeYL43SIbTE66SldVx1MDAwNvmVm5BF0dmCXHUwMDExlFTMNTVmdbinXHUwMDAyi/o2YfxCNHDoK1ximdFcdTAwMGL+8P9MK2wgelx1MDAxNlx1MDAwMnBtXHUwMDE4+EdkTjOb4bDIu9mkznpWWFxytL/HJp//qiHRXHUwMDFldcmns1x1MDAxM4FcdTAwMWOSUcdcZkc1ttTORjlcdTAwMWG3kGyIqaZtr3PQRnSkfbNcdTAwMGbkZzXEdFxu51x1MDAwN1x1MDAwM/mfNsTUxnSpU1x1MDAxMmWlVilyiOK9sbyCXHUwMDE0lIdOtzPCWoSoclx1MDAxM9qGXHUwMDE5T1x1MDAwYlx1MDAxYWkgXHUwMDA00Fx1MDAwNcnI/Vx1MDAwMFx1MDAwZpegndaUxqecXHUwMDBia/7LPTCU2cVcdTAwMWSgsZaBXGKCZlJcdTAwMTmhTE6lzb6+qu3pzs7l9fK9fDl97K9erz18y1xmXHUwMDA18IZTQ0nrXCKJUeZ8hIqQUjGqVzVAS9czSpukgit0XHUwMDEx42UlRn/nTMtolNBXXHUwMDAwXHUwMDFmi1x1MDAxMjKRQVbQXGb1lH9s8DRcdTAwMTNcdTAwMTmOgbybSM6sZyVdVFx1MDAxMNZIZsdtJHDpUddcdTAwMWTAKy+UzGxcXNts49iHXHUwMDEyXlj+5ZUknydlMpzHXHUwMDFlT/GZz2OPPVxmicyHtlx1MDAwMtD1sSlmr3W2XHUwMDFme5Wzu7vL+8L79uHmy0t7/76Td5xqYT1y8SRIjfJdjvf04ZLGsWtLXHUwMDEzXGZcdTAwMThl3c+XkVBl5dtZXHUwMDFicU3PSLDM4u9tXqM0jztcdTAwMDf3V6v9gjpYab1dPlx1MDAwMezs7u8kPbSQe28nXHUwMDE3/d5yR212WXVccnql6/LeXHUwMDAyXHUwMDBlQzpcdTAwMGZrVyvn7cPq2229va5cdTAwMWU29dGLXFxoRkJcdTAwMWFcdTAwMGI2XHUwMDEz1Vx1MDAxYZ92XHKMRrXKSiFSnIaE36W8g9gyT1I9XHUwMDE4dVx1MDAwZdRKTFx1MDAxNINpZGKm8FGQkks+ua7FMK2mrGzjpHHOUqPNRERLg2tcclx1MDAxZG9+efLf51x1MDAxMW291F+i98jqTGRcblxyTdJtyHIyn1x1MDAxZK5NdFx1MDAxOVx1MDAxMu5cdTAwMDXjrLHJ43y8tN5r8v2dXb5xeFneXFw2Z1x1MDAxYjvLeYesXHUwMDA15F1uXHUwMDE0XHUwMDAwtTnQMJ6uKylcdTAwMDBnLTXAXHUwMDE3XGbt13yQjaRdpTzFkU9cdTAwMTGvmivtQnJcdTAwMTA46oPhuGWtXHUwMDE5w4X4uvr9KbqmYKRk2Wvl2Wh36656i/vpiu0+Nq7OZfGiqUXiXHUwMDFjhDnoMfZ1T0XTrj5tySdYueleXHUwMDE3Xt47y5v334t2/d2aXHUwMDAz0pmGvlpIXHUwMDBl4fCblHdcYkuIgbCSi4RwpH8r0Y02uFxiOs9PPKxcdTAwMDJVMmVcdTAwMTm7r++U8Hm0e9KpNErNXCK+S1SPaGpcdTAwMGJdrjX/aj/1XHUwMDFhXHUwMDE5dbSeQlWBUVx1MDAxNfOsOdNcdTAwMDGAXFxFlylcIqMoJZRInuBcdTAwMTDv3eRcdTAwMTT+XHUwMDFhXHUwMDE1r+WUT4uKV/iOPN5+IWyYRMiGXHJxccPbiXUtXGL+nCbRaVx1MDAwM9opbVHojz7KqIO18JTRXHUwMDAwNJdRXG5cdTAwMGWBXCJF6lx1MDAwMGi0YTntj7lcZnc3rWL56IRcco76O8dHt1x1MDAxYqc3m+lcdTAwMWFJodiSWbZfiJfcS2OhdTpSXHUwMDE1lO8pXHUwMDFkKGuCbVx1MDAwZcBcdTAwMTNcdTAwMDZcdTAwMWa3RtJQM6HZnzncKU9cdTAwMDBcdTAwMTJ3t2KeXHUwMDEw2tFUJdxGyFm+sUpcdTAwMWaLUjTw0OImY8MkYVx1MDAxM1xc0zc6XHUwMDExiFx1MDAwNFxyfVx1MDAwNeAyer1cdTAwMWb+n6lLXHUwMDE0o9OuqVx1MDAxMVx1MDAxZFx1MDAxNVx1MDAwMyVcdTAwMGY1hmNcIudcdTAwMDZcdTAwMTM3vueMISeCelx1MDAwNk/MXHUwMDAyXHUwMDExXHUwMDEyXHUwMDFkXCJcdTAwMTImio5qgGdU1T1TXymjrVZMZ1/GnVx1MDAxZrmUXYniXHUwMDE0sv/C7phOR0ZcdTAwMTKpVYuVNnlcdTAwMWMx3nPMKUItUMVcdTAwMDHQaYCTSvrOKId/z6XnnGA07Fx1MDAwMJz192ZcXCREjfA0klxyc0pKXHUwMDE4u+ZcdTAwMWZcdTAwMTDFZWqtXHUwMDEwx1xmyVxuP1ZQ0lhLvVx1MDAwMPKa1XB3st5e61x1MDAxZa6K7snJ28HOqeqsXday9fHTSpp4T2XJ3ylKXHUwMDAyoCdpXHUwMDE51475e0mN9Fx1MDAwNWhjkFQ17iBBXHUwMDAxp9lcdTAwMDTNVJX1ka2JXFxq0LYzKlx1MDAwMLBcdTAwMTFNyDmn/Fx1MDAwNkBcdTAwMWFcdTAwMDAnkJRkYFHfR9FEQoa+XHUwMDAyYFmUoImM4dLe5GkyNcPxkHNj6az0OO5cdTAwMWWFX3jZJ1x1MDAxYS6A87ggnIKmTlx1MDAxOGrOKrKF6lx1MDAxOVxcXHUwMDE3+kNGfOmw0n9cdTAwMWI9M4XpM9cz8XPMbaTboTh6c8qlOGhpK357xFx1MDAxZarG1bZcdTAwMGaf9Ctbu796yTtMLXDP0Fx1MDAxNHlq24xENZ7gUFx1MDAxMECNUzRQOz5j/JPZXHUwMDE2neAwdZCoYJ6iXHUwMDA2tiherFx1MDAwNVx1MDAxNZwkikTLUJapnFZ7vt5VjDRXm72Vre6mrkNjb/DaSXpcIlJtbFxyasuVXHUwMDBiON+/PDhvnz6ft32zfsbeP68nXCLaxoREXHUwMDA1tbdM01x1MDAxYSH8auZcdTAwMWVsOlx1MDAxNmzCLlx1MDAxMGyLXHUwMDFj360oLKeA/Y08/F+HXHUwMDBiS/u1wUunXHUwMDE3ecBAR1xmvyZlNpD3/mpXhpc/nEnnOFx1MDAxOJlCLeFcdTAwMDcjc659XHUwMDExXHUwMDA3JHG5hTymmIlcdTAwMDG1fk0xxbt79Xqwt3XZu8KX2oBrvi6fKvu5N1x1MDAwN8JRp1x1MDAxNGHVMPV6opapoChDWDiLxtFqZ+18KcDzJFx1MDAxNyqgSm6BVklQbzTf4J6PIYJcbmgyVD6Z9+JV7u/tvjafztbg5L76uFfvne99XHUwMDAy88a+7r9BjoM/Kz3g43KOWyrFnN7wm5R3XHUwMDA0XHUwMDFi5eG+XHUwMDE3SI6GXHUwMDBlgMZbpVx1MDAxNKTwXHUwMDEwXHUwMDE4XGKOYdqfyyiJ31hqWk5cdTAwMTFJkIqKQJM4uVx1MDAxY5Sk4lx1MDAwM/M3Si1s9Jc6t0vDXZ2NrzuFhUK6XHUwMDFjXHUwMDA11pNt31x1MDAwNX9cdTAwMGbeye7JgiqrXFzyupt4w5hTwDpuPCeN1FxcKJTaXHUwMDEzfVFcbpp7kkrQXHUwMDFjKEXhQDtfXHUwMDAxcSTnXHUwMDEyYK1cdTAwMDTL2bBDkW961YhzXHUwMDE5XHLaolx1MDAxOVx1MDAwNFZLK1x1MDAxZFx1MDAwZtYmUpfYsU5cdTAwMTm5Yl3Tb2522id7+nD5rFx1MDAwMy+NXHUwMDEz12YmX1H8eLwujbona43umlx1MDAwMkHFcFx1MDAxY1wiJmRKO2xC5ahcbp9rNmvv5HitvzTqXHUwMDA1XHUwMDAxjjFcdTAwMDFUmILvXHUwMDE1frLAONWCoII0oJyx6FhcdTAwMDbW9H3C+NGoXHUwMDE5Plx1MDAxY1x1MDAwNMzoXHUwMDE1f/h/LnLmXHUwMDE1zWWRKUZehYNcIu9Gk2madMzdMLrmXHUwMDFmXT40mk7jjeHSXHUwMDE4Q2NMhc2mnHu2UD66JUax7E1kfkROdpH8KYT/hZlcdFZFy1x1MDAxYTRcdTAwMTeSpchMiPfL8opQToXajCFDKUo9XHUwMDE4jyRIXHUwMDA0KFl/OtBcdTAwMDWn5zxri1x1MDAxMjU0I9oqq7Wi0ZvGiZByXHRFXHUwMDA3y1xcS2c4k2g0grPIJWOOcZFTTVM+ONs/l0ebx6u14kv/5eGi3W6k67fw9ZlcdP55XHUwMDBmytFAOKOopZTwzc5ZXHUwMDFhZVx1MDAwYnCB20/QRFihlFx0plx1MDAwMSTSNFOFlk+ygFx1MDAwNi45uirKKiq9XHRRPlopjXad2IZ6dH9nUVx1MDAxM42a4cNcdTAwMDHALEjTxDSpQb9HO9RQyT3BcFTk3WQy5THjmFx1MDAwNFx1MDAxMM5OTtFBe2o4XHUwMDE3XHUwMDFh9bxA0WFYnvov4HJw9U7/jVRNdu1cdTAwMTem8H3m7Vx1MDAxN2LzXHUwMDEzXHUwMDE0jzwzdbhjXHUwMDE4msrk+Vx0YC/LXHUwMDA1uFxc3eHi2NUqekdf1t5cdTAwMTZcZtNqqV+vLXggufFww6OS545mXHUwMDA0mfF5u/hcdTAwMGKPoWOLJCbRbumMXHUwMDFhZSrhOcrvXHUwMDE3XG6pXHUwMDEwZFjAhivpoTGhc1x1MDAxY8XoK5B2OfSRJI2wyKe6eahv3ne7251zpJxGY7C/27i52096nvFaPtkt7zX24W1590nyN7zrxdr4u8x0TnJ5opvP5aY7cysvl3W8Mu5g/2xcdTAwMDGv+7i7uXla7r1cdTAwMTaLjbIrwupVZ+VZL+B1rb5bee61b1xuL+3+udjYX4bOWj3Z605XjzSfwFdZltG5XHUwMDBl+KT75LmOZVxuoZiieC18U+VcXFx1MDAxY0gm4oyOwoc/weiARb+NWi3x4exXXHUwMDExlqtcdTAwMTFysoOKXVCf2C9UXHUwMDA3qffpfOpguYzXvVRcdTAwMTls0lx1MDAwN/2r/b+LtbtS5e3/RCQ+/Ml6qNb6lV6jO2hQ8kMm9axTXHUwMDE4d1JbLPpjJJMns7eH0jrai6CQtFZgkodGW2XZbq6/bFx1MDAxNY/v5ENZn+iK3Mr9ME70Pj2JXHUwMDE2kTHuqEaUTahcdTAwMTNcdTAwMDOe1JpmjOP/hMumaitJXG6HXHUwMDBizFx1MDAxNefodNJ4a5XTWMvp26rYKZdau6fva2/lzVdRs9XdpCy8frlcZnv8tHvcuV4vPHagf777fLhcdTAwMDB2n0PlJGB3h2JX+eGbSdZGzDRI4zR5/ilQXHUwMDFifpdyjlrBmYdKXHUwMDFkqVs4qcGKyfYyqPYpOVx1MDAwMlx1MDAxZpPC+SZcdTAwMDItXHUwMDE0tUxRXHUwMDFiaVx1MDAxYSTPw6hdh+RsuOFkVp65/7DITTpcdTAwMWa1N/pLrVqrXFzrLXVug0T4V7tUbTXa/1xcKnf8R1x1MDAxMVx1MDAwYlxyXHUwMDEwTOGlkKSO9Fx1MDAwYk7E1GrW41x1MDAxMVx1MDAxZI14o+n82KaYmVx1MDAxZG9Zc1xueE611Vx1MDAwMnGOqFx1MDAxN/iZJ44wpXVcdTAwMWWyJmjJgI7KeUbRPq48mphFXHIjrbLg6y/jb0chLXBcbn3jSsY6Sv6R98zRNJ280vbWbVeePFxcb2/f8LfWWUu8yneWrlx1MDAxZkXmLanjXHUwMDExvTRq6oB+lFJm2Fx1MDAwMEyiR+V7hu9cdTAwMTCFjkZcdTAwMTSNMTecXHUwMDE5QPL8/ayURyRcdPtkc89aJ2lcdTAwMGVcdTAwMWTuZSNcctPhq2JAXHUwMDA3XG4g0VV3jOP6XHUwMDAzq/o+ZyTRuFx1MDAxOT5cdTAwMWOAzOhcdTAwMDV/+H8ubmo2cCW0StP8Nlx1MDAxY1x1MDAxNTm3mkJqb2g0UZ8wpe34qTJKXHUwMDExT1BcdTAwMTN2QM2IXHUwMDFjk01cdTAwMDev2TpSSGaFYfD1XHK8Ru7g9837mML4X5n3XHUwMDEx3SjTXG7JnPQ3sJ5aUVx1MDAxNuva5Vx1MDAxNKLgpIeWkVx1MDAwZSqdkmpcIlx1MDAwMV1cdTAwMTnroVi3TFx1MDAxYc2d9sFhkVx1MDAxMFWUf26QadAmaiFF2Fx1MDAxOabzXHUwMDE0XHJtQI5cdTAwMWNcdTAwMWFOXHUwMDExSPxQ6FcwI0VOu2xVnk5OVafb16s3YuWgcimbrduMnfu0qiY+2DiuXHUwMDBlgE6bKVLkgEZS+5NH/+R9XGZcdTAwMDcxoKPM0TugWzObqpkqtfwtJzR5IzSgXHUwMDEzXGbN6LSBVXGPS1x1MDAwN1pcdTAwMThcdTAwMGKSgszfuitFJGyGj1x1MDAwNlx1MDAxMZO5qqFcdTAwMDQgpHKRolx1MDAwNiBcdTAwMWNcdTAwMTY5t5loXGY9qyVH7VwiaSb7RGNSyzxNU1x1MDAxOTm6IVbP2dJ/obJcdTAwMDaRaGkgyP+ImvlFzVx1MDAxNLb/2rZcdTAwMTQ6ejyqYLhxtYE0zfDsQ+N266bfuH68b5/t91x1MDAxYU/vr3nHqDVcdTAwMWVaP0BcZtL0ITdxrGKc8yjZXFxcblx1MDAwN4BsMF+4plYr125LWSV9WEVJt7lcdTAwMTU2zdvVzvtx9Vxiildma89cXD72V7vyXHUwMDEzcihcdTAwMTJcYiat/ZHurPp0i8hcZiuu8c5ro1OUoYdfzZxjzYk4rCFJLlx1MDAxMGtz5TpcdTAwMDT7UuBWYShZZPZcdTAwMTlVi9yo83Hir4e+PLdhXG6tTFx1MDAxMuicq15EM4p4yrWRJSRCa0Y9b5OHXHUwMDEy2Ept8+iqXVx1MDAwN71cdTAwMDbrr2Z3v7ZxtJJ3M1x1MDAwME55nFwieTQoh1x1MDAxYl928S/KRUZcdTAwMTZAifnSOC3nK4x1+lZUTVaUq8lrMjan3S2P2dbN0enmpixcXJxcdTAwMWZUrldPiu1y4m5cdTAwMTSvxfXCgVi7L749dV7WWiC6RdlLxrixrztHlmVemFxcsUgmXHUwMDA3RzNcdTAwMTbT9JNcdL9JOUewZCxcdTAwMDbBlolcdTAwMDVcInjRRI7qY9hV/CtrXHUwMDFhPpnIjzudVlx1MDAwYlfQ/3Iun8JXk1xcPv/CM+4tJU1kW0dhnTGU1JvYXHUwMDE09HZls/X8rlx1MDAwZs5cdTAwMWXW744uXHUwMDFlW6cve1x1MDAxN3k3XHUwMDA1iD3PKpTsXHUwMDFhqVx1MDAxMKRcdTAwMWGPcVlcdTAwMWGLI4FcdDrc1trMV7FcdTAwMWRJ5lx1MDAwYlx1MDAxOVuJXHUwMDFlh0b3Oa+9pVxujZZbOzuR183Tm3Lz8nG1enORvGZcIiM2P3yqXHUwMDFm3K1enKyfbbRcbsfdQbdevUj4ulx02TzNuJBcdTAwMTnZPLrrguO4pZRxyVx1MDAwNXn4Xco7hkF6TCnqXHUwMDE1iVZLyvFcbkWrXHUwMDE1+uWCU0dr41x1MDAxOMuIzpn2lKEhXc5cdTAwMDHX/rycuLZcdTAwMGKWWUFjc76QzJ3kXFx+ap5cIr5cdTAwMWMtYak0iGDoeWPWU5goJFx1MDAxMzFsSdlcdTAwMTctyuiQXHUwMDFhNcahtPPk9HttX83FyuXG2+FZpbdiu72V+tZ63qFrJfNwXHUwMDFiXG5cdTAwMDOEXHUwMDFhXHUwMDAzXHUwMDEz0EWdrik3S1M/XHUwMDFiNd9cdFO0K51geuX0kkVcIm7AO5rTbMN65eDuXqzsqcfNteX7561W5+bQ/I1oXHUwMDEyYkpwuFVcZlx1MDAwNSBLnttcdTAwMWJ+NXOPNVx1MDAxNYs1tTiszTFm0oYkqVFcdTAwMDNGiqt/tcs70+y3mVhyq/PUb7Tvosc1lqrVXHUwMDFlfqSM/NwpXFwySaAzrjZcdTAwMTHBmllz3lj0pDSruVx1MDAxNVYkj3LF+1x1MDAxZjnFO7m23FxipCzDXHUwMDE0NcBcdTAwMWLHu6GuyUpcdFx1MDAxNK3M36pskdwqjadcdTAwMDWzNNlWO2AqJOONeUxcdTAwMDNjXG6dXHUwMDE1ZFkrQVx1MDAwNlx1MDAwYvCMtpJa8+V0YFx1MDAwMdu8fGruXHUwMDFjmqeGMzsv9eeV/tp2alx1MDAwZXQuy5y3eEW8NJ5cdTAwMTHvpLVsKHRcdTAwMTRVuVx039P+pJcxVKec8s+EXHUwMDA0Iz+GXHUwMDFipkx6i1x1MDAwZqf5VjXswMRcdTAwMWRYXHUwMDA2XHUwMDFj96pgLmy0JPXc41xmXHUwMDE3JCxX7DunvEXiZvjnQcSMXvCH/2dakcSjXHUwMDBiXHUwMDFlgeQv+qrJ/ZFwVOTdZkq0mVT55IS1VkykvFmOTj51QZJCUSv6jNpcdTAwMTnM1OuI44eTaO3ZV57wf3LWW3bNjqZcdTAwMTB+5s2OomWNiMvDoYo9pVNcYpt4zy6nILXgxlx1MDAxY5lcdJBcdTAwMWHj4VVcdTAwMTBKWzSRc1bbRFx0XHUwMDFijYaAgaU5xopyXHUwMDFlwo7fkbNcdTAwMDTi11wiuUsphVx0ZrxZjZj9XHUwMDA0xM4mazZ3q8Wd+uDUNp/33lx1MDAxZc7f7tyA7+RL1sT7KeNcdTAwMDJcdTAwMDKBg/dcdOiaa6l8g7z9ssb/hVx1MDAxYmg2WZNYbDGPXHUwMDBih5uYJkiillJShzRx/MYyJlx1MDAxMiX0XHUwMDE1xMeCVExMXHUwMDFiaoPCUWmX3D6GYyDv9lx1MDAxMa87KCfRuJCEkOO1TpZLXHUwMDEyMVxcXHUwMDAwOoVa5GlAttRWXGLJv37Uxr9D4v5cdTAwMTRq/7pqRHCRXG5GXHUwMDE4NqzWTu5lxOdj5Vx1MDAxNKDScFx1MDAwZvdcdTAwMTlcdTAwMDdNQ+xBy8lcdTAwMTRC6XEgXHUwMDFm1lx1MDAxONBOzSlhXFzN3YpcdTAwMTA3w1x1MDAxM9RcdTAwMTdYXG6QQ6CykKxcdTAwMDNKUjJO0XhjicQpfZO3Pk4wKbTEzJemI1FcdTAwMTO1mdKRXHUwMDEyyozEcVxuip6gbtDki1x0KzWlXUMwVFx1MDAwMVx1MDAxZbNKaC6MXHUwMDE02lHbq9mERuJKRlqW01xmXXiDhIsm1vlnO3+sXG5cdTAwMWbRTlrSJFx1MDAxMv9cdTAwMTksZVxcsPT4Oeg1Jk5HXHUwMDE3KkCitzh9XHUwMDE1grs7pVx1MDAwMok2cTyyMSSnqZWWO5e8XHUwMDFmbXz1SE5tXHUwMDFjOmaeXHUwMDA0XG5eoVx1MDAwNWPGjkefKUtcdTAwMWFvXG5D3KL6NfOGnyNMnFx1MDAxMMozRjsujWRSgVx1MDAwYsuxlMKjvFx1MDAxMFx1MDAwMI2CSPlTIf5EVtDVtJRF829t4+LLXHUwMDE0xm1cdTAwMWNcdTAwMWRcdTAwMTFcIqo0VVx1MDAxNpNLXHUwMDE1MCV4STnyXHUwMDE33lhJRdFcbmasik5Tqo3CwVx0cjJI4suRhFhcdTAwMWFcdTAwMDWIXHJQMzPhXHUwMDA0jUZcdTAwMTbf3rxFb2/6Klx1MDAwNHd2SvNcdTAwMTaTOKpMTOpcbmpohlc4+XH66/FWXHUwMDEznkWndnmsr9auTlx1MDAwZdXWaiXvXHUwMDA2TnOLNI7OK7eMxlx1MDAxMoxcdTAwMWI49GI8a6gqjinkXHUwMDFmk9GI4lx1MDAwNJmjvlx1MDAxNKI/mo2EXHUwMDAwNcLI2p597LdUcaf7rc3ezdr9/rJ7vOP9k+692WfwXHRdpWNfd7PQZvfNt35bVVx1MDAxYd3l5v3rlV3myV73XHUwMDBm1mKMu7WMjXZIVpmi0U1gXGbVfVD/isSQXHK/SXmHrDKeXHUwMDAzq42ziFx1MDAxNTM5/Vx1MDAwN4Cmd4GleSlcdTAwMWPZK5tMUYeq1DiHslx1MDAxNN9IcVx1MDAxNZIoKoOnO447SV1cdTAwMTa+tH4z7TZcdTAwMWStasZM0dLSX+3+U3n4UZc6vou52MOeePpcdElcdTAwMTeNXFxXosBcdMx89sNcIt1cbmriXHUwMDA0wqaovYy3lHlFMNIqMq5AvkVcdTAwMTFq1ERcdTAwMTdp6TxuUFx1MDAwMDounEPtmc1cdTAwMDGtdlx1MDAxZVwiXHUwMDE3octcdTAwMDV3Y/Wuo/ldylx1MDAwM6R/xzWNJEJcdTAwMDE2XHRoRWOOwS5i4J5PPP/eQsFwwqJaTVx1MDAwZlZ6vVx1MDAwYnPWv3p52tm/6lx1MDAwZS5u3u6ypbq0fkw8mD+cXHUwMDAxv3vgc1wilJWW+j3RICOl7YyTSVx1MDAxYuXT1cNr6O+ulc1g5bzYPixu1qPcXHUwMDE2XG55O4WbXHUwMDE1fSrNXFxwpYE1fJ9cdTAwMDMgyT0thHVcdTAwMWFvunBsonVcdTAwMTNXXHUwMDFlqWMkY46MTKdgU18wXHUwMDEyesNHXHUwMDAzqFx1MDAxYr3eXHUwMDBm/8/UJ0qRXWaU5VxmaJJtYrNcdTAwMWJcdTAwMGWhnJtdpbUngVx1MDAwMTo0lms36etcYvCo9oymYqOuyqa/JXfUXHUwMDA03FmL36j9erKsXHUwMDE4mr1FNufLJ4B95olSVkkxU1x1MDAxNEPwROnTkmK0isz15TRcdTAwMDRcdTAwMTmUY8njrfG+Xl4hKi1CVEgjXHLF79l4UlxmWEGdjo1AK8vBP71+kVx1MDAxOLXWs+jaUDtcblx0XHUwMDE0XHUwMDE5XGZxbYzHraVcdTAwMTGOzEhrwVx1MDAxN1x1MDAxN/mFWNRFzlGw81tcdKPtU7F9cVxc3HrpXHUwMDE3uk3b5t3399NivoRRYlHCPMk0SKcps5S6jIvgXHRcdTAwMTb3gOxcdTAwMWFQlbjjXGZv+mxKaapa82szoKxIyr/ES6ZC05KpQaSm0Vx1MDAxY05cdTAwMGJcXPf3VU6K2M7QbWDOcGS7MaFjPSbAXHUwMDAw5Vx1MDAwYknBNYdpL1x1MDAxN1x0TPpcbkByUaopMtwkOO1cdTAwMWUpdXKbXHUwMDFjXHUwMDBlsJzbZKq4slpbStLmXHUwMDAyfMro1/RcdTAwMTREXHUwMDExMpeUQlJ3rmyc1dnGwVvaXs7+jXKJs0vEmVwiJ74uXHUwMDExR1x1MDAxOFx1MDAxMVlcdTAwMTRpXHUwMDE049TdNXlE+EQyKIjlprQ7Yr8o1U3lvpj7VLlcdTAwMDLnXHUwMDA2nX4wmlqASOkm+mdcdTAwMDKKKokkXHUwMDA36Jqj0comV45KoNH/RZ7VQlpcXFHIKY6kVFx1MDAwNaqDlDRrkftH0/8pklJIkM7qnJ7qqIPt8sBdXHUwMDFl3lx1MDAxZLft4cXN4ODIlt/TKCQqN1x1MDAxMlwiy2zidts2t/natnWtmunU3y9ay7vFXGIxwobN7pRAy47s7IzwXHUwMDExdGTgJpEkujNcdTAwMDVzqd/Pdkzr7eW5fW6MXHUwMDFiNFwiknpQ52tQ1uD21NJAcFxygvLMXHUwMDE0nXajMGJcdTAwMDK32ffVRNEwoa9CXHUwMDAwIVx1MDAwYpIxXHUwMDEw6VpSt09QkPycO1x1MDAxY1x1MDAwM7k3kUJ52lx0zsFcYs6k8LVUplfQznlM2+GZP431yai/ykzhXHUwMDFmTsMtUFnpL1x1MDAxNTJcdTAwMGWUr8PL943/TGH4r4v/oEdcdTAwMThcdFKF6tpqf1usqX3AXHUwMDFiK73SXHUwMDA127xcXGvc321cdTAwMWWzjf12JfcpxShkNLq/6Fx1MDAxNyvrrKC5V2MotUp6XHUwMDAy0Fx1MDAxNXHo5XGXUVx1MDAwMIjTpFx1MDAwNrJcdTAwMDNcZqlJXCIrhkWAwMN7XCJcZmd0XFypfHfuo99cdTAwMDO6vlxuXdGctlLpXHUwMDFkdopcdTAwMWLNy701u15Xh6p42axcdTAwMTSWUypcdTAwMTnmL1x1MDAxOVu8kimfr1RcdTAwMGZcdTAwMGX3zq+7XWmuXHUwMDBm6ttb7vkuSkNwmntmUFx1MDAxZFBYhYdcZlx1MDAxM5lNxyRWU7RcdTAwMDaapoGGXdFcdTAwMTlcdTAwMDJFMYOLoN3LaINT9rLh/Fx1MDAxYlx1MDAwN3dcbtEwXHUwMDE5Plx1MDAxY0DIopRM5DFcdTAwMTZ1w2BMyeTxmHBcdTAwMTDk3khS8o3gw2m2jrmJXHUwMDA0IFx1MDAwN8aj1lx1MDAwN4xcdTAwMTJI8fbkKCCjLVxyXHT3XHUwMDE3ivxPQGZmXHUwMDFkM4XgM1x1MDAwZsjE5NWivnaTv/44yUKIor8hZPJcdTAwMWOfeFx1MDAxYpxXlFxulDKMo2c1VPpcXIbEZLSh42hcdTAwMWEjP2fpwG2lXHUwMDEyWuAths1zrEI3k1x1MDAxYqRcdTAwMWJcYknTXHUwMDBiZtZcdTAwMWFqmEJ8mk/lslZ8frpafl+/b5TuXHUwMDFlhS7Ve7f2PGlcdTAwMDZsvPpcdTAwMWZ7/1SZtfFojH3dXGaU1kzEito7+vzZmOFcdTAwMDQ2npxbw29T3lGL14BcdTAwMWGaayo6XHUwMDA21PAwXnZsXHUwMDE0eJZmxTuU9k7o+VopRybXUmmdcYrryKbqweRai0LM2E9oL5WJSzBcdTAwMTO51kv9pXKt1l76q91oPzdcdTAwMDbD5qflt4xcYndcblxyTVx1MDAxMu7H4sKXtohcdTAwMWPb2L6sY9Y+UL7HUbc7SJHxXHUwMDE174zlXHUwMDE1zoKBZ5B7JbohXHUwMDAwNLJ7XGbOVqmxeEImJEzlLVx1MDAxNlWAXHUwMDAwp2FcdTAwMTj4XHLC2VmPOigrp4c97ligQtlQVFx1MDAxOHI6VcytX96dPXfOob33+mpuO+dnZ1x1MDAwN1x1MDAwZvlgTsO1yp45mYruy6pcdTAwMDFdtTRIXHUwMDBiv5p5R1x1MDAxYfqCsUjTbHFIi1xm3CnjWcopYTJxW1ZFXHLK9FemVqbfpPOx5vYvPsI9ulTEt4rqd0pcdTAwMWRPXHUwMDFi1Yxas05hk0kunWfJqfqz/vhtTX6Wut1cdTAwMTNcIu2ff0KDuC9cdTAwMWHV39d6dGt+PjdqLythZDD8XCJbNTQmhNraMJvvXz/+9f9cdTAwMDHHnKdfIn0=mentorshipaccountgrouproommatessociallinkposteventstudentGroup---------------------namedescription...is of typeGroupType----------------------slug...1:10:nAbstractPublication------------------------titledescription...published by1:10:nPost---------------------...Event---------------------end_datestart_date...Student------------------------picturepromo...User------------------------firstnamelastnameemail...is member of----------------admin: bool0:n0:n0:n0:nis participant ofis0:11:1has linksSocialLink----------------------labeluri...0:n0:nSocial Network------------------------nameiconcoloris of type0:n1:1AbstractGroup(Legacy)---------------------namedescription...is member of----------------admin: bool0:n0:nFamily---------------------namedescription...Roommates---------------------namedescription...is located atHousing----------------------address...1:10:nis a subgroup of0:10:n0:10:nhas been invitated byInvitation Link------------------------id...

In Django, entities are represented by a model class, and relationships are directly represented by OneToOneField, ForeignKey or ManyToManyField fields. Their translation to SQL is done by the Django ORM.

Want more? Here is the full schema, auto-generated

This schema has been generated by django-extensions with the graphviz program. It shows all tables from the database, including the hidden ones created by Django itself.

How to generate this schema

This model has been automatically generated with the method described on this post.

If you have problems in running the method described above, you have to run before the other commands this command: sudo apt-get install libgraphviz-dev libpython3.7-dev

Use fake data

You can generate fake random data for the database using this command:

pipenv run fakedata

You can also generate data for a specific app, for example event:

pipenv run fakedata event

The fake data generators are defined in the factories.py files of each app, using factory-boy and Faker.